Upgrade des Hubclustertyps für Azure Kubernetes Fleet Manager-Ressourcen
In diesem Artikel erfahren Sie, wie Sie eine Azure Kubernetes Fleet Manager -Ressource (Kubernetes Fleet) ohne Hubcluster auf eine Kubernetes Fleet-Ressource, die über einen Hubcluster verfügt, aktualisieren. Bei der Erstellung einer Kubernetes Fleet-Ressource ohne Hubcluster wird kein zentraler Azure Kubernetes Service (AKS)-Cluster für die Kubernetes Fleet-Ressource erstellt. Bei der Erstellung einer Kubernetes Fleet-Ressource mit einem Hubcluster wird ein zentraler und verwalteter AKS-Cluster erstellt, um Szenarien wie Workload-Orchestrierung und Layer-4-Lastenausgleich zu ermöglichen.
Weitere Informationen finden Sie unter Auswählen einer Azure Kubernetes Fleet Manager-Option.
Voraussetzungen und Einschränkungen
Wenn Sie kein Azure-Abonnement haben, erstellen Sie ein kostenloses Azure-Konto, bevor Sie beginnen.
- Installieren Sie die Azure-Befehlszeilenschnittstelle, oder upgraden Sie sie auf die neueste Version.
- Ein Azure-Konto mit einem aktiven Abonnement. Sie können kostenlos ein Konto erstellen.
- Sie müssen über eine vorhandene Kubernetes Fleet-Ressource ohne Hubcluster verfügen. Die Schritte in diesem Artikel zeigen, wie Sie eine Kubernetes Fleet-Ressource ohne Hubcluster erstellen. Wenn Sie bereits über eine solche Ressource verfügen, können Sie die anfängliche Einrichtung überspringen und mit dem Upgrade des Hubclustertyps für die Kubernetes Fleet-Ressource beginnen.
- Dieser Artikel enthält auch Schritte zum Beitritt zu Mitgliedsclustern. Wenn Sie die Schritte nachvollziehen möchten, benötigen Sie mindestens einen AKS-Cluster.
Wichtig
Kubernetes Fleet-Ressourcen ohne Hubcluster können auf eine Kubernetes Fleet-Ressource mit einem Hubcluster aktualisiert werden. Eine Kubernetes Fleet-Ressource, die bereits über einen Hubcluster verfügt, kann jedoch nicht zu einer Kubernetes Fleet-Ressource ohne Hubcluster herabgestuft werden. Alle der Kubernetes Fleet-Ressource mit einem Hubcluster zugeordneten Konfigurationsoptionen und -einstellungen sind unveränderlich und können nach der Erstellung oder dem Upgrade nicht mehr geändert werden. Das Upgrade von einer Kubernetes Fleet-Ressource ohne Hubcluster zu einer Ressource mit einem Hubcluster kann nur über die Azure CLI erfolgen. Derzeit gibt es keine entsprechende Option im Azure-Portal.
Erste Einrichtung
Erstellen Sie zunächst eine Ressourcengruppe und eine Kubernetes Fleet-Ressource ohne Hubcluster, und verknüpfen Sie diese als Mitglied mit Ihrem vorhandenen AKS-Cluster. Sie müssen den Befehl az fleet member create
für jeden einzelnen Mitgliedscluster wiederholen, den Sie der Fleet-Ressource zuordnen möchten.
RG=myResourceGroup
LOCATION=eastus
FLEET=myKubernetesFleet
FLEET_MEMBER=<name-identifying-member-cluster>
SUBSCRIPTION_ID=<your-subscription-id>
CLUSTER=<your-aks-cluster-name>
# Create resource group
az group create -n $RG -l $LOCATION
# Create a hubless fleet resource
az fleet create -g $RG -n $FLEET
# Join member cluster to hubless fleet resource
az fleet member create --name $FLEET_MEMBER --fleet-name $FLEET --resource-group $RG --member-cluster-id /subscriptions/$SUBSCRIPTION_ID/resourceGroups/$RG/providers/Microsoft.ContainerService/managedClusters/$CLUSTER
Upgrade des Hubclustertyps für die Kubernetes Fleet-Ressource
Um den Hubclustertyp für die Kubernetes Fleet-Ressource zu aktualisieren, verwenden Sie den Befehl az fleet create
mit gesetztem --enable-hub
-Flag. Achten Sie darauf, alle anderen relevanten Konfigurationsoptionen anzugeben, da die Fleet-Ressource nach Abschluss dieses Vorgangs unveränderlich wird.
# Upgrade the Kubernetes fleet resource without a hub cluster to one with a hub cluster
az fleet create --name $FLEET --resource-group $RG --enable-hub
Überprüfen des Upgrades
Überprüfen Sie nach dem Ausführen des Befehls az fleet create
zum Aktualisieren der Fleet-Ressource, ob das Upgrade erfolgreich war, indem Sie die Ausgabe durchsehen. Der Wert von provisioningState
sollte Succeeded
lauten, und das Feld hubProfile
sollte vorhanden sein. Sehen Sie sich zum Beispiel folgende Ausgabe an:
{
...
"hubProfile": {
"agentProfile": {
"subnetId": null,
"vmSize": null
},
"apiServerAccessProfile": {
"enablePrivateCluster": false,
"enableVnetIntegration": false,
"subnetId": null
},
"dnsPrefix": "contoso-user-xxxx-xxxxxxx",
"fqdn": "contoso-user-flth-xxxxxx-xxxxxxxx.hcp.eastus.azmk8s.io",
"kubernetesVersion": "1.28.5",
"portalFqdn": "contoso-user-flth-xxxxxxx-xxxxxxxx.portal.hcp.eastus.azmk8s.io"
},
"provisioningState": "Succeeded"
...
}
Erneutes Verknüpfen von Mitgliedsclustern
Um die Mitgliedscluster erneut mit der frisch aktualisierten Fleet-Ressource zu verknüpfen, verwenden Sie den Befehl az fleet member reconcile
für jeden einzelnen Mitgliedscluster.
az fleet member reconcile -g $RG -f $FLEET -n $FLEET_MEMBER
Hinweis
Alle AKS-Cluster, die Sie zum ersten Mal mit der Fleet-Ressource verknüpfen, nachdem das Upgrade stattgefunden hat, müssen nicht mithilfe von az fleet member reconcile
abgestimmt werden.
Überprüfen, ob Mitgliedscluster erfolgreich verknüpft worden sind
Zeigen Sie für jeden Mitgliedscluster, den Sie erneut mit der neu aktualisierten Fleet-Ressource verknüpfen, die Ausgabe an, und überprüfen Sie, ob provisioningState
nun Succeeded
lautet. Zum Beispiel:
{
...
"provisioningState": "Succeeded"
...
}
Überprüfen der Funktionalität
Sie benötigen Zugriff auf die Kubernetes-API des Hubclusters. Wenn Sie keinen Zugriff haben, lesen Sie Zugreifen auf die Kubernetes-API des Fleet-Hubclusters.
Um zu überprüfen, ob Ihre neu aktualisierte Kubernetes Fleet-Ressource ordnungsgemäß funktioniert und dass die Mitgliedscluster erfolgreich verknüpft worden sind, vergewissern Sie sich, dass Sie mithilfe des Befehls kubectl get memberclusters
auf den API-Server des Hubclusters zugreifen können.
War der Vorgang erfolgreich, sollte Ihre Ausgabe in etwa dem folgenden Beispiel entsprechen:
NAME JOINED AGE
aks-member-1 True 2m
aks-member-2 True 2m
aks-member-3 True 2m
Bereinigen von Ressourcen
Sobald Sie damit fertig sind, können Sie die Fleet-Ressource und zugehörige Ressourcen entfernen, indem Sie die Ressourcengruppe löschen. Beachten Sie, dass Ihre AKS-Cluster mit diesem Vorgang nicht entfernt werden, wenn sie sich in einer anderen Ressourcengruppe befinden.
az group delete -n $RG
Nächste Schritte
Nachdem Ihre Kubernetes Fleet-Ressource auf eine Ressource mit Hubcluster aktualisiert wurde, können Sie die Features nutzen, die zuvor für Sie nicht verfügbar waren. Siehe hierzu z.B.:
Azure Kubernetes Service