صور نظام تشغيل عقدة الترقية التلقائية

توفر AKS قنوات ترقية تلقائية متعددة مخصصة لتحديثات أمان نظام التشغيل على مستوى العقدة في الوقت المناسب. تختلف هذه القناة عن ترقيات إصدار Kubernetes على مستوى المجموعة و تحل محلها.

التفاعلات بين الترقية التلقائية لنظام التشغيل العقدة والترقية التلقائية لنظام المجموعة

يتم إصدار تحديثات أمان نظام التشغيل على مستوى العقدة بمعدل أسرع من تصحيح Kubernetes أو تحديثات الإصدار الثانوي. تمنحك قناة الترقية التلقائية لنظام تشغيل العقدة المرونة وتمكن استراتيجية مخصصة لتحديثات أمان نظام التشغيل على مستوى العقدة. بعد ذلك، يمكنك اختيار خطة منفصلة للترقيات التلقائية لإصدار Kubernetes على مستوى نظام المجموعة. من الأفضل استخدام كل من الترقيات التلقائية على مستوى نظام المجموعة وقناة الترقية التلقائية لنظام التشغيل العقدة معا. يمكن ضبط الجدولة عن طريق تطبيق مجموعتين منفصلتين من نوافذ - aksManagedAutoUpgradeSchedule الصيانة لقناة الترقية التلقائية لنظام المجموعة ولقناة aksManagedNodeOSUpgradeSchedule الترقية التلقائية لنظام التشغيل العقدة.

قنوات لترقيات صورة نظام التشغيل للعقدة

تحدد القناة المحددة توقيت الترقيات. عند إجراء تغييرات على قنوات الترقية التلقائية لنظام التشغيل العقدة، اسمح بما يصل إلى 24 ساعة حتى تسري التغييرات. بمجرد التغيير من قناة إلى قناة أخرى، سيتم تشغيل إعادة تعيين تؤدي إلى عقد متجددة.

إشعار

لن تؤثر الترقية التلقائية لصورة نظام تشغيل العقدة على إصدار Kubernetes لنظام المجموعة. يعمل فقط لنظام مجموعة في إصدار مدعوم.

تتوفر قنوات الترقية التالية. يسمح لك باختيار أحد الخيارات التالية:

القناة ‏‏الوصف سلوك خاص بنظام التشغيل
None لا تحتوي العقد الخاصة بك على تحديثات أمان مطبقة تلقائيا. وهذا يعني أنك وحدك المسؤول عن تحديثات الأمان الخاصة بك. ‏‫غير متوفر‬
Unmanaged يتم تطبيق تحديثات نظام التشغيل تلقائيا من خلال البنية الأساسية الجزئية المضمنة لنظام التشغيل. الأجهزة المخصصة حديثا غير مفككة في البداية. تقوم البنية الأساسية لنظام التشغيل بتصحيحها في مرحلة ما. يطبق Ubuntu وAzure Linux (تجمعات عقدة وحدة المعالجة المركزية) تصحيحات الأمان من خلال الترقية غير المراقبة/dnf-automatic مرة واحدة تقريبا يوميا حوالي الساعة 06:00 بالتوقيت العالمي المتفق عليه. لا يطبق Windows تصحيحات الأمان تلقائيا، لذلك يتصرف هذا الخيار بشكل مكافئ ل None. ستحتاج إلى إدارة عملية إعادة التشغيل باستخدام أداة مثل kured.
SecurityPatch هذه القناة قيد المعاينة وتتطلب تمكين علامة NodeOsUpgradeChannelPreviewالميزة . راجع قسم المتطلبات الأساسية للحصول على التفاصيل. تقوم AKS بتحديث القرص الثابت الظاهري للعقدة (VHD) بانتظام بتصحيحات من أداة صيانة الصور المسماة "الأمان فقط". قد تكون هناك اضطرابات عند تطبيق تصحيحات الأمان على العقد. عند تطبيق التصحيحات، يتم تحديث VHD وتتم ترقية الأجهزة الموجودة إلى هذا VHD، مع احترام نوافذ الصيانة وإعدادات الطفرة. يتحمل هذا الخيار تكلفة إضافية لاستضافة VHDs في مجموعة موارد العقدة الخاصة بك. إذا كنت تستخدم هذه القناة، يتم تعطيل ترقيات Linux غير المراقب بشكل افتراضي. لا يدعم Azure Linux هذه القناة على الأجهزة الظاهرية التي تدعم وحدة معالجة الرسومات. SecurityPatch يعمل على إصدارات التصحيح التي تم إهمالها، طالما أن إصدار Kubernetes الثانوي لا يزال مدعوما.
NodeImage تقوم AKS بتحديث العقد ب VHD مصحح حديثا يحتوي على إصلاحات أمان وإصلاحات الأخطاء على إيقاع أسبوعي. تحديث VHD الجديد معطلة، بعد نوافذ الصيانة وإعدادات الطفرة. لا يتم تكبد تكلفة VHD إضافية عند اختيار هذا الخيار. إذا كنت تستخدم هذه القناة، يتم تعطيل ترقيات Linux غير المراقب بشكل افتراضي. تدعم ترقيات صورة العقدة إصدارات التصحيح التي تم إهمالها، طالما أن إصدار Kubernetes الثانوي لا يزال مدعوما.

