تحديث التغييرات ونشرها في Azure Container Apps

يمكن أن تكون إدارة التغيير صعبة أثناء تطوير التطبيقات المعبأة في حاويات في السحابة. في نهاية المطاف، تحتاج إلى الدعم لتعقب التغييرات، وضمان وقت التشغيل، ولديك آليات للتعامل مع التراجع السلس.

يتم تشغيل إدارة التغيير في Azure Container Apps بواسطة المراجعات، وهي لقطة لكل إصدار من تطبيق الحاوية.

وتشمل الخصائص الرئيسية للمراجعات ما يلي:

  • غير قابل للتغيير: بمجرد إنشائه، تظل المراجعة غير قابلة للتغيير.

  • الإصدار: تعمل المراجعات كسجل لإصدارات تطبيق الحاوية، وتلتقط حالته في مراحل مختلفة.

  • يتم توفيره تلقائيا: عند نشر تطبيق حاوية للمرة الأولى، يتم إنشاء مراجعة أولية تلقائيا.

  • التغييرات ذات النطاق: بينما تظل المراجعات ثابتة، يمكن أن تؤثر تغييرات نطاق التطبيق على جميع المراجعات، بينما تنشئ تغييرات نطاق المراجعة مراجعة جديدة.

  • السجل التاريخي: بشكل افتراضي، لديك حق الوصول إلى 100 مراجعة غير نشطة، ولكن يمكنك ضبط هذا الحد يدويا.

  • مراجعات متعددة: يمكنك تشغيل مراجعات متعددة بشكل متزامن. هذه الميزة مفيدة بشكل خاص عندما تحتاج إلى إدارة إصدارات مختلفة من تطبيقك في وقت واحد.

دورة الحياة

تخضع كل مراجعة لحالات محددة، متأثرة بوضعها وتوافرها. خلال دورة حياته، يمر تطبيق الحاوية من خلال توفير وتشغيل وحالة غير نشطة مختلفة.

حالة التوفير

عند إنشاء مراجعة جديدة، يخضع تطبيق الحاوية لفحوصات بدء التشغيل والاستعداد. خلال هذه المرحلة، تعمل حالة التزويد كدليل لتتبع تقدم تطبيق الحاوية.

‏الحالة ‏‏الوصف
التزويد تتم المراجعة في عملية التحقق.
توفير نجحت المراجعة في اجتياز جميع عمليات التحقق.
فشل التوفير واجهت المراجعة مشكلات أثناء التحقق.

حالة التشغيل

بعد توفير تطبيق حاوية بنجاح، تدخل المراجعة مرحلة التشغيل الخاصة به. تساعد حالة التشغيل في مراقبة صحة تطبيق الحاوية ووظائفه.

‏الحالة ‏‏الوصف
التزويد تتم المراجعة في عملية التحقق.
تغيير الحجم إلى 0 عدم تشغيل النسخ المتماثلة، وعدم توفير أي نسخ متماثلة جديدة. يمكن لتطبيق الحاوية إنشاء نسخ متماثلة جديدة إذا تم تشغيل قواعد المقياس.
تنشيط لا يتم تشغيل النسخ المتماثلة، يتم توفير نسخة متماثلة واحدة.
فشل التنشيط فشل توفير النسخة المتماثلة الأولى.
التحجيم / المعالجة يحدث التحجيم أو التحجيم. يتم تشغيل نسخة متماثلة واحدة أو أكثر، بينما يتم توفير نسخ متماثلة أخرى.
قيد التشغيل يتم تشغيل نسخة متماثلة واحدة أو أكثر. لا توجد مشكلات للإبلاغ.
قيد التشغيل (كحد أقصى) يتم تشغيل الحد الأقصى لعدد النسخ المتماثلة (وفقا لقواعد المقياس للمراجعة). لا توجد مشكلات للإبلاغ.
إلغاء التزويد تنتقل المراجعة من نشط إلى غير نشط، وتزيل أي موارد تم إنشاؤها.
متدهور توجد نسخة متماثلة واحدة على الأقل في المراجعة في حالة فشل. عرض تفاصيل حالة التشغيل لمشكلات معينة.
فاشل تسببت الأخطاء الهامة في فشل المراجعات. توفر الحالة قيد التشغيل التفاصيل. وتشمل الأسباب الشائعة ما يلي:
•انهاء
• رمز الخروج 137

