نشر ملحقات نظام المجموعة وإدارتها باستخدام Azure CLI

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

قبل البدء، اقرأ عن ملحقات نظام المجموعة.

إشعار

الأمثلة المقدمة في هذه المقالة غير كاملة، ومقصود منها فقط عرض الوظائف. للحصول على قائمة شاملة بالأوامر ومعلماتها، راجع مرجع az k8s-extension CLI.

المتطلبات الأساسية

  • اشتراك Azure. إذا لم يكن لديك اشتراك Azure، يمكنك إنشاء حساب مجاني.

  • Microsoft.ContainerService يجب تسجيل موفري الموارد و Microsoft.KubernetesConfiguration في اشتراكك. لتسجيل هؤلاء الموفرين، قم بتشغيل الأمر التالي:

    az provider register --namespace Microsoft.ContainerService --wait 
    az provider register --namespace Microsoft.KubernetesConfiguration --wait 
    
  • نظام مجموعة AKS. يجب أن يكون قد تم إنشاء نظام المجموعة هذا بهوية مدارة، حيث لن تعمل ملحقات نظام المجموعة مع أنظمة المجموعات المستندة إلى الخدمة الأساسية. بالنسبة للمجموعات الجديدة التي تم إنشاؤها باستخدام az aks create، يتم تكوين الهوية المدارة بشكل افتراضي. بالنسبة للمجموعات القائمة على أساس الخدمة الحالية، قم بالتبديل إلى إدارة الهوية عن طريق التشغيل az aks update باستخدام العلامة --enable-managed-identity . لمزيد من المعلومات، راجع استخدام الهوية المدارة.

  • Azure CLI الإصدار >= 2.16.0 مثبت. نوصي باستخدام أحدث إصدار.

  • أحدث إصدار من k8s-extension ملحقات Azure CLI. تثبيت الملحق عن طريق تشغيل الأمر التالي:

    az extension add --name k8s-extension
    

    إذا كان الملحق مثبتا بالفعل، فتأكد من تشغيل أحدث إصدار باستخدام الأمر التالي:

    az extension update --name k8s-extension
    

تحديث مثيل ملحق البرنامج

إنشاء ملحق مثيل جديد مع k8s-extension create، تمرير قيم المعلمات الإلزامية. ينشئ هذا الأمر المثال مثيل ملحق Azure التعلم الآلي على نظام مجموعة AKS:

az k8s-extension create --name azureml --extension-type Microsoft.AzureML.Kubernetes --scope cluster --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type managedClusters --configuration-settings enableInference=True allowInsecureConnections=True inferenceRouterServiceType=LoadBalancer

ينشئ هذا الأمر المثال نموذج تطبيق Kubernetes (منشور على Marketplace) على نظام مجموعة AKS:

az k8s-extension create --name voteapp --extension-type Contoso.AzureVoteKubernetesAppTest --scope cluster --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type managedClusters --plan-name testPlanID --plan-product testOfferID --plan-publisher testPublisherID --configuration-settings title=VoteAnimal value1=Cats value2=Dogs

إشعار

خدمة ملحقات مجموعة أجهزة كمبيوتر غير قادر على الاحتفاظ بالمعلومات الحساسة لأكثر من 48 ساعة. إذا لم يكن لدى وكلاء ملحق نظام المجموعة اتصال بالشبكة لأكثر من 48 ساعة ولا يمكنهم تحديد ما إذا كان سيتم إنشاء ملحق على نظام المجموعة، فسينتقل الملحق إلى Failed الحالة. بمجرد أن تكون في Failed الحالة، ستحتاج إلى التشغيل k8s-extension create مرة أخرى لإنشاء مثيل ملحق جديد.

تتمثل المعلمات المطلوبة في الآتي

اسم المعلمة ‏‏الوصف
--name اسم مثيل ملحق اسم الملف
--extension-type نوع الملحق الذي تريد تثبيته على نظام مجموعة أجهزة كمبيوتر. على سبيل المثال: Microsoft.AzureML.Kubernetes
--cluster-name اسم مجموعة أجهزة كمبيوتر AKS التي يجب إنشاء مثيل ملحق اسم الملف عليها
--resource-group مجموعة الموارد التي تحتوي على نظام مجموعة AKS
--cluster-type نوع نظام مجموعة أجهزة كمبيوتر الذي يجب إنشاء مثيل الملحق عليه. تحديد managedClusters كما مخطط إلى مجموعة أجهزة كمبيوتر AKS

تتمثل المعلمات الاختيارية في الآتي