تعيين قناة الترقية التلقائية لنظام تشغيل العقدة على نظام مجموعة جديد

  • قم بتعيين قناة الترقية التلقائية لنظام التشغيل العقدة على نظام مجموعة جديد باستخدام az aks create الأمر مع المعلمة --node-os-upgrade-channel . يعين المثال التالي قناة الترقية التلقائية لنظام التشغيل للعقدة إلى SecurityPatch.

    az aks create --resource-group myResourceGroup --name myAKSCluster --node-os-upgrade-channel SecurityPatch
    

تعيين قناة الترقية التلقائية لنظام التشغيل للعقدة على نظام مجموعة موجود

  • قم بتعيين قناة الترقية التلقائية لنظام تشغيل العقدة على مجموعة موجودة باستخدام az aks update الأمر مع المعلمة --node-os-upgrade-channel . يعين المثال التالي قناة الترقية التلقائية لنظام التشغيل للعقدة إلى SecurityPatch.

    az aks update --resource-group myResourceGroup --name myAKSCluster --node-os-upgrade-channel SecurityPatch
    

تحديث الملكية والجدول الزمني

يعني إيقاع الإعداد الافتراضي أنه لا توجد نافذة صيانة مخططة مطبقة.

القناة التحديثات الملكية إيقاع افتراضي
Unmanaged تحديثات الأمان المستندة إلى نظام التشغيل. لا تتحكم AKS في هذه التحديثات. ليلا حول 6AM UTC ل Ubuntu وAzure Linux. شهريا لنظام التشغيل Windows.
SecurityPatch تم اختبار AKS وإدارتها بالكامل وتطبيقها مع ممارسات النشر الآمنة. لمزيد من المعلومات، راجع زيادة الأمان والمرونة لأحمال العمل المتعارف عليها على Azure. التنزيلات.
NodeImage AKS التنزيلات.

إشعار

بينما يتم إصدار تحديثات أمان Windows على أساس شهري، فإن استخدام القناة Unmanaged لن يطبق هذه التحديثات تلقائيا على عقد Windows. إذا اخترت القناة Unmanaged ، فستحتاج إلى إدارة عملية إعادة التشغيل باستخدام أداة مثل kured من أجل تطبيق تصحيحات الأمان بشكل صحيح.

متطلبات قناة SecurityPatch

لاستخدام القناة SecurityPatch ، يجب أن تدعم مجموعتك هذه المتطلبات:

  • يجب أن تستخدم إصدار واجهة برمجة التطبيقات أو أحدث 11-02-preview
  • إذا كنت تستخدم Azure CLI، aks-preview يجب تثبيت إصدار ملحق CLI أو إصدار 0.5.166 أحدث
  • يجب تمكين علامة الميزة NodeOsUpgradeChannelPreview على اشتراكك

تسجيل NodeOsUpgradeChannelPreview

قم بتسجيلNodeOsUpgradeChannelPreviewميزة الإشارة باستخدامتسجيل ميزة az كما هو موضح في المثال التالي:

az feature register --namespace "Microsoft.ContainerService" --name "NodeOsUpgradeChannelPreview"

يستغرق الأمر بضع دقائق حتى تظهر الحالة مُسجل. تحقق من حالة التسجيل باستخدام الأمر az feature show :

az feature show --namespace "Microsoft.ContainerService" --name "NodeOsUpgradeChannelPreview"