حالة غير نشطة

يمكن أن تدخل المراجعات أيضا في حالة غير نشطة. لا تمتلك هذه المراجعات حالات التوفير أو التشغيل. ومع ذلك، تحتفظ Azure Container Apps بقائمة بهذه المراجعات، تستوعب ما يصل إلى 100 إدخال غير نشط. يمكنك تنشيط مراجعة في أي وقت.

تغيير حد المراجعة غير النشطة

يمكنك استخدام المعلمة --max-inactive-revisions مع containerapp create الأوامر أو containerapp update للتحكم في عدد المراجعات غير النشطة التي تتبعها Container Apps.

يوضح هذا المثال كيفية إنشاء تطبيق حاوية جديد يتتبع 50 مراجعات غير نشطة:

az containerapp create --max-inactive-revisions 50

أوضاع المراجعة

تدعم Azure Container Apps وضعي مراجعة. يحدد اختيارك للوضع عدد مراجعات تطبيقك النشطة في وقت واحد.

أوضاع المراجعة ‏‏الوصف الإعداد الافتراضي
فردي يتم توفير المراجعات الجديدة تلقائيا وتنشيطها وتحجيمها إلى الحجم المطلوب. بمجرد تشغيل جميع النسخ المتماثلة كما هو محدد بواسطة قاعدة المقياس، يتم تحويل نسبة استخدام الشبكة من الإصدار القديم إلى الإصدار الجديد. إذا فشل التحديث، تظل نسبة استخدام الشبكة تشير إلى المراجعة القديمة. يتم إلغاء توفير المراجعات القديمة تلقائيا. ‏‏نعم‬
متعددة يمكنك الحصول على مراجعات نشطة متعددة، وتقسيم نسبة استخدام الشبكة بين المراجعات، واختيار وقت إلغاء توفير المراجعات القديمة. هذا المستوى من التحكم مفيد لاختبار إصدارات متعددة من التطبيق، أو اختبار أزرق أخضر، أو التحكم الكامل في تحديثات التطبيق. راجع تقسيم نسبة استخدام الشبكة لمزيد من التفاصيل.

بطاقات عنونة

بالنسبة لتطبيقات الحاوية ذات حركة مرور HTTP الخارجية، تصنف نسبة استخدام الشبكة مباشرة إلى مراجعات محددة. توفر التسمية عنوان URL فريداً يمكنك استخدامه لتوجيه نسبة استخدام الشبكة إلى المراجعة التي تم تعيين التسمية لها.

لتبديل نسبة استخدام الشبكة بين المراجعات، يمكنك نقل التسمية من مراجعة إلى أخرى.

  • تحتفظ التسميات بنفس عنوان URL عند نقلها من مراجعة إلى أخرى.
  • يمكن تطبيق تسمية على مراجعة واحدة فقط في كل مرة.
  • تخصيص تقسيم نسبة استخدام الشبكة غير مطلوب للمراجعات ذات التسميات.
  • تكون التسميات مفيدة للغاية عندما يكون التطبيق في وضع المراجعة المتعددة.
  • يمكنك تمكين التسميات أو تقسيم نسبة استخدام الشبكة أو كليهما.

التسميات مفيدة لاختبار المراجعات الجديدة. على سبيل المثال، عندما تريد منح حق الوصول إلى مجموعة من مستخدمي الاختبار، يمكنك منحهم عنوان URL الخاص بالتسمية. وبعد ذلك، عندما تريد نقل المستخدمين إلى مراجعة مختلفة، يمكنك نقل التسمية إلى تلك المراجعة.

تعمل التسميات بشكل مستقل عن تقسيم نسبة استخدام الشبكة. يعمل تقسيم نسبة استخدام الشبكة على توزيع نسبة استخدام الشبكة المتجهة إلى عنوان URL لتطبيق الحاوية على المراجعات استناداً إلى النسبة المئوية لنسبة استخدام الشبكة. عند توجيه نسبة استخدام الشبكة إلى عنوان URL للتسمية، يتم توجيه نسبة استخدام الشبكة إلى مراجعة محددة واحدة.

يجب أن يكون اسم التسمية:

  • تتكون من أحرف أبجدية رقمية صغيرة أو شرطات (-)
  • البدء بحرف أبجدي
  • إنهاء بحرف أبجدي رقمي

