Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Administratoren können die Reihenfolge der Updates für flottenverwaltete Cluster steuern, indem sie eine Reihe von Phasen und Gruppen definieren. Sie können konfigurieren, wann Genehmigungen und Pausen innerhalb dieser Phasen und Gruppen auftreten sollen. Die gesamte Konfiguration kann als Updatestrategie gespeichert werden, die unabhängig von Updateausführungen oder automatischen Upgrades verwaltet werden kann, sodass Strategien nach Bedarf wiederverwendet werden können.
In diesem Artikel wird beschrieben, wie Sie Updatestrategien mithilfe von Gruppen und Stufen definieren.
Voraussetzungen
Lesen Sie die konzeptionelle Übersicht über Flottenupdates, die eine Erläuterung von Updateausführungen, Phasen, Gruppen und Strategien enthält, auf die in diesem Handbuch verwiesen wird.
Sie müssen eine Flottenressource mit einem oder mehreren Mitgliedsclustern haben. Falls nicht, folgen Sie dem Schnellstart, um eine Flottenressource 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> export CLUSTERID=<aks-cluster-resource-id> export STRATEGY=<strategy-name>Wenn Sie den Anweisungen der Azure CLI in diesem Artikel folgen, benötigen Sie Azure CLI, Version 2.70.0 oder höher, installiert. Informationen zum Ausführen einer Installation oder eines Upgrades finden Sie unter Installieren der Azure-Befehlszeilenschnittstelle.
Sie benötigen auch die
fleetAzure CLI-Erweiterung Version 1.6.0 oder höher, die Sie installieren können, indem Sie den folgenden Befehl ausführen:az extension add --name fleetFühren Sie den Befehl
az extension updateaus, um auf die neueste Version der veröffentlichten Erweiterung zu aktualisieren:az extension update --name fleet
Auswählen von Clustern für Ihre Strategie
Es gibt zwei Möglichkeiten, um auszuwählen, welche Cluster in jeder Phase und Gruppe Ihrer Updatestrategie enthalten sind, um die Updatesequenz zu steuern:
-
Mitgliedsbezeichnungen (empfohlen):Weisen Sie jedem Flottenmitglied Bezeichnungen zu und verwenden
memberSelectorSie diese Bezeichnungen, um Mitglieder auszuwählen. Jedes Mitglied kann mehrere Labels haben. - Aktualisieren von Gruppen: Weisen Sie jedem Flottenmitglied eine Updategruppe zu, und definieren Sie dann Gruppen in Ihrer Strategie, die diesen Gruppennamen entsprechen. Jedes Mitglied kann nur zu einer Gruppe gehören.
Erstellt eine Updatestrategie mithilfe von Mitgliedsauswahlen (Vorschau)
Mitgliedsbezeichnungen sind der empfohlene Ansatz zur Auswahl von Clustern in Ihren Updatestrategien, da sie mehr Flexibilität bieten. Konzeptionelle Details finden Sie unter "Gruppencluster mit Mitgliedsbezeichnungen".
Important
Azure Kubernetes Fleet Manager-Vorschaufunktionen sind auf Self-Service-, Opt-In-Basis verfügbar. Vorschauversionen werden „im Istzustand“ und „wie verfügbar“ bereitgestellt und sind von den Service Level Agreements und der eingeschränkten Garantie ausgeschlossen. Vorschauversionen von Azure Kubernetes Fleet Manager sind auf Best-Effort-Basis teilweise durch den Kundensupport abgedeckt. Daher sind diese Funktionen nicht für die Verwendung in der Produktion vorgesehen.
Etiketten auf Mitglieds-Clustern anwenden
Bezeichnungen anwenden, wenn Mitglieds-Cluster dem Netzwerk hinzugefügt werden.
Wenden Sie Bezeichnungen auf Ihre Flottenmitglieder mithilfe des az fleet member create Befehls an. Im folgenden Beispiel werden zwei Labels auf den Mitglieds-Cluster angewendet: env=staging und tier=frontend.
az fleet member create \
--resource-group $GROUP \
--fleet-name $FLEET \
--name member1 \
--member-cluster-id $CLUSTERID \
--labels "env=staging tier=frontend"
Anwenden von Etiketten auf ein bestehendes Flottenmitglied
Anwenden von Bezeichnungen auf Ihre Flottenmitglieder mithilfe des az fleet member update Befehls
az fleet member update \
--resource-group $GROUP \
--fleet-name $FLEET \
--name member1 \
--labels "env=staging tier=frontend"
Erstellen einer Updatestrategie
Eine Updatestrategie besteht aus einer oder mehreren Phasen, in denen eine Phase eine oder mehrere Updategruppen enthalten kann.
Erstellen Sie eine JSON-Datei, um die Phasen und Gruppen für die Updateausführung zu definieren. Phasen werden sequenziell in der Reihenfolge ausgeführt, in der sie in der JSON-Datei angezeigt werden. Gruppen laufen in jeder Phase parallel ab. Die folgende Beispieldatei (example-labels-strategy.json) definiert eine Strategie mit zwei Stufen,
memberSelectordie zum Auswählen von Clustern anhand ihrer Bezeichnungen verwendet wird und optionalemaxConcurrencyEinstellungen enthält:- Die
stagingPhase verwendet eine StufenebenememberSelector, um alle Cluster mit der Bezeichnungenv=stagingauszuwählen und eine implizite Gruppe zu erstellen. - Die
production-Phase verwendet ein Stufen-memberSelector, um alle Cluster mit dem Labelenv=productionvorzufiltern, und definiert dann zwei Gruppen, von denen jede ihren eigenenmemberSelectorhat, um Cluster nach demtier-Label auszuwählen.
Wenn
memberSelectorfür eine Gruppe festgelegt wird, wird das Feld der Gruppenamenur als Anzeigebezeichner für Statusberichterstattung und Protokollierung verwendet und nicht mehr für die Aktualisierung der gruppenbasierten Auswahl von Flottenmitgliedern verwendet.{ "stages": [ { "name": "staging", "memberSelector": { "byLabel": "env=staging" }, "maxConcurrency": "1", "afterStageWaitInSeconds": 600 }, { "name": "production", "memberSelector": { "byLabel": "env=production" }, "maxConcurrency": "4", "groups": [ { "name": "frontend", "memberSelector": { "byLabel": "tier=frontend" }, "maxConcurrency": "3" }, { "name": "backend", "memberSelector": { "byLabel": "tier=backend" }, "maxConcurrency": "3" } ] } ] }- Die
Hinweis
Das maxConcurrency Feld ist optional und steuert, wie viele Cluster gleichzeitig auf Stufe oder Gruppenebene aktualisiert werden können. Verwenden Sie einen größeren Wert, um Cluster in der gesamten Flotte schneller zu aktualisieren, oder einen kleineren Wert für einen kontrollierteren Rollout, der den Explosionsradius begrenzt, falls Probleme auftreten.
Wenn eine Phase memberSelector ohne Gruppen verwendet wird (wie staging), bilden alle übereinstimmenden Mitglieder eine einzelne implizite Gruppe und die Phase steuert die Parallelität direkt mit maxConcurrency. Wenn Gruppen definiert sind (z production. B.), fungiert die Stufenebene maxConcurrency als allgemeine Obergrenze für alle Gruppen.
In diesem Beispiel legt die Phase stagingmaxConcurrency auf "1" fest, sodass Staging-Cluster nacheinander aktualisiert werden. In der production Phase sind bis zu "4" Cluster gleichzeitig zulässig, wobei die frontend und backend Gruppen jeweils auf "3" beschränkt sind.
Werte können eine feste ganze Zahl (z "3". B. ) oder ein Prozentsatz (z. B "50%". ) sein. Wenn diese Angabe weggelassen wird, wendet das System Standardwerte an. Ausführliche Informationen zur Auflösung dieser Werte und deren Obergrenzen finden Sie unter "Maximale Parallelität (Vorschau)".
Erstellen Sie eine neue Updatestrategie mithilfe des Befehls
az fleet updatestrategy create, wobei das--stagesFlag auf den Namen Ihrer JSON-Datei festgelegt ist.az fleet updatestrategy create \ --resource-group $GROUP \ --fleet-name $FLEET \ --name $STRATEGY \ --stages example-labels-strategy.json
Erstellen einer Updatestrategie mithilfe von Updategruppen
Cluster können auch in Updatestrategien ausgewählt werden, indem sie einer einzelnen Updategruppe zugewiesen werden. Sie können eine Updatestrategie definieren, die diese Updategruppen Stufen zuweist. Innerhalb einer Updatephase werden Updates parallel auf jede Updategruppe angewendet. Innerhalb einer Updategruppe werden Mitgliedercluster sequenziell aktualisiert.
Hinweis
Ein Flottenmitglied kann nur Teil einer Updategruppe sein, aber einer Updategruppe können mehrere Flottenmitglieder zugewiesen sein. Eine Aktualisierungsgruppe selbst ist kein separater Ressourcentyp. Updategruppen sind nur Zeichenfolgen, die Verweise von den Flottenmitgliedern darstellen. Wenn also alle Flottenmitglieder mit Verweisen auf eine gemeinsame Updategruppe gelöscht werden, ist diese spezifische Updategruppe nicht mehr vorhanden.
Zuweisen von Clustern zum Aktualisieren von Gruppen
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 EinstellungenMitgliedscluster>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 aus.
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 die Option Mitgliedscluster aus.
Wählen Sie die Cluster aus, den/die Sie einer Updategruppe zuweisen möchten, und wählen Sie dann Updategruppe zuweisen aus.
Geben Sie den Namen der Updategruppe ein, der Sie den Cluster zuweisen möchten, und wählen Sie dann Zuweisen aus.
Erstellen einer Updatestrategie
Eine Updatestrategie besteht aus einer oder mehreren Phasen, in denen eine Phase eine oder mehrere Updategruppen enthalten kann.
Navigieren Sie im Azure-Portal zu Ihrer Azure Kubernetes Fleet Manager-Ressource.
Wählen Sie im Dienstmenü unter EinstellungenMulticlusterupdate>Strategien und dann Erstellen aus.
Geben Sie einen Namen für den Server ein.
Wenn Sie die Seite zum ersten Mal anzeigen, wird ein Erklärungsdiagramm zur Updatestrategie angezeigt, das ihnen dabei helfen kann, zu visualisieren, wie Strategien funktionieren.
Wählen Sie Phase erstellen aus, und geben Sie Folgendes ein:
- Der Phasenname - die Stufe benennen - muss für alle Phasennamen in der Strategie eindeutig sein.
- (Optional) Phasengenehmigungen – Wählen Sie diese Option aus, wenn Sie vor dem Start dieser Phase oder nach Abschluss einer Genehmigung auf eine Genehmigung warten möchten. Weitere Informationen finden Sie unter Hinzufügen von Genehmigungen zum Aktualisieren von Gruppen und Phasen.
- (Optional) Nach der Phase anhalten: Wählen Sie diese Option aus, wenn Sie eine Pause definieren möchten, bevor Sie zur nächsten Phase wechseln.
- (Optional) Pausedauer – Wählen Sie eine vordefinierte Dauer aus, oder geben Sie einen benutzerdefinierten Wert in Sekunden ein.
Weisen Sie der Phase eine oder mehrere Aktualisierungsgruppe zu, und wählen Sie dann Erstellen aus.
Hinweis
Die maximale Anzahl von Updategruppen in jeder Updatephase beträgt 50.
Nächste Schritte
Sie können eine Updatestrategie als Teil eines manuellen Updatelaufs oder eines Profils für automatische Upgrades verwenden. Siehe:
- Anleitung: Aktualisieren Sie mehrere Cluster mithilfe von Azure Kubernetes Fleet Manager-Updateausführungen.
- Vorgehensweise: Hinzufügen von Genehmigungen zu Azure Kubernetes Fleet Manager Update-Strategien.
- Anleitung: Aktualisieren Sie automatisch mehrere Cluster mithilfe von Azure Kubernetes Fleet Manager.
- Häufig gestellte Fragen zu Multi-Cluster-Updates