اسم المعلمة ‏‏الوصف
--auto-upgrade-minor-version خاصية منطقية تحدد ما إذا كان سيتم ترقية الإصدار الثانوي للملحق تلقائيًا أم لا. افتراضي: true. إذا تم تعيين هذه المعلمة إلى true، فلا يمكنك تعيين version المعلمة، حيث سيتم تحديث الإصدار ديناميكيا. إذا تم تعيينه إلى false، فلن تتم ترقية الملحق تلقائيا حتى لإصدارات التصحيح.
--version إصدار ملحق البرنامج الذي سيتم تثبيته (إصدار محدد لتثبيت مثيل الملحق). لا يجب الدعم إذا تم تعيين التحديث التلقائي-الإصدار الثانوي إلى true.
--configuration-settings الإعدادات التي يمكن تمريرها إلى ملحق المستعرض عنصر التحكم ووظائفه. تمرير القيم كأزواج مفصولة بمسافة key=value بعد اسم المعلمة. إذا تم استخدام هذه المعلمة في الأمر، فلا يمكن استخدام --configuration-settings-file في نفس الأمر.
--configuration-settings-file المسار إلى ملف JavaScript Object Notation الذي له أزواج قيم رئيسية ليتم استخدامها لتمرير إعدادات التكوين إلى ملحق البرنامج. إذا تم استخدام هذه المعلمة في الأمر، فلا يمكن استخدام --configuration-settings في نفس الأمر.
--configuration-protected-settings هذه الإعدادات غير قابلة للاسترداد باستخدام استدعاءات API GET أو الأوامر az k8s-extension show، وبالتالي يتم استخدامها لتمرير في إعدادات حساسة. تمرير القيم كأزواج مفصولة بمسافة key=value بعد اسم المعلمة. إذا تم استخدام هذه المعلمة في الأمر، فلا يمكن استخدام --configuration-protected-settings-file في نفس الأمر.
--configuration-protected-settings-file المسار إلى ملف JavaScript Object Notation الذي له أزواج قيم رئيسية ليتم استخدامها لتمرير الإعدادات الحساسة إلى ملحق البرنامج. إذا تم استخدام هذه المعلمة في الأمر، فلا يمكن استخدام --configuration-protected-settings في نفس الأمر.
--scope نطاق التثبيت ملحق البرنامج- cluster أو namespace
--release-namespace تشير هذه المعلمة إلى مساحة الاسم التي يتم إنشاء الإصدار داخلها. تكون هذه المعلمة ذات صلة فقط إذا scope تم تعيين المعلمة إلى cluster.
--release-train يمكن لمؤلفي الملحقات نشر إصدارات في قطارات إصدار مختلفة مثل Stable، Preview، وما إلى ذلك. إذا لم يتم تعيين هذه المعلمة بشكل صريح، Stable يتم استخدامها كافتراضية. لا تستخدم هذه المعلمة عند --auto-upgrade-minor-version تعيين المعلمة إلى false.
--target-namespace تشير المعلمة إلى مساحة الاسم التي سيتم إنشاء الإصدار ضمنها. يتم تقييد إذن حساب النظام الذي تم إنشاؤه لمثيل ملحق البرنامج هذا إلى مساحة الاسم. تكون المعلمة ذات صلة فقط إذا scope تم تعيين المعلمة إلى namespace.
--plan-name معرف الخطة للملحق، الموجود في صفحة Marketplace في مدخل Microsoft Azure ضمن معلومات الاستخدام + الدعم.
--plan-product معرف المنتج للملحق، الموجود في صفحة Marketplace في مدخل Microsoft Azure ضمن معلومات الاستخدام + الدعم. مثال على ذلك هو اسم عرض ISV المستخدم.
--plan-publisher معرف الناشر للملحق، الموجود في صفحة Marketplace في مدخل Microsoft Azure ضمن معلومات الاستخدام + الدعم.

تظهر التفاصيل مثيل ملحق البرنامج

لعرض تفاصيل مثيل ملحق مثبت حاليا، استخدم k8s-extension show، تمرير قيم المعلمات الإلزامية.

az k8s-extension show --name azureml --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type managedClusters

سرد كافة الملحقات المثبتة على مجموعة أجهزة كمبيوتر

لسرد كافة الملحقات المثبتة على نظام مجموعة، استخدم k8s-extension list، تمرير قيم المعلمات الإلزامية.

az k8s-extension list --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type managedClusters

تحديث مثيل ملحق البرنامج

إشعار

راجع الوثائق الخاصة بنوع الملحق المحدد لفهم الإعدادات المحددة في --configuration-settings والتي --configuration-protected-settings يمكن تحديثها. بالنسبة --configuration-protected-settingsإلى ، من المتوقع توفير جميع الإعدادات، حتى إذا تم تحديث إعداد واحد فقط. إذا تم حذف أي من هذه الإعدادات، اعتبار هذه الإعدادات قديمة وحذفها.

لتحديث مثيل ملحق موجود، استخدم k8s-extension update، تمرير قيم المعلمات الإلزامية. يحدث الأمر التالي إعداد الترقية التلقائية لمثيل ملحق Azure التعلم الآلي:

az k8s-extension update --name azureml --extension-type Microsoft.AzureML.Kubernetes --scope cluster --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type managedClusters

المعلمات المطلوبة للتحديث

