Automatisches Upgrade für einen AKS-Cluster (Azure Kubernetes Service)

Im Rahmen des AKS-Clusterlebenszyklus müssen regelmäßige Upgrades auf die aktuelle Kubernetes-Version ausgeführt werden. Es ist wichtig, jeweils die aktuellen Sicherheitsversionen anzuwenden oder bei einem Upgrade die neuesten Features zu erhalten. Bevor Sie sich mit dem automatischen Upgrade befassen, sollten Sie sich mit den Grundlagen des Upgrades vertraut machen, indem Sie Durchführen eines Upgrades für einen AKS-Cluster lesen.

Hinweis

Bei jedem manuellen oder automatischen Upgradevorgang wird ein Upgrade der Imageversion des Knotens durchgeführt, sofern diese nicht bereits auf dem neuesten Stand ist. Die neueste Version ist von einer vollständigen AKS-Version abhängig und kann durch Aufrufen des AKS-Release-Trackers ermittelt werden.

Beim automatischen Upgrade wird zunächst ein Upgrade der Steuerungsebene durchgeführt. Anschließend erfolgt ein Upgrade der einzelnen Agentpools.

Gründe für ein automatisches Clusterupgrade

Das automatische Clusterupgrade bietet einen Mechanismus, der nur einmal festgelegt werden muss und damit spürbare Zeit- und Betriebskostenvorteile mit sich bringt. Durch die Aktivierung des automatischen Upgrades können Sie sicherstellen, dass Ihre Cluster auf dem neuesten Stand sind und Sie die neuesten AKS-Features oder Patches von AKS und der Upstreamversion von Kubernetes nicht verpassen.

AKS folgt einem strikten Rahmen für die Unterstützung von Versionen. Mit ordnungsgemäß ausgewählten Auto-Upgrade-Kanälen können Sie vermeiden, dass Cluster eine nicht unterstützte Version erhalten. Weitere Informationen zum AKS-Supportfenster finden Sie unter Alias-Nebenversionen.

Vergleich zwischen Kunden- und AKS-initiierten automatischen Upgrades

Mithilfe der folgenden Anleitung können Sie Details für automatische Clusterupgrades festlegen. Die Upgrades erfolgen in der von Ihnen angegebenen Häufigkeit und werden empfohlen, damit Sie immer die unterstützten Kubernetes-Versionen verwenden.

AKS initiiert automatische Upgrades auch für nicht unterstützte Cluster. Wenn ein Cluster in der Version n-3 (wobei n die letzte unterstützte GA-Nebenversion von AKS ist) im Begriff ist, auf n-4 zu fallen, aktualisiert AKS den Cluster automatisch auf n-2, um die AKS-Unterstützungsrichtlinie beizubehalten. Das automatische Upgrade eines Clusters mit Plattformunterstützung auf eine unterstützte Version ist standardmäßig aktiviert. Beendete Knotenpools werden während eines automatischen Upgradevorgangs aktualisiert. Das Upgrade wird auf Knoten angewendet, wenn der Knotenpool gestartet wird. Um Unterbrechungen zu minimieren, richten Sie Wartungsfenster ein.

Einschränkungen für automatische Clusterupgrades

Wenn Sie das automatische Clusterupgrade verwenden, können Sie nicht mehr zuerst die Steuerungsebene und dann die einzelnen Knotenpools aktualisieren. Das automatische Clusterupgrade aktualisiert die Steuerungsebene und die Knotenpools immer gemeinsam. Es kann kein alleiniges Upgrade der Steuerungsebene durchgeführt werden. Wenn Sie den Befehl az aks upgrade --control-plane-only ausführen, wird der folgende Fehler ausgelöst: NotAllAgentPoolOrchestratorVersionSpecifiedAndUnchanged: Using managed cluster api, all Agent pools' OrchestratorVersion must be all specified or all unspecified. If all specified, they must be stay unchanged or the same with control plane.

