تعيين مجموعات حجز السعة إلى مجموعات عقد Azure Kubernetes Service (AKS)

مع تغير متطلبات عبء العمل لديك، يمكنك ربط مجموعات حجز السعة الحالية (CRGs) بتجمع عقد Azure Kubernetes Service (AKS) لضمان السعة المخصصة لها. مجموعات حجز السعة تتيح لك حجز سعة الحساب في منطقة Azure أو منطقة توفر لأي مدة زمنية. هذه الميزة مفيدة لأحمال العمل التي تتطلب سعة مضمونة، مثل تلك التي تحتوي على أنماط حركة حركة بيانات متوقعة أو تلك التي تحتاج إلى تلبية متطلبات أداء محددة.

في هذا المقال، ستتعلم كيفية استخدام مجموعات حجز السعة مع مجموعات العقد في AKS.

‏‫ملاحظة

يؤدي حذف تجمع عقدة ضمنيا إلى فصل تجمع العقدة هذا عن أي مجموعة حجز سعة مقترنة قبل حذف تجمع العقدة. يؤدي حذف نظام مجموعة ضمنيا إلى فصل كافة تجمعات العقد في تلك المجموعة عن مجموعات حجز السعة المقترنة بها.

المتطلبات المسبقة لاستخدام مجموعات حجز السعة مع مجموعات عقد AKS

  • تحتاج إلى تثبيت وتكوين نسخة Azure CLI 2.56 أو أحدث. قم بتشغيل az --version للعثور على الإصدار. إذا كنت بحاجة إلى التثبيت أو الترقية، فراجع تثبيت Azure CLI.
  • تحتاج إلى مجموعة حجز سعة موجودة لديها على الأقل حجز سعة واحد. إذا لم يكن كذلك، يتم إضافة مجموعة العقد إلى المجموعة مع تحذير ولا يتم ربط مجموعة حجز السعة.
  • تحتاج إلى إنشاء هوية مدارة معينة من قبل المستخدم مع Contributor الدور الخاص بمجموعة الموارد التي تحتوي على مجموعة حجز السعة وتعيين الهوية إلى عنقود AKS الخاص بك. الهويات المدارة المعينة من النظام لا تعمل مع هذه الميزة.

إنشاء هوية مدارة معينة من قبل المستخدم وتعيينها إلى مجموعة AKS

  1. إنشاء هوية مدارة يعينها المستخدم باستخدام az identity create الأمر .

    az identity create --name <identity-name> --resource-group <resource-group-name> --location <location>
    
  2. احصل على معرف الهوية المدارة المعينة من قبل المستخدم باستخدام az identity show الأمر وضبطه إلى متغير بيئي.

    IDENTITY_ID=$(az identity show --name <identity-name> --resource-group <resource-group-name> --query identity.id -o tsv)
    
  3. تعيين Contributor الدور للهوية المعينة من قبل المستخدم باستخدام az role assignment create الأمر.

    az role assignment create --assignee $IDENTITY_ID --role "Contributor" --scope /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>
    

    قد يستغرق الأمر حتى 60 دقيقة لتوزيع الدور.

  4. تعيين الهوية المدارة المعينة من قبل المستخدم إلى عنقود AKS جديد أو موجود باستخدام --assign-identity العلم الذي يحتوي على az aks create أمر OR az aks update .

    # Create a new AKS cluster with the user-assigned managed identity
    az aks create \
        --resource-group <resource-group-name> \
        --name <cluster-name> \
        --location <location> \
        --node-vm-size <vm-size> --node-count <node-count> \
        --assign-identity $IDENTITY_ID \
        --generate-ssh-keys
    
    # Update an existing AKS cluster to use the user-assigned managed identity
    az aks update \
        --resource-group <resource-group-name> \
        --name <cluster-name> \
        --location <location> \
        --node-vm-size <vm-size> \
        --node-count <node-count> \
        --enable-managed-identity \
        --assign-identity $IDENTITY_ID         
    

قيود استخدام مجموعات حجز السعة مع مجموعات عقد AKS

لا يمكنك تحديث مجموعة عقد موجودة بمجموعة حجز السعة. بدلا من ذلك، تحتاج إلى إنشاء مجموعة عقد جديدة مع العلم --crg-id لربطها بمجموعة حجز السعة. يمكنك أيضا ربط مجموعة حجز سعة موجودة بمجموعة عقد النظام أثناء إنشاء العنقود.

احصل على هوية مجموعة حجز السعة الحالية

  • احصل على معرف مجموعة حجز السعة الحالية باستخدام az capacity reservation group show الأمر واضبطه على متغير بيئي.

    CRG_ID=$(az capacity reservation group show --capacity-reservation-group <crg-name> --resource-group <resource-group-name> --query id -o tsv)
    

إقران مجموعة حجز سعة موجودة بتجمع عقدة

  • ربط مجموعة حجز سعة موجودة مع مجموعة عقد باستخدام az aks nodepool add الأمر مع --crg-id العلم. يفترض المثال التالي أن لديك CRG يسمى "myCRG".

    az aks nodepool add --resource-group <resource-group-name> --cluster-name <cluster-name> --name <node-pool-name> --crg-id $CRG_ID
    

إقران مجموعة حجز سعة موجودة بتجمع عقدة نظام

لربط مجموعة حجز سعة موجودة بمجموعة عقد نظام، تحتاج إلى تعيين الهوية المدارة المعينة من قبل المستخدم مع الدور Contributor إلى العنقود أثناء إنشاء العنقود. يمكنك بعد ذلك استخدام العلم --crg-id لربط مجموعة حجز السعة بمجموعة عقد النظام.

  • أنشئ عنقود AKS جديد مع الهوية المدارة المعينة من قبل المستخدم وربطها بمجموعة حجز السعة باستخدام علامات --assign-identity و --crg-id مع az aks create الأمر.

    az aks create \
        --resource-group <resource-group-name> \
        --name <cluster-name> \
        --location <location> \
        --node-vm-size <vm-size> --node-count <node-count> \
        --assign-identity $IDENTITY_ID \
        --crg-id $CRG_ID \
        --generate-ssh-keys
    

الخطوات التالية: إدارة تجمعات العقد في AKS

لمعرفة المزيد حول إدارة مجموعات العقد في AKS، راجع إدارة تجمعات العقد في Azure Kubernetes Service (AKS).