اسم المعلمة ‏‏الوصف
--name اسم مثيل ملحق اسم الملف
--extension-type نوع الملحق الذي تريد تثبيته على نظام مجموعة أجهزة كمبيوتر. على سبيل المثال: Azure Machine Learning
--cluster-name اسم مجموعة أجهزة كمبيوتر AKS التي يجب إنشاء مثيل ملحق اسم الملف عليها
--resource-group مجموعة الموارد التي تحتوي على نظام مجموعة AKS
--cluster-type نوع نظام مجموعة أجهزة كمبيوتر الذي يجب إنشاء مثيل الملحق عليه. تحديد managedClusters كما مخطط إلى مجموعة أجهزة كمبيوتر AKS

إذا كان تحديث تطبيق Kubernetes تم شراؤها من خلال Marketplace، فإن المعلمات التالية مطلوبة أيضا:

اسم المعلمة ‏‏الوصف
--plan-name معرف الخطة للملحق، الموجود في صفحة Marketplace في مدخل Microsoft Azure ضمن معلومات الاستخدام + الدعم.
--plan-product معرف المنتج للملحق، الموجود في صفحة Marketplace في مدخل Microsoft Azure ضمن معلومات الاستخدام + الدعم. مثال على ذلك هو اسم عرض ISV المستخدم.
--plan-publisher معرف الناشر للملحق، الموجود في صفحة Marketplace في مدخل Microsoft Azure ضمن معلومات الاستخدام + الدعم.

معلمات اختيارية للتحديث

اسم المعلمة ‏‏الوصف
--auto-upgrade-minor-version خاصية منطقية تحدد ما إذا كان سيتم ترقية الإصدار الثانوي للملحق تلقائيًا أم لا. افتراضي: true. إذا تم تعيين هذه المعلمة إلى مجموعة true، لا يمكنك تعيين معلمة version، كما سيتم تحديث الإصدار بشكل حيوي. إذا تم تعيينه إلى false، فلن تتم ترقية الملحق تلقائيا حتى لإصدارات التصحيح.
--version إصدار ملحق البرنامج الذي سيتم تثبيته (إصدار محدد لتثبيت مثيل الملحق). لا يجب الدعم إذا تم تعيين التحديث التلقائي-الإصدار الثانوي إلى true.
--configuration-settings الإعدادات التي يمكن تمريرها إلى ملحق المستعرض عنصر التحكم ووظائفه. توفير الإعدادات التي تتطلب تحديثا فقط. يتم استبدال الإعدادات المتوفرة بالقيم المتوفرة. تمرير القيم كأزواج مفصولة بمسافة key=value بعد اسم المعلمة. إذا تم استخدام هذه المعلمة في الأمر، فلا يمكن استخدام --configuration-settings-file في نفس الأمر.
--configuration-settings-file المسار إلى ملف JavaScript Object Notation الذي له أزواج قيم رئيسية ليتم استخدامها لتمرير إعدادات التكوين إلى ملحق البرنامج. إذا تم استخدام هذه المعلمة في الأمر، فلا يمكن استخدام --configuration-settings في نفس الأمر.
--configuration-protected-settings هذه الإعدادات غير قابلة للاسترداد باستخدام استدعاءات API GET أو الأوامر az k8s-extension show، وبالتالي يتم استخدامها لتمرير في إعدادات حساسة. عند تحديث إعداد، من المتوقع تحديد جميع الإعدادات. إذا حُذفت بعض الإعدادات، يتم اعتبار هذه الإعدادات قديمة وتم حذفها. تمرير القيم كأزواج مفصولة بمسافة key=value بعد اسم المعلمة. إذا تم استخدام هذه المعلمة في الأمر، فلا يمكن استخدام --configuration-protected-settings-file في نفس الأمر.
--configuration-protected-settings-file المسار إلى ملف JavaScript Object Notation الذي له أزواج قيم رئيسية ليتم استخدامها لتمرير الإعدادات الحساسة إلى ملحق البرنامج. إذا تم استخدام هذه المعلمة في الأمر، فلا يمكن استخدام --configuration-protected-settings في نفس الأمر.
--scope نطاق التثبيت ملحق البرنامج- cluster أو namespace
--release-train يمكن لمؤلفي الملحقات نشر إصدارات في قطارات إصدار مختلفة مثل Stable، Preview، وما إلى ذلك. إذا لم يتم تعيين هذه المعلمة بشكل صريح، Stable يتم استخدامها كافتراضية. لا تستخدم هذه المعلمة عند autoUpgradeMinorVersion تعيين المعلمة إلى false.

حذف مثيل ملحق البرنامج

لحذف مثيل ملحق على نظام مجموعة، استخدم k8s-extension-delete، مرر قيم المعلمات الإلزامية.

az k8s-extension delete --name azureml --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type managedClusters

إشعار

حذف مورد Azure الذي يمثل هذا الملحق على الفور. حذف إصدار هيلم على مجموعة أجهزة كمبيوتر المقترنة بهذا الملحق فقط عند العوامل التي تعمل على مجموعة أجهزة كمبيوتر Kubernetes اتصال شبكة الاتصال ويمكن الوصول إلى خدمات Azure مرة أخرى لجلب الحالة المطلوبة.

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