إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
تتكون عناقيد خدمة Azure Kubernetes (AKS) من مكونين رئيسيين: مستوى التحكم الذي تديره Azureوتجمعات العقد التي تعمل فيها أحمال عملك. تركز هذه المقالة على ترقية مستوى التحكم بشكل مستقل، مما يسمح لك باعتماد إصدارات Kubernetes جديدة لميزات خوادم API مع إدارة ترقيات تجمع العقد بشكل منفصل.
قبل البدء
- إذا كنت تستخدم Azure CLI، تتطلب هذه المقالة الإصدار 2.34.1 من Azure CLI أو أحدث. استخدم الأمر
az --versionللعثور على الإصدار. إذا كنت بحاجة إلى التثبيت أو الترقية، فراجع تثبيت Azure CLI. - إذا كنت تستخدم Azure PowerShell، تتطلب هذه المقالة إصدار Azure PowerShell 5.9.0 أو أحدث. استخدم cmdlet
Get-InstalledModule -Name Azللعثور على النسخة. إذا كنت بحاجة إلى التثبيت أو الترقية، فراجع تثبيت وحدة Azure PowerShell. - يتطلب تنفيذ عمليات الترقية
Microsoft.ContainerService/managedClusters/agentPools/writeدور RBAC. لمزيد من البحث عن أدوار Azure RBAC، راجع عمليات موفر موارد Azure. - يتم تعطيل واجهات برمجة التطبيقات التجريبية بشكل افتراضي عند الترقية إلى نسخ كوبيرنتس 1.30 و1.27 LTS.
Warning
تأكد من حصتك الكافية من الحصة قبل الترقية. إذا كانت الحصة منخفضة، قد تفشل الترقية. لمزيد من المعلومات، راجع زيادة الحصص النسبية.
نظرة عامة على أنواع ترقيات AKS
يوضح الجدول التالي ثلاثة أنواع من ترقيات AKS، مع تسليط الضوء على نطاقها وحالات استخدامها:
| نوع الترقية | النطاق | حالة الاستخدام |
|---|---|---|
| طائرة التحكم فقط | خادم API، إلخ، مدير التحكم، الجدولة | اختبر واجهات برمجة تطبيقات Kubernetes الجديدة قبل ترقية أعباء العمل |
| مجموعة كاملة | مستوى التحكم وجميع مجموعات العقد | ترقية قياسية للحفاظ على تحديث العنقود |
| مجموعة العقد فقط | مجموعات العقد المحددة | الإطلاق المدرج بعد ترقية طائرة التحكم |
Tip
ترقية مستوى التحكم أولا تتيح لك التحقق من توافق واجهة برمجة تطبيقات Kubernetes قبل التأثير على أحمال العمل الجارية. لاستراتيجيات ترقية تجمع العقد، انظر إعداد الترقيات المتدحرجة.
قواعد ترقية نسخ Kubernetes
عند ترقية مجموعة AKS مدعومة، لا يمكنك تخطي إصدارات Kubernetes الثانوية. يجب إجراء جميع الترقيات بالتتابع حسب رقم الإصدار الثانوي. على سبيل المثال، يسمح بالترقيات بين 1.28.x ->1.29.x أو 1.29.x ->1.30.x . 1.28.x ->1.30.x غير مسموح به.
يمكن أن يكون مستوى التحكم متقدما على نسختين ثانويتين من مجموعات العقد. على سبيل المثال، إذا كان مستوى التحكم لديك عند 1.30.x، يمكن أن تكون مجموعات العقد عند 1.28.x، 1.29.x، أو 1.30.x.
تحقق من وجود تحديثات متاحة ل AKS
Tip
للبقاء على اطلاع بأحدث إصدارات وتحديثات AKS، راجع متتبع إصدارات AKS.
- Azure CLI
- Azure PowerShell
- مدخل Microsoft Azure
تحقق من وجود إصدارات Kubernetes المتاحة لمجموعة AKS الخاصة بك باستخدام az aks get-upgrades الأمر.
az aks get-upgrades --resource-group <resource-group-name> --name <cluster-name> --output table
يظهر إخراج المثال التالي الإصدار الحالي ك 1.28.9 ويسرد الإصدارات المتوفرة ضمن upgrades:
Name ResourceGroup MasterVersion Upgrades
------- --------------- --------------- --------------
default <resource-group-name> 1.28.9 1.29.2, 1.29.4
ترقية مستوى التحكم AKS فقط
- Azure CLI
- Azure PowerShell
- مدخل Microsoft Azure
قم بترقية مستوى التحكم باستخدام
az aks upgradeالأمر مع العلم--control-plane-only. المثال التالي يطور مستوى التحكم إلى إصدار Kubernetes 1.29.4:az aks upgrade \ --resource-group <resource-group-name> \ --name <cluster-name> \ --kubernetes-version 1.29.4 \ --control-plane-onlyتأكد من نجاح ترقية طائرة التحكم باستخدام الأمر
az aks show.az aks show --resource-group <resource-group-name> --name <cluster-name> --output tableيظهر الإخراج المثال التالي أن مستوى التحكم يعمل الآن على 1.29.4:
Name Location ResourceGroup KubernetesVersion ProvisioningState Fqdn ------------ ---------- --------------- ------------------- ------------------- ------------------------------------------------ <cluster-name> eastus <resource-group-name> 1.29.4 Succeeded <cluster-name>-dns-123abcd4.hcp.eastus.azmk8s.ioتحقق من بقاء إصدارات تجمع العقد دون تغيير باستخدام أمر [
az aks nodepool list][az-aks-nodepool-list].az aks nodepool list --resource-group <resource-group-name> --cluster-name <cluster-name> --query "[].{Name:name,Version:orchestratorVersion}" --output tableفي المخرج، يجب أن تظهر تجمعات العقد إصدار كوبيرنتيز السابق.
ترقية عنقود AKS الكامل
إشعار
خلال ترقية كاملة للعناقود، يقوم AKS بترقية مستوى التحكم أولا، ثم يطور كل مجموعة عقد بشكل متسلسل. لمزيد من التحكم في ترقيات تجمع العقد، راجع إعداد الترقيات المتدحرجة.
- Azure CLI
- Azure PowerShell
- مدخل Microsoft Azure
قم بترقية المجموعة الكاملة (مستوى التحكم وجميع مجموعات العقد) باستخدام az aks upgrade الأمر. المثال التالي يطور العنقود إلى إصدار Kubernetes 1.29.4:
az aks upgrade \
--resource-group <resource-group-name> \
--name <cluster-name> \
--kubernetes-version 1.29.4
الأسئلة المتداولة
لماذا تم ترقية مجموعات العقد الخاصة بي بينما كنت فقط أطور مستوى التحكم؟
قد يؤدي AKS إلى ترقية مجموعة العقد المتحركة إلى جانب ترقية مستوى التحكم للحفاظ على توافق العنقود وصالحا. عادة ما يحدث هذا الترقية عندما تفشل ترقية العقدة السابقة أو تترك العقد في إصدارات مختلطة.
هل يمكنني ترقية مجموعات العقد قبل مستوى التحكم؟
لا يجب أن تكون نسخة مستوى التحكم دائما مساوية أو أكبر من أي نسخة من مجموعة العقد. يجب عليك ترقية مستوى التحكم أولا.
كم يستغرق ترقية طائرة التحكم؟
عادة ما تكتمل ترقيات مستوى التحكم خلال 5-15 دقيقة، حسب تكوين العنقود وحمل منطقة Azure. ترقيات تجمع العقد تستغرق وقتا أطول لأنها تتطلب تفريغ وإعادة تصوير العقد.
حل مشاكل ترقية مستوى التحكم
لا توجد ترقيات متاحة
إذا az aks get-upgrades لم تظهر أي ترقيات متاحة، فقد يكون مجموعتك التالية:
- أنا بالفعل على أحدث إصدار مدعوم.
- على نسخة غير مدعومة تتطلب الترحيل.
بالنسبة للإصدارات غير المدعومة، أنشئ مجموعة جديدة مع نسخة مدعومة وقم بترحيل أعباء العمل.
فشل التحديث بسبب واجهات برمجة التطبيقات المهجورة
قبل الترقية، تحقق من وجود واجهات برمجة التطبيقات القديمة باستخدام أدوات مثل kube-no-trouble (kubent):
kubent
قم بتحديث بياناتك لاستخدام إصدارات API المدعومة قبل الترقية.