إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
من خلال تخصيص تكوين العقدة، يمكنك ضبط إعدادات نظام التشغيل (OS) أو معلمات kubelet لتتناسب مع احتياجات أحمال العمل الخاصة بك. عند إنشاء مجموعة AKS أو إضافة تجمع عقدة إلى المجموعة لديك، يمكنك تخصيص مجموعة فرعية من إعدادات نظام التشغيل kubelet شائعة الاستخدام. لتكوين الإعدادات خارج هذه المجموعة الفرعية، استخدم مجموعة خفي لتخصيص التكوينات المطلوبة دون فقدان دعم AKS للعقد الخاصة بك.
المتطلبات المسبقه
نظرا لأن الخدمة تضيف دعما للإعدادات الجديدة ومعلمات kubelet، فقد تتطلب معاينة تسجيل علامة الميزة. إذا كانت علامة المعاينة مطلوبة، فإن مرجع معلمات تكوين العقدة المخصصة يستدعيها.
معاينة متطلبات kubeReserved إعدادات kubelet و hardEvictionThreshold
هام
تتوفر ميزات معاينة AKS على أساس الخدمة الذاتية والاشتراك. يتم توفير المعاينات "كما هي" و"كما هي متوفرة"، ويتم استبعادها من اتفاقيات مستوى الخدمة والضمان المحدود. تتم تغطية معاينات AKS جزئيًا بواسطة دعم العملاء على أساس بذل أفضل الجهود. على هذا النحو، هذه الميزات ليست مخصصة للاستخدام الإنتاجي. لمزيد من المعلومات، يُرجي الاطلاع على مقالات الدعم الآتية:
تثبيت aks-preview امتداد Azure CLI
لتثبيت ملحق aks-preview، قم بتشغيل الأمر التالي:
az extension add --name aks-previewقم بتشغيل الأمر التالي للتحديث إلى أحدث إصدار من الملحق:
az extension update --name aks-preview
سجل علامة CustomNodeConfigPreview الميزة في اشتراكك في Azure قبل استخدام إعدادات المعاينة kubeReserved وkubelethardEvictionThreshold.
تسجيل CustomNodeConfigPreview العلامات المميزة
سجل
CustomNodeConfigPreviewعلم الميزة باستخدامaz feature registerالأمر.az feature register --namespace "Microsoft.ContainerService" --name "CustomNodeConfigPreview"يستغرق الأمر بضع دقائق حتى تظهر الحالة مُسجل.
تحقق من حالة التسجيل باستخدام
az feature showالأمر.az feature show --namespace "Microsoft.ContainerService" --name "CustomNodeConfigPreview"عندما تظهر الحالة مسجلة، قم بتحديث تسجيل Microsoft. مزود موارد ContainerService باستخدام
az provider registerالأمر.az provider register --namespace "Microsoft.ContainerService"
إنشاء ملفات تكوين عقدة مخصصة لتجمع عقد AKS
لتغيير نظام التشغيل وتكوين kubelet، قم بإنشاء ملف تكوين جديد باستخدام المعلمات والإعدادات التي تريدها. إذا لم تحدد قيمة لمعلمة، يتم استخدام القيمة الافتراضية.
إشعار
الأمثلة التالية تظهر إعدادات التكوين الشائعة. قم بتعديل الإعدادات لتلبية متطلبات حمل العمل. للحصول على القائمة الكاملة لمعلمات التكوين المخصصة المدعومة، راجع معلمات تكوين العقدة المخصصة ل AKS.
تكوين Kubelet
أنشئ linuxkubeletconfig.jsonملف بالمحتويات التالية:
{
"cpuManagerPolicy": "static",
"cpuCfsQuota": true,
"cpuCfsQuotaPeriod": "200ms",
"imageGcHighThreshold": 90,
"imageGcLowThreshold": 70,
"topologyManagerPolicy": "best-effort",
"allowedUnsafeSysctls": [
"kernel.msg*",
"net.*"
],
"failSwapOn": false
}
لاستخدام إعدادات Kubelet لمعاينة تخصيص العقد على مجموعات عقد لينكس، قم بإضافة kubeReserved ملف تكوين kubelet الخاص hardEvictionThreshold بك. المثال التالي يحجز وحدة المعالجة المركزية والذاكرة لأنظمة Kubernetes ويقوم بتكوين عتبات الإخلاء الصعب:
{
"cpuManagerPolicy": "static",
"kubeReserved": {
"cpuMillicores": 200,
"memoryMB": 1024
},
"hardEvictionThreshold": {
"memoryAvailable": "20%",
"nodeFsAvailable": "10%",
"nodeFsInodesFree": "5%"
}
}
استخدمها kubeReserved وفقط hardEvictionThreshold على مجموعات عقد لينكس. كلا الإعدادين يتطلبان علامة CustomNodeConfigPreview الميزة.
تكوين نظام التشغيل
أنشئ linuxosconfig.jsonملف بالمحتويات التالية:
{
"transparentHugePageEnabled": "madvise",
"transparentHugePageDefrag": "defer+madvise",
"swapFileSizeMB": 1500,
"sysctls": {
"netCoreSomaxconn": 163849,
"netIpv4TcpTwReuse": true,
"netIpv4IpLocalPortRange": "32000 60000"
}
}
أنشئ عنقود AKS باستخدام ملفات تكوين مخصصة
إشعار
ضع المعلومات التالية في اعتبارك عند استخدام ملفات التكوين المخصصة عند إنشاء عنقود AKS جديد:
- إذا حددت إعدادا عند إنشاء عنقود، فإن التكوين ينطبق فقط على العقد في مجموعة العقد الأولية. يحتفظ نظام المجموعة بالقيم الافتراضية لأي إعدادات لم يتم تكوينها في ملف JSON.
-
CustomLinuxOsConfigغير مدعوم لنوع نظام ويندوز. - إعدادات المعاينة
kubeReservedوkubelethardEvictionThresholdمدعومة فقط لمجموعات عقد لينكس وتتطلب علامةCustomNodeConfigPreviewالميزات. أكمل خطوات التسجيل في معاينة متطلباتkubeReservedhardEvictionThresholdوإعدادات kubelet قبل إنشاء المجموعة أو تجمع العقدة.
إنشاء نظام مجموعة جديد باستخدام ملفات التكوين المخصصة عن طريق تشغيل az aks create الأمر وتحديد ملفات التكوين الخاصة بك للمعلمات --kubelet-config و --linux-os-config . ينشئ الأمر المثال التالي مجموعة جديدة مع الملفات المخصصة ./linuxkubeletconfig.json والملفات ./linuxosconfig.json :
az aks create --name <cluster-name> --resource-group <resource-group-name> --kubelet-config ./linuxkubeletconfig.json --linux-os-config ./linuxosconfig.json
إضافة تجمع عقدة باستخدام ملفات التكوين المخصصة
إشعار
ضع المعلومات التالية في الاعتبار عند استخدام ملفات التكوين المخصصة لإضافة تجمع عقدة جديد إلى مجموعة AKS موجودة:
- عند إضافة تجمع عقدة Linux إلى مجموعة موجودة، يمكنك تحديد تكوين kubelet أو تكوين نظام التشغيل أو كليهما. عند إضافة تجمع عقدة Windows إلى مجموعة موجودة، يمكنك فقط تحديد تكوين kubelet. إذا حددت تكوينا عند إضافة مجموعة عقد، فإن التكوين ينطبق فقط على العقد في مجموعة العقد الجديدة. يحتفظ تجمع العقدة بالقيم الافتراضية لأي إعدادات لم يتم تكوينها في ملف JSON.
-
CustomKubeletConfigمدعوم لتجمعات عقد Linux وWindows. - إعدادات المعاينة
kubeReservedوkubelethardEvictionThresholdمدعومة فقط لمجموعات عقد لينكس وتتطلب علامةCustomNodeConfigPreviewالميزات. أكمل خطوات التسجيل في معاينة متطلباتkubeReservedhardEvictionThresholdوإعدادات kubelet قبل إنشاء المجموعة أو تجمع العقدة.
إنشاء تجمع عقدة Linux جديد باستخدام az aks nodepool add الأمر وتحديد ملفات التكوين الخاصة بك للمعلمات --kubelet-config و --linux-os-config . الأمر المثال التالي ينشئ مجموعة عقد لينكس جديدة باستخدام ملف مخصص ./linuxkubeletconfig.json :
az aks nodepool add --name <node-pool-name> --cluster-name <cluster-name> --resource-group <resource-group-name> --kubelet-config ./linuxkubeletconfig.json
تأكد من تطبيق الإعدادات
بعد تطبيق تكوين العقد المخصص، يمكنك التأكد من تطبيق الإعدادات على العقد عن طريق الاتصال بالمضيف والتحقق sysctl من إجراء تغييرات في التكوين على نظام الملفات.
مراجعة معلمات التكوين المخصصة المدعومة
للحصول على القائمة الكاملة لمعلمات تكوين kubelet وLinux OS المدعومة والقيم المسموح بها والإعدادات الافتراضية والأوصاف، راجع معلمات تكوين العقدة المخصصة ل AKS.
اعتبارات لتكوينات العقد المخصصة
ضع الاعتبارات التالية في اعتبارك عند تخصيص تكوين العقدة:
- تقوم ترقيات صورة العقدة بإعادة تطبيق تكوينات العقدة المخصصة.
- تحافظ عمليات التوسيع على تكوينات العقدة المخصصة.
- AKS لا يقوم بالتحقق قبل الطيران لكل معاملة أو قيمة تكوين عقدة مخصصة. تأكد من أن معلمات وقيم تكوين العقد المخصصة التي تحددها مدعومة وصالحة لتجنب المشاكل المحتملة مع عقد العنقود.
- المعاينة
kubeReservedوالإعداداتhardEvictionThresholdمتاحة فقط على مجموعات عقد لينكس. - إذا قمت بتكوين
kubeReserved، يجب أن تكون القيم موجبة ولا يمكن أن تتجاوز سعة المعالج أو الذاكرة المتاحة في مجموعة العقد المستهدفة. - إذا قمت بتكوين
hardEvictionThreshold، استخدم فقط الوحدات المدعومة:Ki,Mi,Gi, أو%لmemoryAvailableوnodeFsAvailable, و رقم خام أو%لnodeFsInodesFree. - غالبا ما تتغير القيم الافتراضية لمعلمات تكوين العقد المخصصة مع إصدارات نظام التشغيل الجديدة. عند تطبيق إعدادات العقد المخصصة، راجع القيم الافتراضية للمعلمات التي تقوم بتكوينها للتأكد من أن إعداداتك المخصصة مناسبة لإصدار نظام التشغيل من عقد العنقود.
- حدد عدد الأشخاص الذين لديهم أذونات لتعديل تكوين العقدة المخصصة لمنع العواقب غير المقصودة على استقرار المجموعة وأدائها. فكر في استخدام تفويض Microsoft Entra ID لواجهة برمجة تطبيقات Kubernetes لتقييد الوصول إلى إعدادات تكوين العنقود.
- افصل تجمعات العقد مع تكوينات مخصصة عن تلك التي لا تحتوي على تكوينات مخصصة لمنع العواقب غير المقصودة على أحمال العمل التي قد تكون حساسة لبعض تغييرات التكوين. على سبيل المثال، إذا كان لديك عبء عمل حرج يتطلب إعدادات kubelet محددة، فكر في عزل هذا العبء إلى مجموعة عقد مخصصة مع تكوين Kubelet المخصص اللازم.
المحتويات ذات الصلة
- تعرف على كيفية تكوين مجموعة AKS.
- تعرف على كيفية ترقية صور العقدة في مجموعتك.
- راجع ترقية مجموعة خدمة Azure Kubernetes (AKS) للتعرف على كيفية ترقية مجموعتك إلى أحدث إصدار من Kubernetes.
- راجع قائمة الأسئلة المتداولة حول AKS للعثور على إجابات لبعض أسئلة AKS الشائعة.