Durchführen eines Upgrades für einen Azure Kubernetes Service-Cluster (AKS)
Gilt für: Azure Stack HCI, Version 23H2
Im Rahmen der Verwaltung des Anwendungs- und Clusterlebenszyklus sollten Sie ein Upgrade auf die neueste verfügbare Version von Kubernetes durchführen. Ein Upgrade umfasst entweder eine Umstellung auf eine neuere Version von Kubernetes, das Anwenden von Betriebssystemversionsupdates (Patchen) oder beides. AKS Arc unterstützt das Upgrade (oder Patchen) von Knoten in einem Workloadcluster mit den neuesten Betriebssystem- und Laufzeitupdates.
Alle Upgrades werden fortlaufend ausgeführt, um eine unterbrechungsfreie Verfügbarkeit von Workloads zu gewährleisten. Wenn ein neuer Kubernetes-Workerknoten mit einem neueren Build in den Cluster integriert wird, werden die Ressourcen vom alten Knoten auf den neuen Knoten verschoben. Anschließend wird der alte Knoten außer Betrieb genommen und aus dem Cluster entfernt.
Voraussetzungen
Wenn Sie die Azure CLI verwenden, ist für diesen Artikel die Azure CLI-Version 2.34.1 oder höher erforderlich. Führen Sie az --version
aus, um die Version zu ermitteln. Informationen zum Installieren oder Aktualisieren der CLI finden Sie unter Installieren der Azure CLI.
Suchen nach verfügbaren Upgrades
Überprüfen Sie mithilfe des folgenden Befehls, welche Kubernetes-Releases für Ihren Cluster verfügbar sind:
az aksarc get-upgrades --resource-group myResourceGroup --name myAKSCluster
Die folgende Beispielausgabe zeigt die aktuelle Version 1.24.11 und listet die verfügbaren Versionen unter auf upgrades
:
{
"agentPoolProfiles": [
{
"kubernetesVersion": "1.24.11",
"upgrades": [
{
"kubernetesVersion": "1.25.7"
}
]
}
],
"controlPlaneProfile": {
"kubernetesVersion": "1.24.11",
"name": "aksarc-testupgrade",
"osType": "Linux",
"upgrades": [
{
"kubernetesVersion": "1.25.7"
}
]
},
...
"provisioningState": "Succeeded",
...
}
Aktualisieren der Kubernetes-Version
Wenn Sie ein Upgrade für einen unterstützten AKS-Cluster durchführen, können Sie Kubernetes-Nebenversionen nicht überspringen. Sie müssen alle Upgrades nacheinander nach der Hauptversionsnummer ausführen. Beispielsweise sind Upgrades von 1.24.x auf 1.25.x oder 1.25.x auf 1.26.x zulässig. 1.24.x bis 1.26.x ist nicht zulässig.
Hinweis
Wenn kein Patch angegeben ist, führt der Cluster automatisch ein Upgrade auf den neuesten GA-Patch der angegebenen Nebenversion durch. Die Einstellung --kubernetes-version
auf 1.25 führt beispielsweise dazu, dass der Cluster auf 1.25.7 aktualisiert wird.
Sie können ihr Cluster mit dem folgenden Befehl aktualisieren:
az aksarc upgrade \
--resource-group myResourceGroup \
--name myAKSCluster \
--kubernetes-version <KUBERNETES_VERSION>
Vergewissern Sie sich, dass das Upgrade erfolgreich war, indem Sie den show
Folgenden Befehl verwenden:
az aksarc show --resource-group myResourceGroup --name myAKSCluster
Die folgende Beispielausgabe zeigt, dass der Cluster jetzt 1.25.7 ausführt:
{
"extendedLocation": {
"name":
"/subscriptions/<subscription>/resourcegroups/<resource group>/providers/microsoft.extendedlocation/customlocations/<custom
location>",
"type": "CustomLocation"
},
"id": "/subscriptions/<subscription>/resourceGroups/<resource group>/providers/Microsoft.Kubernetes/connectedClusters/aksarc-testupgrade/providers/Microsoft.HybridContainerService/provisionedClusterInstances/default",
"name": "default",
"properties": {
"agentPoolProfiles": [
{
}
],
"controlPlane": {
"availabilityZones": null,
"controlPlaneEndpoint": {
"hostIp": null,
"port": null
},
"count": 1,
"linuxProfile": {
"ssh": {
"publicKeys": null
}
},
"name": null,
"nodeImageVersion": null,
"osSku": "CBLMariner",
"osType": "Linux",
"vmSize": "Standard_A4_v2"
},
"kubernetesVersion": "1.25.7",
...
"provisioningState": "Succeeded",
...
},
....
"type": "microsoft.hybridcontainerservice/provisionedclusterinstances"
}
Wichtig
Wenn Sie ein Upgrade von einer nicht unterstützten Version durchführen, die zwei oder mehr Nebenversionen überspringt, kann das Upgrade die ordnungsgemäße Funktionalität nicht garantieren. Wenn Ihre Version deutlich veraltet ist, empfiehlt es sich, stattdessen Ihren Cluster neu zu erstellen.
Während eines Upgradevorgangs zeigen sowohl die provisioningState
Indikatoren als currentState
auch eine Aktualisierungsmeldung an, um den laufenden Prozess widerzuspiegeln. Wenn für den Vorgang jedoch ein Zeitüberschreitung auftritt, provisioningState
wird Fehler angezeigt, während currentState
das Upgrade weiterhin angezeigt wird, während das Upgrade im Hintergrund fortgesetzt wird. Es ist keine Aktion erforderlich. das Upgrade wird fortgesetzt, bis es abgeschlossen ist.
Betriebssystemversion aktualisieren
Das Aktualisieren von Workerknoten auf eine neuere Version des Knotenimages ohne Änderung der Kubernetes-Version funktioniert nur, wenn für das neue Image keine andere Kubernetes-Version erforderlich ist. Derzeit unterstützt AKS Arc keine node-image-only-Updates für alle Kubernetes-Versionen, die unterstützt werden. Wenn Sie das Knotenimage aktualisieren müssen, müssen Sie den Cluster auf die neueste Kubernetes-Version aktualisieren, um sicherzustellen, dass alle Knotenimageupdates integriert sind.
Wichtig
Wenn Sie versuchen, das node-image-only
Flag zu verwenden, erhalten Sie eine Meldung, dass dieses Feature noch nicht unterstützt wird.