Erőforrások propagálása egy Azure Kubernetes Fleet Manager-központfürtről tagfürtökre
Ez a cikk azt ismerteti, hogyan propagálhat erőforrásokat egy Azure Kubernetes Fleet Manager (Kubernetes Fleet) központfürtből tagfürtökre.
Előfeltételek
- Ha nem rendelkezik Azure-előfizetéssel, első lépésként hozzon létre egy ingyenes Azure-fiókot.
- Az erőforrás-propagálás fogalmi áttekintésében megismerheti a cikkben használt fogalmakat és terminológiát.
- Központi fürttel és tagfürtökkel rendelkező Kubernetes Fleet-erőforrásra van szüksége. Ha nem rendelkezik ilyen erőforrással, tekintse meg az Azure Kubernetes Fleet Manager-erőforrás létrehozását és a tagfürtökhöz való csatlakozást az Azure CLI használatával.
- A tagfürtöket megfelelően kell címkézni a központi fürtön, hogy megfeleljenek a kívánt kiválasztási feltételeknek. Például a címkék közé tartozik a régió, a környezet, a csapat, a rendelkezésre állási zónák, a csomópontok rendelkezésre állása vagy bármi más, amit szeretne.
- Hozzá kell férnie a központi fürt Kubernetes API-hoz. Ha nem rendelkezik hozzáféréssel, tekintse meg az Azure Kubernetes Fleet Manager-központfürt Kubernetes API-jának elérése című témakört.
Erőforrások propagálása tagfürtökre a ClusterResourcePlacement API használatával
Az ClusterResourcePlacement
API-objektum a központi fürtben jön létre, és az erőforrások tagfürtökre való propagálására szolgál. Meghatározza a propagáláshoz szükséges erőforrásokat és a tagfürtök kiválasztásakor használni kívánt elhelyezési szabályzatot. Ez a példa bemutatja, hogyan propagálhat egy névteret tagfürtökre az ClusterResourcePlacement
API-objektum elhelyezési szabályzattal való PickAll
használatával.
További információ: A Kubernetes erőforrás-elhelyezése a központi fürttől a tagfürtökig , valamint a nyílt forráskódú Kubernetes Fleet dokumentációja.
Hozzon létre egy névteret a tagfürtökre a
kubectl create namespace
parancs használatával. Az alábbi példa létrehoz egy névteret:my-namespace
kubectl create namespace my-namespace
Hozzon létre egy
ClusterResourcePlacement
API-objektumot a központi fürtben a névtér tagfürtökre való propagálásához és akubectl apply -f
parancs használatával történő üzembe helyezéséhez. A következő példában létrehoz egy elnevezettcrp
objektumot,ClusterResourcePlacement
és amy-namespace
névteret egyPickAll
elhelyezési szabályzattal használja a névtér propagálásához az összes tagfürtre:kubectl apply -f - <<EOF apiVersion: placement.kubernetes-fleet.io/v1 kind: ClusterResourcePlacement metadata: name: crp spec: resourceSelectors: - group: "" kind: Namespace version: v1 name: my-namespace policy: placementType: PickAll EOF
A parancs használatával ellenőrizze az erőforrás-propagálás előrehaladását
kubectl get clusterresourceplacement
. Az alábbi példa a nevesítettClusterResourcePlacement
crp
objektum állapotát ellenőrzi:kubectl get clusterresourceplacement crp
A kimenetnek az alábbi példához kell hasonlítania:
NAME GEN SCHEDULED SCHEDULEDGEN APPLIED APPLIEDGEN AGE crp 2 True 2 True 2 10s
A parancs használatával
kubectl describe crp
megtekintheti azcrp
objektum részleteit. Az alábbi példa a következő nevűcrp
objektumotClusterResourcePlacement
ismerteti:kubectl describe clusterresourceplacement crp
A kimenetnek az alábbi példához kell hasonlítania:
Name: crp Namespace: Labels: <none> Annotations: <none> API Version: placement.kubernetes-fleet.io/v1 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
Az erőforrások eltávolítása
Ha már nem szeretné használni az ClusterResourcePlacement
objektumot, a parancs használatával kubectl delete
törölheti azt. Az alábbi példa törli a ClusterResourcePlacement
következő nevű crp
objektumot:
kubectl delete clusterresourceplacement crp
Kapcsolódó tartalom
Az erőforrás-propagálással kapcsolatos további információkért tekintse meg a következő erőforrásokat:
Azure Kubernetes Service