عندما تعكس الحالة Registered، قم بتحديث تسجيل موفر موارد Microsoft.ContainerService باستخدام الأمر az provider register:

az provider register --namespace Microsoft.ContainerService

أخطاء قناة العقدة المعروفة

إشعار

بشكل افتراضي، ستقوم أي مجموعة جديدة تم إنشاؤها باستخدام إصدار API أو أحدث 06-01-2023 (بما في ذلك 06-02-preview) بتعيين قيمة قناة الترقية التلقائية لنظام التشغيل العقدة إلى NodeImage. أي مجموعات موجودة تم إنشاؤها باستخدام إصدار API أقدم من 06-01-2023 سيتم تعيين قيمة قناة الترقية التلقائية لنظام التشغيل إلى None افتراضيا.

نوافذ الصيانة المخططة لنظام تشغيل العقدة

تبدأ الصيانة المخطط لها للترقية التلقائية لنظام التشغيل للعقدة في نافذة الصيانة المحددة.

إشعار

لضمان الوظائف المناسبة، استخدم نافذة صيانة من أربع ساعات أو أكثر.

لمزيدٍ من المعلومات، راجع استخدم الصيانة المخطط لها لجدولة نوافذ الصيانة لنظام مجموعة Azure Kubernetes Service (AKS) .

الأسئلة المتداولة حول الترقيات التلقائية لنظام تشغيل العقدة

  • كيف يمكنني التحقق من قيمة nodeOsUpgradeChannel الحالية على نظام مجموعة؟

az aks show قم بتشغيل الأمر وتحقق من "autoUpgradeProfile" لتحديد القيمة التي nodeOsUpgradeChannel تم تعيينها إلى:

az aks show --resource-group myResourceGroup --name myAKSCluster --query "autoUpgradeProfile"
  • كيف يمكنني مراقبة حالة الترقيات التلقائية لنظام تشغيل العقدة؟

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

  • هل يمكنني تغيير قيمة قناة الترقية التلقائية لنظام التشغيل للعقدة إذا تم تعيين قناة الترقية التلقائية لنظام المجموعة إلى node-image ؟

‏‏لا. حاليا، عند تعيين قناة الترقية التلقائية لنظام المجموعة إلى node-image، فإنه يقوم أيضا تلقائيا بتعيين قناة الترقية التلقائية لنظام التشغيل العقدة إلى NodeImage. لا يمكنك تغيير قيمة قناة الترقية التلقائية لنظام التشغيل للعقدة إذا كانت قناة الترقية التلقائية لنظام المجموعة هي node-image. لكي تتمكن من تغيير قيم قناة الترقية التلقائية لنظام التشغيل العقدة، تأكد من أن قناة الترقية التلقائية لنظام المجموعة ليست node-image.

  • لماذا يوصى SecurityPatch باستخدام القناة Unmanaged ؟

على القناة Unmanaged ، لا تتحكم AKS في كيفية ووقت تسليم تحديثات الأمان. مع SecurityPatch، يتم اختبار تحديثات الأمان بالكامل واتباع ممارسات النشر الآمنة. SecurityPatch كما يكرم نوافذ الصيانة. لمزيد من التفاصيل، راجع زيادة الأمان والمرونة لأحمال العمل المتعارف عليها على Azure.

  • كيف أعمل معرفة ما إذا كان SecurityPatch يتم تطبيق أو NodeImage ترقية على العقدة الخاصة بي؟

قم بتشغيل الأمر التالي للحصول على تسميات العقدة:

kubectl get nodes --show-labels

من بين التسميات التي تم إرجاعها، يجب أن تشاهد سطرا مشابها للإخراج التالي:

kubernetes.azure.com/node-image-version=AKSUbuntu-2204gen2containerd-202311.07.0

هنا، إصدار صورة العقدة الأساسية هو AKSUbuntu-2204gen2containerd. إذا كان ذلك ممكنا، عادة ما يتبع إصدار تصحيح الأمان. في المثال أعلاه، يكون 202311.07.0.

كما يمكن البحث عن نفس التفاصيل في مدخل Microsoft Azure ضمن عرض تسمية العقدة:

لقطة شاشة لصفحة العقد لمجموعة AKS في مدخل Microsoft Azure. تعرض تسمية إصدار صورة العقدة بوضوح صورة العقدة الأساسية وأحدث تاريخ تصحيح أمان مطبق.

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

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