يجب ألا تكون التسميات:

  • لديك شرطتان متتاليتان (--)
  • أن يكون أكثر من 64 حرفا

يمكنك إدارة التسميات من صفحة "Revision management" لتطبيق الحاوية في مدخل Microsoft Azure.

Screenshot of Container Apps revision management.

يتوفر عنوان URL للتسمية في جزء تفاصيل المراجعة.

Screenshot of Container Apps revision details.

توزيع وقت التعطل صفر

في وضع المراجعة الفردي، تضمن Container Apps عدم تعرض تطبيقك لوقت تعطل عند إنشاء مراجعة جديدة. لا يتم إلغاء تنشيط المراجعة النشطة الموجودة حتى تصبح المراجعة الجديدة جاهزة.

إذا تم تمكين الدخول، تستمر المراجعة الحالية في تلقي 100٪ من نسبة استخدام الشبكة حتى تصبح المراجعة الجديدة جاهزة.

تعتبر المراجعة الجديدة جاهزة عندما:

  • تم توفير المراجعة بنجاح
  • تم توسيع نطاق المراجعة لمطابقة عدد النسخ المتماثلة للمراجعات السابقة (احترام الحد الأدنى والحد الأقصى لعدد النسخ المتماثلة للمراجعة الجديدة)
  • لقد اجتازت جميع النسخ المتماثلة تحقيقات بدء التشغيل والاستعداد الخاصة بها

في وضع المراجعة المتعددة، يمكنك التحكم في وقت تنشيط المراجعات أو إلغاء تنشيطها والمراجعات التي تتلقى حركة مرور الدخول. إذا تم تكوين قاعدة تقسيم نسبة استخدام الشبكة مع latestRevision تعيين إلى true، فلن تتحول نسبة استخدام الشبكة إلى أحدث مراجعة حتى تصبح جاهزة.

العمل مع مراجعات متعددة

في حين أن وضع المراجعة الفردي هو الوضع الافتراضي، فقد تحتاج في بعض الأحيان إلى التحكم الكامل في كيفية إدارة المراجعات الخاصة بك.

يمنحك وضع المراجعة المتعدد المرونة لإدارة مراجعتك يدويا. على سبيل المثال، يسمح لك استخدام وضع مراجعة متعددة بتحديد مقدار نسبة استخدام الشبكة المخصصة لكل مراجعة بالضبط.

تقسيم النقل

يعرض الرسم التخطيطي التالي تطبيق حاوية مع مراجعتين.

Azure Container Apps: Traffic splitting among revisions

يفترض هذا السيناريو أن تطبيق الحاوية في الحالة التالية:

  • يتم تمكين الدخول ، ما يجعل تطبيق الحاوية متاحا عبر HTTP أو TCP.
  • تم توزيع المراجعة الأولى باسم Revision 1.
  • بعد تحديث الحاوية، تم تنشيط مراجعة جديدة باسم Revision 2.
  • يتم تكوين قواعد تقسيم نسبة استخدام الشبكة بحيث تتلقى Revision 1 نسبة 80٪ من الطلبات، وتتلقى Revision 2 نسبة الـ 20٪ المتبقية.

الوصول المباشر إلى المراجعة

بدلا من استخدام قاعدة توجيه لتحويل نسبة استخدام الشبكة إلى مراجعة، قد تحتاج إلى إتاحة مراجعة لطلبات عنوان URL معين. يمكن أن يسمح لك وضع المراجعة المتعدد بإرسال جميع الطلبات الواردة إلى مجالك إلى أحدث مراجعة، بينما تتوفر طلبات مراجعة قديمة عبر تسميات للوصول المباشر.

حالة التنشيط

في وضع المراجعة المتعددة، يمكنك تنشيط المراجعات أو إلغاء تنشيطها حسب الحاجة. تكون المراجعات النشطة قيد التشغيل ويمكنها معالجة الطلبات، بينما تظل المراجعات غير النشطة خاملة.

لا تفرض تطبيقات الحاوية رسوما على المراجعات غير النشطة. ومع ذلك، هناك حد أقصى للعدد الإجمالي للمراجعات المتاحة، مع إزالة أقدم المراجعات بمجرد تجاوز العدد 100.

أنواع التغيير

