التشغيل السريع: إنشاء مورد Azure Kubernetes Fleet Manager والانضمام إلى مجموعات الأعضاء باستخدام Azure CLI

ابدأ مع Azure Kubernetes Fleet Manager (Fleet) باستخدام Azure CLI لإنشاء مورد أسطول وتوصيل مجموعات Azure Kubernetes Service (AKS) لاحقا كمجموعات أعضاء.

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

إذا لم يكن لديك اشتراك في Azure، فأنشئ حساب Azure مجاني قبل أن تبدأ.

  • اقرأ النظرة العامة المفاهيمية لهذه الميزة، والتي توفر شرحا للأساطيل ومجموعات الأعضاء المشار إليها في هذه الوثيقة.

  • اقرأ النظرة العامة المفاهيمية على أنواع الأسطول، والتي توفر مقارنة بين خيارات تكوين الأسطول المختلفة.

  • حساب Azure مع اشتراك نشط. أنشئ حساباً مجاناً.

  • هوية (مستخدم أو كيان خدمة) يمكن استخدامها لتسجيل الدخول إلى Azure CLI. يجب أن يكون لهذه الهوية الأذونات التالية على أنواع موارد الأسطول وAKS لإكمال الخطوات المذكورة في هذا التشغيل السريع:

    • Microsoft.ContainerService/fleets/read
    • Microsoft.ContainerService/fleets/write
    • Microsoft.ContainerService/fleets/members/read
    • Microsoft.ContainerService/fleets/members/write
    • Microsoft.ContainerService/fleetMemberships/read
    • Microsoft.ContainerService/fleetMemberships/write
    • Microsoft.ContainerService/managedClusters/read
    • Microsoft.ContainerService/managedClusters/write
  • تثبيت أو ترقية Azure CLI إلى إصدار أو أحدث 2.53.1 .

  • قم بتثبيت ملحق أسطول Azure CLI باستخدام az extension add الأمر وتأكد من أن الإصدار الخاص بك هو على الأقل 1.0.0.

    az extension add --name fleet
    
  • عيّن متغيرات البيئة التالية:

    export SUBSCRIPTION_ID=<subscription_id>
    export GROUP=<your_resource_group_name>
    export FLEET=<your_fleet_name>
    
  • تثبيت kubectl الأمر واستخدامه az aks install-cli kubelogin.

    az aks install-cli
    
  • يجب أن تكون مجموعات AKS التي تريد ضمها كمجموعات أعضاء إلى مورد Fleet ضمن الإصدارات المدعومة من AKS. تعرف على المزيد حول نهج دعم إصدار AKS هنا.

إنشاء مجموعة موارد

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

تعيين اشتراك Azure وإنشاء مجموعة موارد باستخدام az group create الأمر .

az account set -s ${SUBSCRIPTION_ID}
az group create --name ${GROUP} --location eastus

يشبه مثال الإخراج التالي الإنشاء الناجح لمجموعة الموارد:

{
  "id": "/subscriptions/<SUBSCRIPTION_ID>/resourceGroups/fleet-demo",
  "location": "eastus",
  "managedBy": null,
  "name": "fleet-demo",
  "properties": {
    "provisioningState": "Succeeded"
  },
  "tags": null,
  "type": "Microsoft.Resources/resourceGroups"
}

إنشاء مورد أسطول

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

هام

بمجرد إنشاء مورد Kubernetes Fleet، من الممكن ترقية مورد Kubernetes Fleet دون نظام مجموعة مركز إلى واحد مع نظام مجموعة مركز. بالنسبة لموارد Kubernetes Fleet مع نظام مجموعة مركز، بمجرد تحديد خاص أو عام، لا يمكن تغييره.

إذا كنت ترغب في استخدام Fleet فقط لتنسيق التحديث، وهي التجربة الافتراضية عند إنشاء مورد أسطول جديد عبر Azure CLI، يمكنك إنشاء مورد Fleet دون نظام مجموعة المركز باستخدام az fleet create الأمر .

