إنشاء مواقع مخصصة وإدارتها على Kubernetes التي تدعم Azure Arc

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

يحتوي الموقع المخصص على تعيين واحد إلى واحد إلى مساحة اسم داخل مجموعة Kubernetes الممكنة في Azure Arc. يمكن استخدام مورد Azure للموقع المخصص جنبا إلى جنب مع التحكم في الوصول المستند إلى الدور Azure (Azure RBAC) لمنح أذونات دقيقة لمطوري التطبيقات أو مسؤولي قاعدة البيانات، ما يمكنهم من نشر موارد مثل قواعد البيانات أو مثيلات التطبيق أعلى مجموعات Kubernetes التي تدعم Arc في بيئة متعددة المستأجرين.

في هذه المقالة، ستتعلم كيفية تمكين المواقع المخصصة على مجموعة Kubernetes الممكنة بواسطة Arc، وكيفية إنشاء موقع مخصص.

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

  • تثبيت أو ترقية Azure CLI إلى أحدث إصدار.

  • تثبيت أحدث إصدارات ملحقات Azure CLI التالية:

    • connectedk8s

    • k8s-extension

    • customlocation

      az extension add --name connectedk8s
      az extension add --name k8s-extension
      az extension add --name customlocation
      

      إذا قمت بالفعل بتثبيت الملحقات connectedk8sk8s-extensionو وcustomlocation، فقم بالتحديث إلى أحدث إصدار باستخدام الأمر التالي:

      az extension update --name connectedk8s
      az extension update --name k8s-extension
      az extension update --name customlocation
      
  • تحقق من تسجيل الموفر المكتمل ل Microsoft.ExtendedLocation.

    1. أدخل الأوامر التالية:

      az provider register --namespace Microsoft.ExtendedLocation
      
    2. راقب عملية التسجيل. يمكن أن يستمر التسجيل لأكثر من 10 دقائق.

      az provider show -n Microsoft.ExtendedLocation -o table
      

      بمجرد التسجيل، سيكون للحالة RegistrationState Registered القيمة .

  • تحقق من أن لديك مجموعة Kubernetes متصلة ممكنة في Azure Arc، وقم بترقية وكلائك إلى أحدث إصدار. تأكد من أن الجهاز الذي ستقوم بتشغيل الأوامر الموضحة في هذه المقالة يحتوي kubeconfig على ملف يشير إلى نظام المجموعة هذا.

تمكين المواقع المخصصة على نظام المجموعة

تلميح

تعتمد ميزة المواقع المخصصة على ميزة اتصال نظام المجموعة. يجب تمكين كلتا الميزتين في نظام المجموعة لكي تعمل المواقع المخصصة.

إذا قمت بتسجيل الدخول إلى Azure CLI كمستخدم Microsoft Entra، فاستخدم الأمر التالي:

az connectedk8s enable-features -n <clusterName> -g <resourceGroupName> --features cluster-connect custom-locations

إذا قمت بتشغيل الأمر أعلاه أثناء تسجيل الدخول إلى Azure CLI باستخدام كيان خدمة، فقد تلاحظ التحذير التالي:

Unable to fetch oid of 'custom-locations' app. Proceeding without enabling the feature. Insufficient privileges to complete the operation.

وذلك لأن كيان الخدمة ليس لديه أذونات للحصول على معلومات حول التطبيق المستخدم من قبل خدمة Azure Arc (الموقع المخصص). لتجنب هذا الخطأ، أكمل الخطوات التالية:

  1. سجل الدخول إلى Azure CLI باستخدام حساب المستخدم الخاص بك. objectId إحضار أو id لتطبيق الموقع المخصص المستخدم بواسطة خدمة Azure Arc باستخدام الأمر التالي:

    az ad sp show --id bc313c14-388c-4e7d-a58e-70017303ee3b --query id -o tsv
    
  2. سجل الدخول إلى Azure CLI باستخدام كيان الخدمة. <objectId> استخدم القيمة أو id من الخطوة السابقة لتمكين المواقع المخصصة على نظام المجموعة:

    az connectedk8s enable-features -n <cluster-name> -g <resource-group-name> --custom-locations-oid <objectId/id> --features cluster-connect custom-locations
    