Wenn Sie den node-image-Kanal für automatische Clusterupgrades oder den NodeImage-Knoten für automatische Imageupgrades verwenden, sind unbeaufsichtigte Linux-Upgrades standardmäßig deaktiviert.

Kanal für automatisches Clusterupgrade

Automatisch abgeschlossene Upgrades sind funktionell identisch mit manuellen Upgrades. Der Zeitpunkt der Upgrades wird vom ausgewählten Kanal für automatisches Upgrade bestimmt. Wenn Sie Änderungen an der automatischen Aktualisierung vornehmen, dauert es 24 Stunden, bis die Änderungen übernommen werden. Automatische Clusterupgrades folgen demselben Prozess wie manuelle Upgrades. Weitere Informationen finden Sie unter Aktualisieren eines AKS-Clusters.

Folgende Upgradekanäle sind verfügbar:

Kanal Aktion Beispiel
none Automatische Upgrades werden deaktiviert, und die aktuelle Kubernetes-Version des Clusters wird beibehalten. Standardeinstellung, falls keine Änderung vorgenommen wird.
patch Es wird automatisch ein Upgrade des Clusters auf die neueste unterstützte Patchversion durchgeführt, sobald dieses verfügbar wird. Die Nebenversion wird beibehalten. Ein Beispiel: In einem Cluster wird derzeit Version 1.17.7 ausgeführt, und die Versionen 1.17.9, 1.18.4, 1.18.6 und 1.19.1 sind verfügbar. In diesem Fall wird ein Upgrade auf 1.17.9 ausgeführt.
stable In diesem Kanal wird automatisch ein Upgrade des Clusters auf die neueste unterstützte Patchversion der Nebenversion N-1 ausgeführt. N steht dabei für die neueste unterstützte Nebenversion. Ein Beispiel: In einem Cluster wird derzeit Version 1.17.7 ausgeführt, und die Versionen 1.17.9, 1.18.4, 1.18.6 und 1.19.1 sind verfügbar. In diesem Fall wird ein Upgrade auf 1.18.6 ausgeführt.
rapid In diesem Kanal wird automatisch ein Upgrade des Clusters auf die neueste unterstützte Patchversion der neuesten unterstützten Nebenversion ausgeführt. Falls der Cluster eine Kubernetes-Version mit Nebenversion N-2 aufweist, wobei N für die neueste unterstützte Nebenversion steht, wird zuerst ein Upgrade des Clusters auf die neueste unterstützte Patchversion der Nebenversion N-1 ausgeführt. Ein Beispiel: In einem Cluster wird derzeit Version 1.17.7 ausgeführt, und die Versionen 1.17.9, 1.18.4, 1.18.6 und 1.19.1 sind verfügbar. In diesem Fall wird zunächst ein Upgrade auf 1.18.6 und dann ein Upgrade auf 1.19.1 ausgeführt.
node-image In diesem Kanal wird automatisch ein Upgrade des Knotenimages auf die neueste verfügbare Version ausgeführt. Microsoft stellt häufig (in der Regel wöchentlich) Patches und neue Images für Imageknoten bereit. Ihre laufenden Knoten erhalten die neuen Images jedoch nur, wenn Sie ein Knotenimageupgrade durchführen. Wenn Sie den Knotenimagekanal aktivieren, werden Ihre Knotenimages automatisch aktualisiert, sobald eine neue Version verfügbar ist. Wenn Sie diesen Kanal verwenden, sind [unbeaufsichtigte Upgrades] für Linux standardmäßig deaktiviert. Knotenimageupgrades funktionieren für veraltete Patchversionen, solange die Nebenversion von Kubernetes weiterhin unterstützt wird.

Hinweis

