التشغيل السريع: نشر الموارد من نظام مجموعة مركز Azure Kubernetes Fleet Manager (Fleet) إلى مجموعات الأعضاء

في هذا التشغيل السريع، ستتعلم كيفية نشر الموارد من نظام مجموعة مركز Azure Kubernetes Fleet Manager (أسطول) إلى مجموعات الأعضاء.

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

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

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

ClusterResourcePlacement يتم استخدام كائن API لنشر الموارد من نظام مجموعة لوحة الوصل إلى مجموعات الأعضاء. ClusterResourcePlacement يحدد كائن API الموارد المراد نشرها ونهج الموضع المراد استخدامها عند تحديد مجموعات الأعضاء. ClusterResourcePlacement يتم إنشاء كائن API في نظام مجموعة المركز ويتم استخدامه لنشر الموارد إلى مجموعات الأعضاء. يوضح هذا المثال كيفية نشر مساحة اسم إلى مجموعات الأعضاء باستخدام ClusterResourcePlacement كائن API مع نهج PickAll الموضع.

لمزيد من المعلومات، راجع نشر موارد Kubernetes من نظام مجموعة المركز إلى مجموعات الأعضاء (معاينة) ووثائق الأسطول المصدر.

  1. إنشاء مساحة اسم لوضعها على مجموعات الأعضاء باستخدام kubectl create namespace الأمر . ينشئ المثال التالي مساحة اسم باسم my-namespace:

    kubectl create namespace my-namespace
    
  2. إنشاء كائن ClusterResourcePlacement API في نظام مجموعة المركز لنشر مساحة الاسم إلى مجموعات الأعضاء ونشرها باستخدام kubectl apply -f الأمر . ينشئ المثال ClusterResourcePlacement التالي كائنا باسم crp ويستخدم my-namespace مساحة الاسم مع نهج PickAll وضع لنشر مساحة الاسم إلى كافة مجموعات الأعضاء:

    kubectl apply -f - <<EOF
    apiVersion: placement.kubernetes-fleet.io/v1beta1
    kind: ClusterResourcePlacement
    metadata:
      name: crp
    spec:
      resourceSelectors:
        - group: ""
          kind: Namespace
          version: v1          
          name: my-namespace
      policy:
        placementType: PickAll
    EOF
    
  3. تحقق من تقدم نشر المورد باستخدام kubectl get clusterresourceplacement الأمر . يتحقق المثال التالي من حالة الكائن المسمى ClusterResourcePlacementcrp:

    kubectl get clusterresourceplacement crp
    

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

    NAME   GEN   SCHEDULED   SCHEDULEDGEN   APPLIED   APPLIEDGEN   AGE
    crp    2     True        2              True      2            10s
    
  4. عرض تفاصيل crp الكائن باستخدام kubectl describe crp الأمر . يصف المثال التالي الكائن المسمى ClusterResourcePlacementcrp:

    kubectl describe clusterresourceplacement crp
    

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

    Name:         crp
    Namespace:    
    Labels:       <none>
    Annotations:  <none>
    API Version:  placement.kubernetes-fleet.io/v1beta1
    Kind:         ClusterResourcePlacement
    Metadata:
      Creation Timestamp:  2024-04-01T18:55:31Z
      Finalizers:
        kubernetes-fleet.io/crp-cleanup
        kubernetes-fleet.io/scheduler-cleanup
      Generation:        2
      Resource Version:  6949
      UID:               815b1d81-61ae-4fb1-a2b1-06794be3f986
    Spec:
      Policy:
        Placement Type:  PickAll
      Resource Selectors:
        Group:                 
        Kind:                  Namespace
        Name:                  my-namespace
        Version:               v1
      Revision History Limit:  10
      Strategy:
        Type:  RollingUpdate
    Status:
      Conditions:
        Last Transition Time:   2024-04-01T18:55:31Z
        Message:                found all the clusters needed as specified by the scheduling policy
        Observed Generation:    2
        Reason:                 SchedulingPolicyFulfilled
        Status:                 True
        Type:                   ClusterResourcePlacementScheduled
        Last Transition Time:   2024-04-01T18:55:36Z
        Message:                All 3 cluster(s) are synchronized to the latest resources on the hub cluster
        Observed Generation:    2
        Reason:                 SynchronizeSucceeded
        Status:                 True
        Type:                   ClusterResourcePlacementSynchronized
        Last Transition Time:   2024-04-01T18:55:36Z
        Message:                Successfully applied resources to 3 member clusters
        Observed Generation:    2
        Reason:                 ApplySucceeded
        Status:                 True
        Type:                   ClusterResourcePlacementApplied
      Observed Resource Index:  0
      Placement Statuses:
        Cluster Name:  membercluster1
        Conditions:
          Last Transition Time:  2024-04-01T18:55:31Z
          Message:               Successfully scheduled resources for placement in membercluster1 (affinity score: 0, topology spread score: 0): picked by scheduling policy
          Observed Generation:   2
          Reason:                ScheduleSucceeded
          Status:                True
          Type:                  ResourceScheduled
          Last Transition Time:  2024-04-01T18:55:36Z
          Message:               Successfully Synchronized work(s) for placement
          Observed Generation:   2
          Reason:                WorkSynchronizeSucceeded
          Status:                True
          Type:                  WorkSynchronized
          Last Transition Time:  2024-04-01T18:55:36Z
          Message:               Successfully applied resources
          Observed Generation:   2
          Reason:                ApplySucceeded
          Status:                True
          Type:                  ResourceApplied
        Cluster Name:            membercluster2
        Conditions:
          Last Transition Time:  2024-04-01T18:55:31Z
          Message:               Successfully scheduled resources for placement in membercluster2 (affinity score: 0, topology spread score: 0): picked by scheduling policy
          Observed Generation:   2
          Reason:                ScheduleSucceeded
          Status:                True
          Type:                  ResourceScheduled
          Last Transition Time:  2024-04-01T18:55:36Z
          Message:               Successfully Synchronized work(s) for placement
          Observed Generation:   2
          Reason:                WorkSynchronizeSucceeded
          Status:                True
          Type:                  WorkSynchronized
          Last Transition Time:  2024-04-01T18:55:36Z
          Message:               Successfully applied resources
          Observed Generation:   2
          Reason:                ApplySucceeded
          Status:                True
          Type:                  ResourceApplied
        Cluster Name:            membercluster3
        Conditions:
          Last Transition Time:  2024-04-01T18:55:31Z
          Message:               Successfully scheduled resources for placement in membercluster3 (affinity score: 0, topology spread score: 0): picked by scheduling policy
          Observed Generation:   2
          Reason:                ScheduleSucceeded
          Status:                True
          Type:                  ResourceScheduled
          Last Transition Time:  2024-04-01T18:55:36Z
          Message:               Successfully Synchronized work(s) for placement
          Observed Generation:   2
          Reason:                WorkSynchronizeSucceeded
          Status:                True
          Type:                  WorkSynchronized
          Last Transition Time:  2024-04-01T18:55:36Z
          Message:               Successfully applied resources
          Observed Generation:   2
          Reason:                ApplySucceeded
          Status:                True
          Type:                  ResourceApplied
      Selected Resources:
        Kind:     Namespace
        Name:     my-namespace
        Version:  v1
    Events:
      Type    Reason                     Age   From                                   Message
      ----    ------                     ----  ----                                   -------
      Normal  PlacementScheduleSuccess   108s  cluster-resource-placement-controller  Successfully scheduled the placement
      Normal  PlacementSyncSuccess       103s  cluster-resource-placement-controller  Successfully synchronized the placement
      Normal  PlacementRolloutCompleted  103s  cluster-resource-placement-controller  Resources have been applied to the selected clusters
    

تنظيف الموارد

إذا لم تعد ترغب في ClusterResourcePlacement استخدام الكائن، يمكنك حذفه باستخدام kubectl delete الأمر . يحذف المثال التالي الكائن المسمى ClusterResourcePlacementcrp:

kubectl delete clusterresourceplacement crp

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

لمعرفة المزيد حول نشر الموارد، راجع الموارد التالية: