Auf dieser Seite werden die Strategien für Knotenupgrades beschrieben, die Sie mit Ihren GKE-Clustern (Google Kubernetes Engine) verwenden können:
In GKE-Standardclustern können Sie für jeden Knoten eine der folgenden Upgradestrategien für Knotenpools konfigurieren:
- Surge-Upgrades: Knoten werden in einem rollierenden Zeitfenster aktualisiert. Sie können steuern, wie viele Knoten gleichzeitig aktualisiert werden können und wie störende Upgrades für die Arbeitslasten gelten.
- Blau/Grün-Upgrades: Vorhandene Knoten bleiben für ein Rollback verfügbar, während die Arbeitslasten in der neuen Knotenkonfiguration validiert werden.
In Autopilot-Clustern verwendet GKE Surge-Upgrades. Weitere Informationen finden Sie auf der Seite „Autopilot-Clusterupgrades“ im Abschnitt Surge-Upgrades.
Durch Auswahl einer Upgradestrategie für den Knotenpool Ihres Standardclusters können Sie den Prozess mit dem richtigen Verhältnis von Geschwindigkeit, Arbeitslastunterbrechung, Risikominderung und Kostenoptimierung auswählen. Weitere Informationen zur Upgradestrategie für Knoten finden Sie unter Surge-Upgrades auswählen und Blau/Grün-Upgrades auswählen.
Bei beiden Strategien können Sie Upgrade-Einstellungen konfigurieren, um den Prozess basierend auf den Anforderungen Ihrer Umgebung zu optimieren. Weitere Informationen finden Sie unter Ausgewählte Upgradestrategie konfigurieren. Achten Sie darauf, dass Sie für die ausgewählte Strategie genügend Kontingent, Ressourcenverfügbarkeit oder Reservierungskapazität haben, um Ihre Knoten mit dieser Strategie zu aktualisieren. Weitere Informationen finden Sie unter Ressourcen für Knotenupgrades bereitstellen.
Surge-Upgrades
Surge-Upgrades sind die Standardupgradestrategie und eignen sich am besten für Anwendungen, die inkrementelle Änderungen verarbeiten können. Bei Surge-Upgrades werden Knoten in einer nicht definierten Reihenfolge nach und nach aktualisiert. Finden Sie das optimale Gleichgewicht zwischen Geschwindigkeit und Unterbrechung für Ihre Umgebung. Dazu legen Sie mit maxSurge
fest, wie viele neue Surge-Knoten erstellt werden können, und mit maxUnavailable
, wie viele vorhandene Knoten gleichzeitig unterbrochen werden können.
Surge-Upgrades arbeiten auch mit dem Cluster Autoscaler zusammen, um Änderungen an Knoten zu verhindern, die aktualisiert werden.
Surge-Upgrades für Ihre Umgebung auswählen
Wenn die Kostenoptimierung für Sie wichtig ist und Ihre Arbeitslast das Herunterfahren in weniger als 60 Minuten tolerieren kann, empfehlen wir die Verwendung von Surge-Upgrades für Ihre Knotenpools.
Surge-Upgrades sind optimal für die folgenden Szenarien:
- wenn Sie die Geschwindigkeit von Upgrades optimieren möchten.
- wenn Arbeitslasten toleranter gegenüber Unterbrechungen sind, bei denen eine ordnungsgemäße Beendigung bis zu 60 Minuten akzeptabel ist.
- wenn Sie die Kosten durch die Minimierung der Erstellung neuer Knoten kontrollieren möchten.
Wenn GKE Surge-Upgrades verwendet
Wenn diese Option aktiviert ist, verwendet GKE Surge-Upgrades, wenn die folgenden Arten von Änderungen auftreten:
- Versionsänderungen (Upgrades)
- Knoten vertikal skalieren, indem Sie die Maschinenattribute des Knotens ändern, einschließlich Maschinentyp, Laufwerkstyp und Laufwerksgröße
- Änderungen der Image-Typen
- IP-Rotation
- Rotation von Anmeldedaten
- Netzwerkrichtlinien erstellen
- Image-Streaming aktivieren
- Konfigurationsaktualisierungen der Netzwerkleistung
- gVNIC aktivieren
- Änderungen an der Knotensystemkonfiguration
- Vertrauliche Knoten
Andere Änderungen, einschließlich der Aktualisierungen von Knotenlabels und Markierungen vorhandener Knotenpools, verwenden keine Surge-Upgrades, da sie die Knoten nicht neu erstellen müssen.
Überblick über Surge-Upgrades-Einstellungen
Mit den Einstellungen für Surge-Upgrades können Sie das richtige Gleichgewicht zwischen Geschwindigkeit und Unterbrechung für Ihren Knotenpool während der Clusterwartung festlegen. Sie können die Anzahl der Knoten ändern, die GKE gleichzeitig aktualisiert. Ändern Sie dazu die Parameter für Surge-Upgrades in einem Standard-Knotenpool.
Das Verhalten von Surge-Upgrades wird durch die Einstellungen maxSurge
und maxUnavailable
bestimmt. Diese legen fest, wie viele Knoten gleichzeitig in einem rollierenden Zeitfenster mit den beschriebenen Schritten aktualisiert werden.
maxSurge
: GKE erstellt einen neuen Notfallknoten, bevor ein vorhandener entfernt wird
Legen Sie maxSurge
fest, um die maximale Anzahl zusätzlicher Surge-Knoten pro Zone auszuwählen, die dem Knotenpool während eines Upgrades hinzugefügt werden können. Dadurch wird die Wahrscheinlichkeit erhöht, dass Arbeitslasten, die auf dem vorhandenen Knoten ausgeführt werden, sofort zu einem neuen Knoten migrieren. Der Standardwert ist 1. Wenn GKE einen Knoten aktualisiert, führt es die folgenden Schritte aus:
- Einen neuen Knoten bereitstellen.
- Warten Sie, bis der neue Knoten bereit ist.
- Sperren Sie den vorhandenen Knoten.
- Leeren Sie den vorhandenen Knoten und berücksichtigen Sie dabei die Einstellungen für PodDisruptionBudget und GracefulTerminationPeriod für bis zu einer Stunde.
- Löschen Sie den vorhandenen Knoten.
Damit GKE Surge-Knoten erstellen kann, muss Ihr Projekt über die Ressourcen verfügen, um vorübergehend zusätzliche Knoten zu erstellen. Wenn Sie keine zusätzliche Kapazität haben, beginnt GKE erst mit dem Upgrade eines Knotens, wenn die Ressourcen verfügbar sind. Weitere Informationen finden Sie unter Ressourcen für Surge-Upgrades.
maxUnavailable
: GKE macht einen vorhandenen Knoten für die Neuerstellung nicht verfügbar
Legen Sie maxUnavailable
fest, um die maximale Anzahl von Knoten pro Zone auszuwählen, die während eines Upgrades gleichzeitig nicht verfügbar sein können. Die Standardeinstellung ist null.
Arbeitslasten, die auf dem vorhandenen Knoten ausgeführt werden, müssen möglicherweise warten, bis das Upgrade des Knotens abgeschlossen ist, wenn keine anderen Knoten verfügbar sind. Wenn GKE einen Knoten aktualisiert, geschieht Folgendes:
- Sperren Sie den vorhandenen Knoten.
- Leeren Sie den vorhandenen Knoten und berücksichtigen Sie dabei die Einstellungen für PodDisruptionBudget und GracefulTerminationPeriod für bis zu einer Stunde.
- Erstellen Sie den vorhandenen Knoten mit der neuen Konfiguration neu.
- Warten Sie, bis der vorhandene Knoten bereit ist.
- Heben Sie die Begrenzung für den vorhandenen, aktualisierten Knoten auf.
Wenn GKE den vorhandenen Knoten neu erstellt, gibt GKE die Kapazität des Knotens vorübergehend frei, wenn die Kapazität nicht aus einer Reservierung stammt. D. h., wenn ist die Kapazität begrenzt, laufen Sie Gefahr, die Kapazität zu verlieren. Wenn Ihre Umgebung also ressourcenbeschränkt ist, verwenden Sie diese Einstellung nur, wenn Sie reservierte Knoten verwenden. Weitere Informationen finden Sie unter Upgrade in einer ressourcenknappen Umgebung.
Beispiel für die Verwendung der Einstellungen für maxSurge
und maxUnavailable
Ein GKE-Cluster hat beispielsweise einen Knotenpool mit einer Zone mit 5 Knoten und die folgende Konfiguration für das Surge-Upgrade: maxSurge=2;maxUnavailable=1
.
Während eines Surge-Upgrades mit diesem Knotenpool erstellt GKE in einem rollierenden Fenster zwei aktualisierte Knoten und unterbricht jeweils höchstens einen vorhandenen Knoten. GKE beendet nach der Bereitstellung der aktualisierten Knoten höchstens drei Knoten. Während des Upgrades enthält der Knotenpool zwischen vier und sieben Knoten.
Hinweise zu den Einstellungen für das häufige Aktualisieren
Beachten Sie die folgenden Informationen, bevor Sie die Einstellungen für Surge-Upgrades konfigurieren:
- Durch Surge-Upgrades erstellte Knoten unterliegen Ihren Google Cloud Ressourcenkontingenten, der Ressourcenverfügbarkeit und der Reservierungskapazität für Knotenpools mit spezifischer Reservierungsaffinität. Wenn Ihre Umgebung ressourcenbeschränkt ist, lesen Sie den Hilfeartikel Upgrade in einer ressourcenbeschränkten Umgebung durchführen.
- Die Anzahl der Knoten, die GKE gleichzeitig aktualisiert, ist die Summe von
maxSurge
undmaxUnavailable
. Dabei ist die maximale Anzahl gleichzeitig aktualisierter Knoten auf 20 beschränkt. Surge-Upgrades arbeiten auch mit dem Cluster Autoscaler zusammen, um Änderungen an Knoten zu verhindern, die aktualisiert werden. - GKE führt Upgrades für Knotenpools mit mehreren Zonen nacheinander für jede Zone aus. Surge-Upgrade-Parameter gelten nur für die Anzahl der Knoten in der Zone. Die maximale Anzahl von Knoten, die parallel aktualisiert werden können, ist nicht höher als die Summe von
maxSurge
+maxUnavailable
oder die Anzahl der Knoten in der Zone. - Wenn Ihr Knotenpool Spot-VMs verwendet, erstellt GKE Surge-Knoten mit Spot-VMs, wartet jedoch nicht, bis Spot-VMs bereit sind, bevor vorhandene Knoten gesperrt und schnell entladen werden. Weitere Informationen finden Sie unter Standardknotenpools mit Spot-VMs aktualisieren.
Surge-Upgrade-Einstellungen für Geschwindigkeit und Unterbrechung optimieren
In der folgenden Tabelle werden vier verschiedene Upgrade-Profile als Beispiele beschrieben, die Ihnen das Verständnis verschiedener Konfigurationen erleichtern:
Beschreibung | Konfiguration | Typisches Anwendungsbeispiel |
---|---|---|
Ausgeglichen (Standardeinstellung), langsamer, aber am wenigsten störend | maxSurge=1 maxUnavailable=0 |
Fast alle Arbeitslasten |
Schnell, keine Surge-Ressourcen, am störendsten | maxSurge=0 maxUnavailable=20 |
Große Knotenpools, nachdem Jobs vollständig ausgeführt wurden |
Schnell, die meisten Surge-Ressourcen und weniger störend | maxSurge=20 maxUnavailable=0 |
Große Knotenpools |
Am langsamsten, störend und keine Surge-Ressourcen | maxSurge=0 maxUnavailable=1 |
Ressourcenbeschränkter Knotenpool mit Reservierung |
Ausgeglichen (Standardeinstellung)
Die einfachste Möglichkeit, die Vorteile von Surge-Upgrades zu nutzen, ist die Verwendung der Standardkonfiguration maxSurge=1;maxUnavailable=0.
. Bei dieser Konfiguration werden Upgrades langsam ausgeführt, wobei nur jeweils ein Surge-Knoten hinzugefügt wird, d. h. es wird immer nur ein Knoten auf einmal aktualisiert. Pods können sofort auf dem neuen, zusätzlichen Knoten neu gestartet werden. Für diese Konfiguration müssen die Ressourcen nur vorübergehend einen neuen Knoten erstellen.
Schnell und keine Surge-Ressourcen
Wenn Sie einen großen Knotenpool haben und Ihre Arbeitslast nicht störungsanfällig ist (z. B. ein vollständig ausgeführter Batchjob), verwenden Sie die folgende Konfiguration, um die Geschwindigkeit ohne zusätzliche Ressourcen zu maximieren: maxSurge=0;maxUnavailable=20
. Bei dieser Konfiguration werden keine zusätzlichen Surge-Knoten erstellt und es können 20 Knoten gleichzeitig aktualisiert werden.
Schnell und weniger störend
Wenn Ihre Arbeitslast störungsanfällig ist und Sie bereits PodDisruptionBudgets (PDB) eingerichtet haben und nicht externalTrafficPolicy: Local
verwenden (da es nicht zusammen mit parallelen Knotendrains funktioniert), können Sie die Geschwindigkeit des Upgrades mithilfe von maxSurge=20;maxUnavailable=0
erhöhen. Bei dieser Konfiguration werden 20 Knoten gleichzeitig aktualisiert, während das PDB die Anzahl der Pods begrenzt, die zu einer bestimmten Zeit per Drain beendet werden können.
Obwohl die Konfigurationen von PDBs variieren können, kann beim Erstellen eines PDB mit maxUnavailable=1
für eine oder mehrere im Knotenpool ausgeführte Arbeitslasten jeweils nur ein Pod dieser Arbeitslasten entfernt werden, wodurch die Parallelität des gesamten Upgrades begrenzt wird. Für diese Konfiguration müssen die Ressourcen vorübergehend 20 neue Knoten erstellen.
Langsam, aber keine Surge-Ressourcen
Wenn Sie keine zusätzlichen Ressourcen verwenden können, können Sie mit maxSurge=0;maxUnavailable=1
jeweils einen Knoten neu erstellen.
Surge-Upgrades in Bearbeitung steuern
Bei Surge-Upgrades können Sie während eines laufenden Upgrades mithilfe von Befehlen eine gewisse Kontrolle darüber ausüben. Wenn Sie den Upgradeprozess genauer steuern möchten, empfehlen wir die Verwendung von Blau/Grün-Upgrades.
Surge-Upgrade abbrechen (pausieren)
Sie können ein laufendes Surge-Upgrade jederzeit während des Upgrades abbrechen. Durch das Abbrechen wird das Upgrade angehalten und GKE wird nicht mehr auf das Upgrade neuer Knoten aktualisiert. Das Upgrade der bereits aktualisierten Knoten wird jedoch nicht automatisch rückgängig gemacht. Wenn Sie ein Upgrade abbrechen, können Sie es entweder fortsetzen oder ein Rollback durchführen.
Wenn Sie ein Upgrade abbrechen, führt GKE mit jedem Knoten Folgendes aus:
- Knoten, die das Upgrade gestartet haben, schließen es auch ab.
- Knoten, die das Upgrade nicht gestartet haben, werden nicht aktualisiert.
- Knoten, die das Upgrade bereits erfolgreich abgeschlossen haben, sind davon nicht betroffen und werden nicht zurückgesetzt.
Dies bedeutet, dass der Knotenpool möglicherweise in einem Zustand landen wird, in dem Knoten zwei verschiedene Versionen ausführen. Wenn für den Knotenpool automatische Upgrades aktiviert sind, kann der Knotenpool noch einmal für ein automatisches Upgrade eingeplant werden, wodurch die verbleibenden Knoten im Knotenpool, auf denen die ältere Version läuft, aktualisiert würden.
Surge-Upgrade fortsetzen
Wenn das Upgrade eines Knotenpools abgebrochen und teilweise aktualisiert wurde, können Sie das Upgrade fortsetzen, um das Upgrade für den Knotenpool abzuschließen. Dadurch werden alle verbleibenden Knoten aktualisiert, die im ursprünglichen Vorgang nicht aktualisiert wurden. Upgrade des Knotenpools fortsetzen.
Rollback für Surge-Upgrade durchführen
Wenn ein Knotenpool teilweise aktualisiert wird, können Sie ein Rollback des Knotenpools durchführen, um ihn auf seinen vorherigen Zustand zurückzusetzen. Sie können für Knotenpools kein Rollback mehr durchführen, nachdem sie erfolgreich aktualisiert worden sind. Knoten, die kein Upgrade gestartet haben, sind davon nicht betroffen. Rollback für Knotenpool-Upgrade durchführen.
Wenn Sie einen Knotenpool auf die vorherige Version zurücksetzen möchten, nachdem das Upgrade bereits abgeschlossen ist, finden Sie weitere Informationen unter Knotenpools downgraden.
Blau/Grün-Upgrades
Blau/Grün-Upgrades sind eine alternative Upgradestrategie zur standardmäßigen Surge-Upgradestrategie. Bei Blau/Grün-Upgrades erstellt GKE zuerst einen neuen Satz von Knotenressourcen („grüne“ Knoten) mit der neuen Knotenkonfiguration, bevor Arbeitslasten auf den ursprünglichen Ressourcen („blaue“ Knoten) entfernt werden. GKE behält die „blauen“ Ressourcen bei Bedarf für das Rollback von Arbeitslasten, bis die Wartezeit abgelaufen ist. Sie können das Tempo der Upgrades und der Wartezeit an die Anforderungen Ihrer Umgebung anpassen.
Mit dieser Strategie haben Sie mehr Kontrolle über den Upgradeprozess. Bei Bedarf können Sie für ein laufendes Upgrade ein Rollback durchführen, da die ursprüngliche Umgebung während des Upgrades beibehalten wird. Diese Upgradestrategie ist jedoch auch ressourcenintensiver. Da die ursprüngliche Umgebung repliziert wird, verwendet der Knotenpool während des Upgrades die doppelte Anzahl von Ressourcen.
Blau/Grün-Upgrades für Ihre Umgebung auswählen
Wenn Sie hochverfügbare Produktions-Arbeitslasten haben, die Sie schnell zurücksetzen können müssen, falls die Arbeitslast das Upgrade nicht verträgt, und wenn ein vorübergehender Kostenanstieg akzeptabel ist, empfehlen wir, für Ihre Node-Pools Blau/Grün-Upgrades zu wählen.
Blau/Grün-Upgrades sind optimal für die folgenden Szenarien:
- wenn Sie einen schrittweisen Rollout wünschen, bei dem die Risikominderung im Vordergrund steht und eine zuverlässige Beendigung nach mehr als 60 Minuten erforderlich ist.
- wenn Ihre Arbeitslasten weniger tolerant gegenüber Störungen sind.
- wenn eine vorübergehende Kostenerhöhung aufgrund einer höheren Ressourcennutzung akzeptabel ist.
Wenn GKE Blau/Grün-Upgrades verwendet
Für GKE-Knoten gibt es verschiedene Konfigurationsänderungen, bei denen die Knoten neu erstellt werden müssen. Wenn diese Option aktiviert ist, verwendet GKE Blau/Grün-Upgrades, wenn die folgenden Arten von Änderungen auftreten:
- Versionsänderungen (Upgrades)
- Knoten vertikal skalieren, indem Sie die Maschinenattribute des Knotens ändern, einschließlich Maschinentyp, Laufwerkstyp und Laufwerksgröße
- Änderungen der Image-Typen
- Speicherpools in einem Knotenpool hinzufügen oder ersetzen
Surge-Upgrades werden für alle anderen Features verwendet, bei denen die Knoten neu erstellt werden müssen. Weitere Informationen finden Sie unter Surge-Upgrades verwenden.
Phasen von Blau/Grün-Upgrades
Mit Blau/Grün-Upgrades können Sie den Prozess anpassen und steuern, wenn sie:
- Upgrade-Konfigurationsparameter verwenden.
- Befehle verwenden, um die Schritte abzubrechen, fortzusetzen, Rollback durchzuführen oder fertigzustellen.
In diesem Abschnitt werden die Phasen des Upgradeprozesses erläutert. Sie können Upgradeeinstellungen verwenden, um die Funktionsweise der Phasen zu optimieren und Befehle zur Steuerung des Upgradeprozesses zu verwenden.
Phase 1: Grünen Pool erstellen
In dieser Phase wird für jede Zone im Zielpool ein neuer Satz verwalteter Instanzgruppen (MIGs) (auch als „grüner“ Pool bezeichnet) mit der neuen Knotenkonfiguration (neue Version oder Image-Typ) erstellt.
Das Kontingent wird überprüft, bevor neue grüne Ressourcen bereitgestellt werden.
In dieser Phase wird die vertikale oder horizontale Skalierung der ursprünglichen MIGs (auch als „blauer“ Pool bezeichnet) von Cluster Autoscaler beendet. Der grüne Pool kann nur in dieser Phase vertikal skaliert werden.
In dieser Phase können Sie das Upgrade bei Bedarf abbrechen. Wenn Sie ein Blau/Grün-Upgrade abbrechen, wird das Upgrade in seiner aktuellen Phase pausiert. Wenn Sie es abgebrochen haben, können Sie es entweder fortsetzen oder ein Rollback durchführen. In dieser Phase wird das Rollback den grünen Pool löschen.
Phase 2: Blauer Pool für Cordon
In dieser Phase werden alle ursprünglichen Knoten im blauen Pool (vorhandene MIGs) gesperrt (als nicht planbar gekennzeichnet). Vorhandene Arbeitslasten werden weiterhin ausgeführt, aber auf den vorhandenen Knoten werden keine neuen Arbeitslasten geplant.
In dieser Phase können Sie das Upgrade bei Bedarf abbrechen. Wenn Sie ein Blau/Grün-Upgrade abbrechen, wird das Upgrade in seiner aktuellen Phase pausiert. Wenn Sie es abgebrochen haben, können Sie es entweder fortsetzen oder ein Rollback durchführen. In dieser Phase wird durch das Rollback der blaue Pools entsperrt und der grüne Pool gelöscht.
Phase 3: Blauen Pool per Drain beenden
In dieser Phase werden die ursprünglichen Knoten im blauen Pool (vorhandene MIGs) in Batches per Drain beendet. Wenn Kubernetes einen Knoten entfernt, werden Bereinigungsanfragen an alle Pods gesendet, die auf dem Knoten ausgeführt werden. Die Pods werden neu geplant. Pods, bei denen während der Beendigung per Drain PodDisruptionBudget -Verstöße oder lange terminationGracePeriodSeconds auftreten, werden in der Phase Blauen Pool löschen gelöscht, wenn der Knoten gelöscht wird.
Sie können BATCH_SOAK_DURATION
und NODE_POOL_SOAK_DURATION
verwenden, die hier und im nächsten Abschnitt beschrieben werden, um den Zeitraum vor dem Löschen von Pods zu verlängern.
Die Größe der Batches lässt sich mit einer der folgenden Einstellungen steuern:
BATCH_NODE_COUNT
: Die absolute Anzahl von Knoten, die in einem Batch per Drain beendet werden sollen.BATCH_PERCENT
ist der Prozentsatz der Knoten, die in einem Batch per Drain beendet werden sollen, ausgedrückt als Dezimalzahl zwischen 0 und 1. GKE rundet auf den nächsten Prozentsatz der Knoten ab, bis zu einem Mindestwert von 1 Knoten, wenn der Prozentsatz keine ganze Anzahl von Knoten ist.
Wenn eine dieser Einstellungen auf null gesetzt ist, überspringt GKE diese Phase und fährt mit der Phase Knotenpool testen fort.
Außerdem können Sie mit BATCH_SOAK_DURATION
steuern, wie lange jeder Batchausgleich ausgeführt wird. Diese Dauer wird in Sekunden definiert, wobei der Standardwert null Sekunden ist.
In dieser Phase können Sie das Upgrade bei Bedarf immer noch abbrechen. Wenn Sie ein Blau/Grün-Upgrade abbrechen, wird das Upgrade in seiner aktuellen Phase pausiert. Wenn Sie es abgebrochen haben, können Sie es entweder fortsetzen oder ein Rollback durchführen. In dieser Phase wird durch das Rollback das Entfernen des blauen Pools per Drain gestoppt, und der blaue Pool wird freigegeben. Arbeitslasten können dann im blauen Pool neu geplant werden (nicht garantiert) und der grüne Pool wird gelöscht.
Phase 4: Knotenpool testen
In dieser Phase können Sie den Status der Arbeitslast prüfen, nachdem die blauen Poolknoten entfernt wurden.
Die Betriebszeit wird mit NODE_POOL_SOAK_DURATION
in Sekunden festgelegt. Standardmäßig ist sie auf eine Stunde (3.600 Sekunden) eingestellt. Wenn die Gesamtdauer des Betriebs sieben Tage (604.800 Sekunden) erreicht, beginnt die Phase „Blauen Pool löschen“ sofort.
Die Gesamtdauer des Betriebs ist die Summe von NODE_POOL_SOAK_DURATION
, plus BATCH_SOAK_DURATION
multipliziert mit der Anzahl der Batches, die entweder durch BATCH_NODE_COUNT
oder BATCH_PERCENT
bestimmt wird.
In dieser Phase können Sie das Upgrade abschließen und die verbleibende Betriebszeit überspringen. Schließen Sie dazu das Upgrade ab. Dadurch wird sofort mit dem Entfernen der blauen Poolknoten begonnen.
Sie können das Upgrade bei Bedarf immer noch abbrechen. Wenn Sie ein Blau/Grün-Upgrade abbrechen, wird das Upgrade in seiner aktuellen Phase pausiert. Wenn Sie es abgebrochen haben, können Sie es entweder fortsetzen oder ein Rollback durchführen.
In dieser Phase kann Cluster Autoscaler wie gewohnt den grünen Pool hoch- oder herunterskalieren.
Phase 5: Blauen Pool löschen
Nach Ablauf der Wartezeit werden die blauen Poolknoten aus dem Zielpool entfernt. Diese Phase kann nicht pausiert werden. Außerdem wird in dieser Phase keine Bereinigung durchgeführt. Stattdessen wird versucht, die Pods zu löschen. Im Gegensatz zur Bereinigung werden beim Löschen keine PDBs berücksichtigt und das Löschen der Pods wird erzwungen. Beim Löschen werden die terminationGracePeriodSeconds
eines Pods auf maximal 60 Minuten begrenzt. Nachdem dieser letzte Versuch unternommen wurde, die verbleibenden Pods zu löschen, werden die blauen Poolknoten aus dem Knotenpool gelöscht.
Nach Abschluss dieser Phase enthält Ihr Knotenpool nur neue Knoten mit der aktualisierten Konfiguration (Version oder Image-Typ).
Funktionsweise von Cluster Autoscaler mit Blau/Grün-Upgrades
In den Phasen eines Blau/Grün-Upgrades wird der ursprüngliche „blaue“ Pool nicht hoch- oder herunterskaliert. Wenn der neue „grüne“ Pool erstellt wird, kann er nur bis zur Phase des Betriebsknotenpools hochskaliert werden, in der er hoch- oder herunterskaliert werden kann. Wenn für ein Upgrade ein Rollback durchgeführt wird, kann der ursprüngliche „blaue“ Pool während dieses Vorgangs hochskaliert werden, wenn zusätzliche Kapazität benötigt wird.
Laufendes Blau/Grün-Upgrade steuern
Bei Blau/Grün-Upgrades können Sie, während ein Upgrade läuft, Befehle verwenden, um es zu kontrollieren. So erhalten Sie eine hohe Kontrolle über den Prozess, wenn Sie beispielsweise feststellen, dass Ihre Arbeitslasten auf die alte Knotenkonfiguration zurückgesetzt werden müssen.
Blau/Grün-Upgrade abbrechen (pausieren)
Wenn Sie ein Blau/Grün-Upgrade abbrechen, halten Sie das Upgrade in seiner aktuellen Phase an. Dieser Befehl kann in allen Phasen außer der Phase Blauen Pool löschen verwendet werden. Bei einem Abbruch wird der Knotenpool in einem Zwischenstatus pausiert, der auf der Phase basiert, in der die Anfrage gestellt wurde.
Wenn ein Upgrade abgebrochen wird, haben Sie zwei Möglichkeiten: fortfahren oder Rollback durchführen.
Blau/Grün-Upgrade fortsetzen
Wenn Sie festgestellt haben, dass das Upgrade in Ordnung ist, können Sie es fortsetzen.
Wenn Sie das Upgrade fortsetzen, wird der Upgradeprozess in der Zwischenphase fortgesetzt, in der er angehalten wurde. Informationen zum Fortsetzen eines Knotenpool-Upgrades finden Sie unter Knotenpool-Upgrade fortsetzen.
Rollback eines Blau/Grün-Upgrade
Wenn Sie festgestellt haben, dass das Upgrade nicht fortgesetzt werden soll, und Sie den Knotenpool auf den ursprünglichen Zustand zurücksetzen möchten, können Sie ein Rollback durchführen. Informationen zum Rollback eines Knotenpool-Upgrades finden Sie unter Rollback für Knotenpool-Upgrade durchführen.
Mit dem Rollback-Workflow wird der Prozess umgekehrt, um den ursprünglichen Zustand des Knotenpools wiederherzustellen. Der blaue Pool wird nicht mehr gesperrt, damit Arbeitslasten neu geplant werden können. Während dieses Vorgangs kann Cluster Autoscaler den blauen Pool nach Bedarf hochskalieren. Der grüne Pool wird per Drain beendet und gelöscht.
Wenn Sie einen Knotenpool auf die vorherige Version zurücksetzen möchten, nachdem das Upgrade bereits abgeschlossen ist, finden Sie weitere Informationen unter Knotenpools downgraden.
Blau/Grün-Upgrade durchführen
Während der Phase Betriebstest können Sie ein Upgrade durchführen, wenn Sie feststellen, dass die Arbeitslast keine weitere Validierung der neuen Knotenkonfiguration erfordert und die alten Knoten entfernt werden können. Nach Abschluss eines Upgrades wird die Phase Betriebstest übersprungen und die Phase Blauen Pool löschen ausgeführt.
Weitere Informationen zur Verwendung des Befehls complete
finden Sie unter Blau/Grün-Knotenpool-Upgrade durchführen.