Beachten Sie die folgenden Informationen, wenn Sie das automatische Clusterupgrade verwenden:

  • Bei den automatischen Clusterupgrades wird immer nur auf Kubernetes-Versionen mit allgemeiner Verfügbarkeit aktualisiert, niemals auf Vorschauversionen.

  • Mit AKS können Sie einen Cluster erstellen, ohne die genaue Patchversion anzugeben. Beim Erstellen eines Clusters ohne Angabe eines Patches führt der Cluster den aktuellen GA-Patch der Nebenversion aus. Weitere Informationen finden Sie unter AKS-Supportfenster.

  • Für das automatische Upgrade muss sich die Kubernetes-Version des Clusters im AKS-Supportfenster befinden, auch wenn der node-image-Kanal verwendet wird.

  • Wenn Sie die Vorschau-API 11-02-preview oder höher verwenden, wird bei Auswahl des node-image-Kanals für automatische Clusterupgrades der Kanal für das automatische Upgrade von Knotenimages automatisch auf NodeImage festgelegt.

  • Jedem Cluster kann nur ein einzelner Kanal für automatisches Upgrade zugeordnet werden. Dies liegt daran, dass der angegebene Kanal die Kubernetes-Version bestimmt, die auf dem Cluster ausgeführt wird.

Verwenden des automatischen Clusterupgrades mit einem neuen AKS-Cluster

  • Legen Sie den Kanal für das automatische Upgrade beim Erstellen eines neuen Clusters mithilfe des az aks create-Befehls und des auto-upgrade-channel-Parameters fest.

    az aks create --resource-group myResourceGroup --name myAKSCluster --auto-upgrade-channel stable --generate-ssh-keys
    

Verwenden des automatischen Clusterupgrades mit einem vorhandenen AKS-Cluster

  • Legen Sie den Kanal für das automatische Upgrade für einen vorhandenen Cluster mithilfe des az aks update-Befehls mit dem auto-upgrade-channel-Parameter fest.

    az aks update --resource-group myResourceGroup --name myAKSCluster --auto-upgrade-channel stable
    

Verwenden automatischer Upgrades mit geplanter Wartung

Wenn Sie die geplante Wartung und automatische Clusterupgrades verwenden, startet Ihr Upgrade während des von Ihnen angegebenen Wartungsfensters.

Hinweis

Um die ordnungsgemäße Funktionalität sicherzustellen, wählen Sie ein Wartungsfenster von mindestens vier Stunden.

Weitere Informationen zum Festlegen eines Wartungsfensters mit Planned Maintenance finden Sie unter Verwenden der geplanten Wartung, um Wartungsfenster für AKS-Cluster (Azure Kubernetes Service) zu planen.

Bewährte Methoden für automatische Clusterupgrades

Die folgenden bewährten Methoden helfen Ihnen, Ihren Erfolg bei der Verwendung automatischer Upgrades zu maximieren:

  • Damit sich Ihr Cluster immer in einer unterstützten Version befindet (d. h. innerhalb der N-2-Regel), wählen Sie entweder den Kanal stable oder den Kanal rapid.
  • Wenn Sie daran interessiert sind, die neuesten Patches so schnell wie möglich zu erhalten, verwenden Sie den patch-Kanal. Der node-image-Kanal eignet sich gut, wenn Sie möchten, dass Ihre Agentpools immer die neuesten Knotenimages ausführen.
  • Wenn Sie Knotenimages bei Verwendung eines anderen Clusterupgradekanals automatisch aktualisieren möchten, sollten Sie den NodeImage-Kanal für das automatische Upgrade von Knotenimages verwenden.
  • Befolgen Sie die bewährten Methoden für Betreiber.
  • Befolgen Sie die bewährten Methoden für PDB.
  • Informationen zur Problembehandlung bei Upgrades finden Sie in der Dokumentation zur Problembehandlung von AKS.

Eine ausführliche Erläuterung zu Best Practices für Upgrades und anderen Überlegungen finden Sie unter Patch- und Upgradeanleitungen für AKS.