التشغيل السريع: نشر الموارد من نظام مجموعة مركز Azure Kubernetes Fleet Manager (Fleet) إلى مجموعات الأعضاء
في هذا التشغيل السريع، ستتعلم كيفية نشر الموارد من نظام مجموعة مركز Azure Kubernetes Fleet Manager (أسطول) إلى مجموعات الأعضاء.
المتطلبات الأساسية
إذا لم يكن لديك اشتراك في Azure، فأنشئ حساب Azure مجاني قبل أن تبدأ.
- اقرأ نظرة عامة مفاهيمية لنشر الموارد لفهم المفاهيم والمصطلحات المستخدمة في هذا التشغيل السريع.
- حساب Azure مع اشتراك نشط. أنشئ حساباً مجاناً.
- تحتاج إلى مورد Fleet مع نظام مجموعة مركز ومجموعات أعضاء. إذا لم يكن لديك واحد، فشاهد إنشاء مورد Azure Kubernetes Fleet Manager والانضمام إلى مجموعات الأعضاء باستخدام Azure CLI.
- يجب تسمية مجموعات الأعضاء بشكل مناسب في نظام مجموعة المركز لمطابقة معايير التحديد المطلوبة. تتضمن تسميات المثال المنطقة أو البيئة أو الفريق أو مناطق التوفر أو توفر العقدة أو أي شيء آخر مطلوب.
- تحتاج إلى الوصول إلى واجهة برمجة تطبيقات Kubernetes لمجموعة المركز. إذا لم يكن لديك حق الوصول، فشاهد الوصول إلى واجهة برمجة تطبيقات Kubernetes لمورد Fleet باستخدام Azure Kubernetes Fleet Manager.
ClusterResourcePlacement
استخدام واجهة برمجة التطبيقات لنشر الموارد إلى مجموعات الأعضاء
ClusterResourcePlacement
يتم استخدام كائن API لنشر الموارد من نظام مجموعة لوحة الوصل إلى مجموعات الأعضاء. ClusterResourcePlacement
يحدد كائن API الموارد المراد نشرها ونهج الموضع المراد استخدامها عند تحديد مجموعات الأعضاء. ClusterResourcePlacement
يتم إنشاء كائن API في نظام مجموعة المركز ويتم استخدامه لنشر الموارد إلى مجموعات الأعضاء. يوضح هذا المثال كيفية نشر مساحة اسم إلى مجموعات الأعضاء باستخدام ClusterResourcePlacement
كائن API مع نهج PickAll
الموضع.
لمزيد من المعلومات، راجع نشر موارد Kubernetes من نظام مجموعة المركز إلى مجموعات الأعضاء (معاينة) ووثائق الأسطول المصدر.
إنشاء مساحة اسم لوضعها على مجموعات الأعضاء باستخدام
kubectl create namespace
الأمر . ينشئ المثال التالي مساحة اسم باسمmy-namespace
:kubectl create namespace my-namespace
إنشاء كائن
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
تحقق من تقدم نشر المورد باستخدام
kubectl get clusterresourceplacement
الأمر . يتحقق المثال التالي من حالة الكائن المسمىClusterResourcePlacement
crp
:kubectl get clusterresourceplacement crp
يجب أن يبدو الإخراج مشابها لإخراج المثال التالي:
NAME GEN SCHEDULED SCHEDULEDGEN APPLIED APPLIEDGEN AGE crp 2 True 2 True 2 10s
عرض تفاصيل
crp
الكائن باستخدامkubectl describe crp
الأمر . يصف المثال التالي الكائن المسمىClusterResourcePlacement
crp
: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
الأمر . يحذف المثال التالي الكائن المسمى ClusterResourcePlacement
crp
:
kubectl delete clusterresourceplacement crp
الخطوات التالية
لمعرفة المزيد حول نشر الموارد، راجع الموارد التالية:
Azure Kubernetes Service