إنشاء موقع مخصص

  1. انشر ملحق نظام مجموعة خدمة Azure لمثيل خدمة Azure الذي تريد تثبيته على نظام المجموعة:

  2. احصل على معرف Azure Resource Manager لمجموعة Kubernetes الممكنة في Azure Arc، المشار إليها في الخطوات اللاحقة ك connectedClusterId:

    az connectedk8s show -n <clusterName> -g <resourceGroupName>  --query id -o tsv
    
  3. احصل على معرف Azure Resource Manager لملحق نظام المجموعة الذي قمت بنشره إلى مجموعة Kubernetes الممكنة في Azure Arc، المشار إليها في الخطوات اللاحقة على النحو extensionIdالتالي:

    az k8s-extension show --name <extensionInstanceName> --cluster-type connectedClusters -c <clusterName> -g <resourceGroupName>  --query id -o tsv
    
  4. إنشاء الموقع المخصص عن طريق الرجوع إلى مجموعة Kubernetes الممكنة في Azure Arc والملحق:

    az customlocation create -n <customLocationName> -g <resourceGroupName> --namespace <name of namespace> --host-resource-id <connectedClusterId> --cluster-extension-ids <extensionId> 
    
    • المعلمات المطلوبة:

      اسم المعلمة ‏‏الوصف
      --name, --n اسم الموقع المخصص.
      --resource-group, --g مجموعة الموارد للموقع المخصص.
      --namespace مساحة الاسم في المجموعة المرتبطة بالموقع المخصص الذي يتم إنشاؤه.
      --host-resource-id معرف Azure Resource Manager لمجموعة Kubernetes الممكنة في Azure Arc (نظام المجموعة المتصل).
      --cluster-extension-ids معرف Azure Resource Manager لمثيل ملحق نظام المجموعة المثبت على نظام المجموعة المتصل. للحصول على ملحقات متعددة، قم بتوفير قائمة مفصولة بمسافة من معرفات ملحق نظام المجموعة
    • المعلمات الاختيارية:

      اسم المعلمة ‏‏الوصف
      --location, --l موقع مورد Azure Resource Manager للموقع المخصص في Azure. إذا لم يتم تحديده، يتم استخدام موقع نظام المجموعة المتصل.
      --tags قائمة العلامات المفصولة بمسافة بالتنسيق key[=value]. استخدم '' لمسح العلامات الموجودة.
      --kubeconfig مسؤول kubeconfig نظام المجموعة.

إظهار تفاصيل موقع مخصص

لإظهار تفاصيل موقع مخصص، استخدم الأمر التالي:

az customlocation show -n <customLocationName> -g <resourceGroupName> 

سرد المواقع المخصصة

لسرد جميع المواقع المخصصة في مجموعة موارد، استخدم الأمر التالي:

az customlocation list -g <resourceGroupName> 

تحديث موقع مخصص

update استخدم الأمر لإضافة قيم جديدة أو --tags إقران جديد --cluster-extension-ids بالموقع المخصص، مع الاحتفاظ بالقيم الموجودة للعلامات وملحقات نظام المجموعة المقترنة.

az customlocation update -n <customLocationName> -g <resourceGroupName> --namespace <name of namespace> --host-resource-id <connectedClusterId> --cluster-extension-ids <extensionIds> 

تصحيح موقع مخصص

patch استخدم الأمر لاستبدال القيم الموجودة ل --cluster-extension-ids أو --tags. لا يتم الاحتفاظ بالقيم السابقة.

az customlocation patch -n <customLocationName> -g <resourceGroupName> --namespace <name of namespace> --host-resource-id <connectedClusterId> --cluster-extension-ids <extensionIds> 

حذف موقع مخصص

لحذف موقع مخصص، استخدم الأمر التالي:

az customlocation delete -n <customLocationName> -g <resourceGroupName> 

استكشاف الأخطاء وإصلاحها

إذا فشل إنشاء الموقع المخصص مع الخطأ Unknown proxy error occurred، فعدل نهج الشبكة للسماح بالاتصال الداخلي من جراب إلى جراب داخل azure-arc مساحة الاسم. تأكد أيضا من إضافة azure-arc مساحة الاسم كجزء من قائمة الاستبعاد بدون وكيل للنهج الذي تم تكوينه.

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

  • الاتصال بشكل آمن بالمجموعة باستخدام Cluster Connect.
  • تابع Azure App Service على Azure Arc للحصول على إرشادات شاملة حول تثبيت الملحقات وإنشاء مواقع مخصصة وإنشاء بيئة App Service Kubernetes.
  • إنشاء موضوع Event Grid واشتراك حدث لشبكة الأحداث على Kubernetes.
  • تعرف على المزيد حول ملحقات Kubernetes المتوفرة حاليا التي تدعم Azure Arc.