Aktualisieren von Kubernetes und Knotenimages über mehrere Cluster hinweg mithilfe von Azure Kubernetes Fleet Manager
Plattformadministratoren, die eine große Anzahl von Clustern verwalten, haben oft Probleme, die Updates mehrerer Cluster (z. B. das Upgrade von Knotenbetriebssystemimages oder Kubernetes-Versionen) auf sichere und vorhersehbare Weise durchzuführen. Um diese Herausforderung zu bewältigen, ermöglicht Ihnen Azure Kubernetes Fleet Manager (Fleet) die Orchestrierung von Updates über mehrere Cluster hinweg mithilfe von Updateausführungen.
Updateausführungen bestehen aus Phasen, Gruppen und Strategien und können manuell für einmalige Updates oder automatisch für fortlaufende regelmäßige Updates unter Verwendung von Auto-Upgrade-Profilen angewendet werden. Bei allen Updateausführungen (manuell oder automatisch) werden die Wartungsfenster für Mitgliedercluster berücksichtigt.
In diesem Handbuch wird beschrieben, wie Updateausführungen konfiguriert und manuell ausgeführt werden.
Voraussetzungen
Lesen Sie die konzeptionelle Übersicht über dieses Feature mit Erläuterungen zu Updatestrategien, -ausführungen, -stages und -gruppen, auf die in dieser Anleitung verwiesen wird.
Sie müssen eine Flottenressource mit einem oder mehreren Mitgliedsclustern haben. Falls nicht, folgen Sie dem Schnellstart, um eine Fleet-Ressource zu erstellen und Azure Kubernetes Service-Cluster (AKS) als Mitglieder aufzunehmen.
Legen Sie die folgenden Umgebungsvariablen fest:
export GROUP=<resource-group> export FLEET=<fleet-name>
Wenn Sie die Azure CLI-Anweisungen in diesem Artikel befolgen, müssen Sie Azure CLI Version 2.58.0 oder höher installiert haben. Informationen zum Ausführen einer Installation oder eines Upgrades finden Sie unter Installieren der Azure-Befehlszeilenschnittstelle.
Sie benötigen außerdem die
fleet
Azure CLI-Erweiterung, die Sie mit folgendem Befehl installieren können:az extension add --name fleet
Führen Sie den Befehl
az extension update
aus, um auf die neueste Version der veröffentlichten Erweiterung zu aktualisieren:az extension update --name fleet
Erstellen von Updateausführungen
Hinweis
Update führt geplante Wartungsfenster aus, die Sie auf AKS-Clusterebene festlegen. Weitere Informationen finden Sie unter Geplante Wartung über mehrere Mitgliedscluster hinweg. In diesem Artikel wird erläutert, wie Updateausführungen Mitgliedscluster behandeln, die mit geplanten Wartungsfenstern konfiguriert wurden.
Die Updateausführung unterstützt zwei Optionen für die Clusterupgradesequenz:
- Nacheinander: Wenn Sie die Reihenfolge der Cluster-Upgrades nicht kontrollieren möchten, bietet
one-by-one
eine einfache Möglichkeit, alle Mitgliedscluster der Flotte nacheinander zu aktualisieren. - Steuerungssequenz von Clustern mithilfe von Updategruppen und Phasen: Wenn Sie die Clusterupgradesequenz steuern möchten, können Sie Membercluster in Updategruppen und Updatephasen strukturieren. Sie können diese Sequenz als Vorlage in Form von Updatestrategie speichern. Sie können Updateausführungen später mithilfe der Updatestrategien erstellen, anstatt die Sequenz jedes Mal zu definieren, wenn Sie eine Updateausführung erstellen müssen.
Alle Cluster nacheinander aktualisieren
Navigieren Sie im Azure-Portal zu Ihrer Azure Kubernetes Fleet Manager-Ressource.
Wählen Sie im Dienstmenü unter Einstellungen Multiclusterupdate>Erstellen einer Ausführung aus.
Geben Sie einen Namen für die Updateausführung ein, und wählen Sie dann Nacheinander für den Upgradetyp aus.
Wählen Sie eine der folgenden Optionen für den Upgradebereich aus:
- Kubernetes-Version für Steuerungsebene und Knotenpools
- Kubernetes-Version nur für die Steuerungsebene des Clusters
- Nur Knotenimageversion
Wählen Sie eine der folgenden Optionen für das Knotenbildaus:
- Letztes Bild: Aktualisiert jeden AKS-Cluster im Updateausführung auf das neueste Bild, das für diesen Cluster in seiner Region verfügbar ist.
- Konsistentes Bild: Da es möglich ist, dass ein Updateausführung AKS-Cluster in mehreren Regionen hat, in denen die neuesten verfügbaren Knoten-Images unterschiedlich sein können (siehe Release Rracker für weitere Informationen). Der Updatelauf wählt das letzte gemeinsame Bild für alle diese Regionen aus, um Konsistenz zu erreichen.
Klicken Sie auf Erstellen, um die Updateausführung zu erstellen.
Zuweisen von Clustern zum Aktualisieren von Gruppen und Phasen
Updategruppen und -stufen bieten mehr Kontrolle über die Reihenfolge der Updateläufe bei der Aktualisierung von Clustern. Innerhalb einer Aktualisierungsphase werden Updates parallel auf alle verschiedenen Updategruppen angewendet. Innerhalb einer Updategruppe werden Mitgliedercluster sequenziell aktualisiert.
Sie können einen Mitgliedscluster einer bestimmten Updategruppe auf zwei Arten zuweisen:
- Zuweisen zur Gruppe beim Hinzufügen eines Mitgliedsclusters zur Flotte.
- Zuweisen eines vorhandenen Flottenmitglieds zu einer Updategruppe.
Zuweisen zur Gruppe beim Hinzufügen eines Mitgliedsclusters zur Flotte
Navigieren Sie im Azure-Portal zu Ihrer Azure Kubernetes Fleet Manager-Ressource.
Wählen Sie im Dienstmenü unter Einstellungen Mitgliedscluster>Hinzufügen aus.
Wählen Sie den Cluster aus, den Sie hinzufügen möchten, und wählen Sie dann Weiter: Überprüfen + Hinzufügen.
Geben Sie den Namen der Updategruppe ein, der Sie den Cluster zuweisen möchten, und wählen Sie dann Hinzufügen aus.
Zuweisen eines vorhandenen Flottenmitglieds zu einer Updategruppe
Navigieren Sie im Azure-Portal zu Ihrer Azure Kubernetes Fleet Manager-Ressource.
Wählen Sie im Dienstmenü unter Einstellungen Mitgliedscluster aus.
Wählen Sie den Cluster oder die Cluster aus, den/die Sie einer Updategruppe zuweisen möchten, und wählen Sie dann Updategruppe zuweisen
Geben Sie den Namen der Updategruppe ein, der Sie den Cluster zuweisen möchten, und wählen Sie dann Zuweisen aus.
Hinweis
Ein Flottenmitglied kann nur Teil einer Updategruppe sein, aber eine Updategruppe kann mehrere Flottenmitglieder zugewiesen haben. Eine Updategruppe selbst ist kein eigener Ressourcentyp. Updategruppen sind nur Zeichenfolgen, die Verweise von den Flottenmitgliedern darstellen. Wenn also alle Flottenmitglieder, die auf eine gemeinsame Aktualisierungsgruppe verweisen, gelöscht werden, wird auch diese spezielle Updategruppe nicht mehr existieren.
Definieren Sie einen Updatealuf und Stufen
Sie können eine Updateausführung mithilfe von Updatestages definieren, um die Anwendung von Updates auf verschiedene Updategruppen sequenziell zu ordnen. Beispielsweise kann eine erste Updatephase Mitgliedscluster der Testumgebung aktualisieren, und eine zweite Updatephase würde dann Mitgliedscluster der Produktionsumgebung aktualisieren. Sie können auch eine Wartezeit zwischen den Updatephasen angeben.
Navigieren Sie im Azure-Portal zu Ihrer Azure Kubernetes Fleet Manager-Ressource.
Wählen Sie im Dienstmenü unter Einstellungen Multiclusterupdate>Erstellen einer Ausführung aus.
Geben Sie einen Namen für die Updateausführung ein, und wählen Sie dann Phasen für den Updatesequenztyp aus.
Wählen Sie Phase erstellen aus, und geben Sie dann einen Namen für die Phase und die Wartezeit zwischen den Phasen ein.
Wählen Sie die Updategruppen, die Sie in diese Phase einbeziehen wollen. Sie können auch die Reihenfolge der Updategruppen angeben, wenn Sie sie in einer bestimmten Reihenfolge aktualisieren möchten. Wählen Sie Erstellen, wenn Sie fertig sind.
Wählen Sie eine der folgenden Optionen für den Upgradebereich aus:
- Kubernetes-Version für Steuerungsebene und Knotenpools
- Kubernetes-Version nur für die Steuerungsebene des Clusters
- Nur Knotenimageversion
Wählen Sie eine der folgenden Optionen für das Knotenbildaus:
- Letztes Bild: Aktualisiert jeden AKS-Cluster im Updateausführung auf das neueste Bild, das für diesen Cluster in seiner Region verfügbar ist.
- Konsistentes Bild: Da es möglich ist, dass ein Updateausführung AKS-Cluster in mehreren Regionen hat, in denen die neuesten verfügbaren Knoten-Images unterschiedlich sein können (siehe Release Rracker für weitere Informationen). Der Updatelauf wählt das letzte gemeinsame Bild für alle diese Regionen aus, um Konsistenz zu erreichen.
Klicken Sie auf Erstellen, um die Updateausführung zu erstellen.
Das Angeben von Phasen und deren Reihenfolge bei jeder Erstellung einer Updateausführung kann sich wiederholen und ist mühsam. Updatestrategien vereinfachen diesen Prozess, indem Sie Vorlagen für Updateausführungen speichern können. Weitere Informationen finden Sie unter Erstellen eines Updatelaufs mithilfe von Updatestrategien.
Wählen Sie im Menü Multiclusterupdate die Updateausführung aus, und wählen Sie dann Start aus.
Erstellen eines Updatelaufs mithilfe von Updatestrategien
Zum Erstellen einer Aktualisierungsausführung müssen Sie die Phasen, Gruppen, die Reihenfolge jedes Mal angeben. Updatestrategien vereinfachen diesen Prozess, indem Sie Vorlagen für Updateausführungen speichern können.
Hinweis
Es ist möglich, mehrere Updateläufe mit eindeutigen Namen aus derselben Updatestrategie zu erstellen.
Sie können eine Updatestrategie mit einer der folgenden Methoden erstellen:
- Speichern einer Updatestrategie beim Erstellen einer Updateausführung mithilfe des Azure-Portals.
- Erstellen Sie eine neue Updatestrategie, und verweisen Sie dann beim Erstellen eines Updates darauf.
Speichern Sie eine Updatestrategie beim Erstellen eines Updatelaufs
Erstellen Sie eine neue Updatestrategie, und verweisen Sie dann beim Erstellen eines Updates darauf
Verwalten einer Updateausführung
In den folgenden Abschnitten wird erläutert, wie Sie eine Updateausführung mithilfe des Azure-Portals und der Azure CLI verwalten.
Auf der Seite Multiclusterupdates der Flottenressource können Sie Starten einer Updateausführung, die entweder in Nicht gestartet oder Status Fehlgeschlagen:
Auf der Seite Update mehrerer Cluster der Flottenressource können Sie eine Updateausführung, die sich derzeit im Zustand Wird ausgeführt befindet, über die Schaltfläche Beenden beenden:
Innerhalb einer Updateausführung im Zustand Nicht gestartet, Fehlerhaft oder Wird ausgeführt können Sie eine beliebige Phase auswählen und das Upgrade überspringen:
Analog dazu können Sie auch das Upgrade auf Updategruppen- oder Mitgliedsclusterebene überspringen.
Weitere Informationen finden Sie unter Status der Updateausführung für Ausführungen/Phasen/Gruppen.
Nächste Schritte
Erfahren Sie mehr über Azure Kubernetes Fleet Manager.
Azure Kubernetes Service