az fleet create --resource-group ${GROUP} --name ${FLEET} --location eastus

يجب أن يبدو الإخراج مشابها لإخراج المثال التالي:

{
  "etag": "...",
  "hubProfile": null,
  "id": "/subscriptions/<SUBSCRIPTION_ID>/resourceGroups/fleet-demo/providers/Microsoft.ContainerService/fleets/fleet-demo",
  "identity": {
    "principalId": null,
    "tenantId": null,
    "type": "None",
    "userAssignedIdentities": null
  },
  "location": "eastus",
  "name": "fleet-demo",
  "provisioningState": "Succeeded",
  "resourceGroup": "fleet-demo",
  "systemData": {
    "createdAt": "2023-11-03T17:15:19.610149+00:00",
    "createdBy": "<user>",
    "createdByType": "User",
    "lastModifiedAt": "2023-11-03T17:15:19.610149+00:00",
    "lastModifiedBy": "<user>",
    "lastModifiedByType": "User"
  },
  "tags": null,
  "type": "Microsoft.ContainerService/fleets"
}

الانضمام إلى مجموعات الأعضاء

يدعم Fleet حاليا الانضمام إلى مجموعات AKS الحالية كمجموعات أعضاء.

  1. تعيين متغيرات البيئة التالية لمجموعات الأعضاء:

    export MEMBER_NAME_1=aks-member-1
    export MEMBER_CLUSTER_ID_1=/subscriptions/${SUBSCRIPTION_ID}/resourceGroups/${GROUP}/providers/Microsoft.ContainerService/managedClusters/${MEMBER_NAME_1}
    
  2. انضم إلى مجموعات AKS الموجودة لديك إلى مورد Fleet باستخدام az fleet member create الأمر .

    # Join the first member cluster
    az fleet member create --resource-group ${GROUP} --fleet-name ${FLEET} --name ${MEMBER_NAME_1} --member-cluster-id ${MEMBER_CLUSTER_ID_1}
    

    يجب أن يبدو الإخراج مشابها لإخراج المثال التالي:

    {
      "clusterResourceId": "/subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<GROUP>/providers/Microsoft.ContainerService/managedClusters/aks-member-x",
      "etag": "...",
      "id": "/subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<GROUP>/providers/Microsoft.ContainerService/fleets/<FLEET>/members/aks-member-x",
      "name": "aks-member-1",
      "provisioningState": "Succeeded",
      "resourceGroup": "<GROUP>",
      "systemData": {
        "createdAt": "2022-10-04T19:04:56.455813+00:00",
        "createdBy": "<user>",
        "createdByType": "User",
        "lastModifiedAt": "2022-10-04T19:04:56.455813+00:00",
        "lastModifiedBy": "<user>",
        "lastModifiedByType": "User"
      },
      "type": "Microsoft.ContainerService/fleets/members"
    }
    
  3. تحقق من أن مجموعات الأعضاء انضمت بنجاح إلى مورد Fleet باستخدام az fleet member list الأمر .

    az fleet member list --resource-group ${GROUP} --fleet-name ${FLEET} -o table
    

    إذا نجحت، يجب أن يبدو الإخراج مشابها لإخراج المثال التالي:

    ClusterResourceId                                                                                                                                Name          ProvisioningState    ResourceGroup
    -----------------------------------------------------------------------------------------------------------------------------------------------  ------------  -------------------  ---------------
    /subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<GROUP>/providers/Microsoft.ContainerService/managedClusters/aks-member-1  aks-member-1  Succeeded            <GROUP>
    /subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<GROUP>/providers/Microsoft.ContainerService/managedClusters/aks-member-2  aks-member-2  Succeeded            <GROUP>
    /subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<GROUP>/providers/Microsoft.ContainerService/managedClusters/aks-member-3  aks-member-3  Succeeded            <GROUP>
    

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