تندرج التغييرات التي يتم إجراؤها على تطبيق الحاوية ضمن فئتين: تغييرات نطاق المراجعة أو تغييرات نطاق التطبيق. تؤدي تغييرات نطاق المراجعة إلى تشغيل مراجعة جديدة عند توزيع تطبيقك، بينما لا تؤدي تغييرات نطاق التطبيق إلى ذلك.

تغييرات نطاق المراجعة

يتم إنشاء مراجعة جديدة عند تحديث تطبيق حاوية باستخدام تغييرات نطاق المراجعة. تقتصر التغييرات على المراجعة التي يتم توزيعها فيها، ولا تؤثر على المراجعات الأخرى.

تغيير نطاق المراجعة هو أي تغيير في المعلمات في قسم properties.template من قالب مورد تطبيق الحاوية.

وتشمل هذه المعلمات:

تغييرات نطاق التطبيق

عند توزيع تطبيق حاوية باستخدام تغييرات نطاق التطبيق:

  • يتم تطبيق التغييرات بشكل عام على جميع المراجعات.
  • لا يتم إنشاء مراجعة جديدة.

تُعرّف تغييرات نطاق التطبيق على أنها أي تغيير في المعلمات في قسم properties.configuration من قالب مورد تطبيق الحاوية.

وتشمل هذه المعلمات:

تخصيص المراجعات

يمكنك تخصيص اسم المراجعة والتسميات لتتماشى بشكل أفضل مع اصطلاحات التسمية أو استراتيجية تعيين الإصدار.

لاحقة الاسم

يتم تعيين معرف فريد لكل مراجعة في Container Apps. أثناء إنشاء الأسماء تلقائيا، يمكنك تخصيص اسم المراجعة.

التنسيق النموذجي لاسم المراجعة هو:

<CONTAINER_APP_NAME>-<REVISION_SUFFIX>

على سبيل المثال، إذا كان لديك تطبيق حاوية يسمى album-api وقررت في لاحقة المراجعة الأولى، يصبح اسم المراجعة الكامل هو album-api-first-revision.

يجب أن يكون اسم لاحقة المراجعة:

  • تتكون فقط من أحرف أبجدية رقمية صغيرة أو شرطات (-)
  • البدء بحرف أبجدي
  • إنهاء بحرف أبجدي رقمي

يجب ألا تحتوي الأسماء على:

  • شرطتان متتاليتان (--)
  • أن يكون أكثر من 64 حرفا

يمكنك تعيين لاحقة المراجعة في قالب ARM، من خلال أوامر Azure CLI az containerapp create وaz containerapp update، أو عند إنشاء مراجعة عبر مدخل Microsoft Azure.

حالات الاستخدام

فيما يلي حالات استخدام شائعة لاستخدام المراجعات في تطبيقات الحاوية. هذه القائمة ليست قائمة شاملة لغرض أو قدرات استخدام مراجعات Container Apps.

إدارة الإصدار

تعمل المراجعات على تبسيط عملية تقديم إصدارات جديدة من تطبيقك. عندما تكون مستعدا لطرح تحديث أو ميزة جديدة، يمكنك إنشاء مراجعة جديدة دون التأثير على الإصدار المباشر الحالي. يضمن هذا النهج انتقالا سلسا ويقلل من الاضطرابات للمستخدمين النهائيين.

العودة إلى الإصدارات السابقة

في بعض الأحيان تحتاج إلى العودة بسرعة إلى إصدار سابق ومستقر من تطبيقك. يمكنك العودة إلى مراجعة سابقة لتطبيق الحاوية إذا لزم الأمر.

اختبار A/B

عندما تريد اختبار إصدارات مختلفة من تطبيقك، يمكن أن تدعم المراجعات اختبار A/B. يمكنك توجيه مجموعة فرعية من المستخدمين إلى مراجعة جديدة، وجمع الملاحظات، واتخاذ قرارات مستنيرة استنادا إلى بيانات العالم الحقيقي.

عمليات النشر الزرقاء والأخضر

تدعم المراجعات استراتيجية النشر الأزرق والأخضر. من خلال وجود مراجعتين متوازيتين (باللون الأزرق للإصدار المباشر والأخضر للإصدار الجديد)، يمكنك تدريجيا الطور في مراجعة جديدة. بمجرد أن تكون واثقا من استقرار الإصدار الجديد وأدائه، يمكنك تبديل نسبة استخدام الشبكة بالكامل إلى البيئة الخضراء.

الخطوات التالية