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 Surge-Upgrades auf der Seite für Autopilot-Clusterupgrades.
Wenn Sie eine Upgradestrategie für den Knotenpool eines Standard-Clusters auswählen, 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 von Ihnen 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 am besten für Anwendungen geeignet, die inkrementelle Änderungen verarbeiten können. Surge-Upgrades verwenden eine rollierende Methode zum Upgraden von Knoten in einer nicht definierten Reihenfolge. 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 für folgende Szenarien optimal:
- 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
- Systemkonfigurationsänderungen
- 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
Verwenden Sie die Surge-Upgrade-Einstellungen, um mit den Surge-Einstellungen ein geeignetes Gleichgewicht zwischen Geschwindigkeit und Unterbrechung für Ihren Knotenpool während der Clusterwartung auszuwählen. 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, die mit den beschriebenen Schritten bestimmen, wie viele Knoten gleichzeitig in einem rollierenden Fenster aktualisiert werden.
maxSurge
: GKE erstellt einen neuen Surge-Knoten, bevor ein vorhandener Knoten 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 eins. Zum Upgrade eines Knotens führt GKE die folgenden Schritte aus:
- Stellen Sie einen neuen Knoten bereit.
- 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 die Ressourcen zum vorübergehenden Erstellen zusätzlicher Knoten haben. 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 nicht verfügbar, um ihn neu zu erstellen
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 auf ein Upgrade des vorhandenen Knotens warten, wenn keine anderen Knoten Kapazitäten haben. Zum Aktualisieren eines Knotens führt GKE die folgenden Schritte aus:
- 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.
- Trennen Sie den vorhandenen aktualisierten Knoten.
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. Wenn also die Kapazität begrenzt ist, besteht die Gefahr, dass die vorhandene Kapazität verloren geht. Wenn Ihre Umgebung ressourcenbeschränkt ist, verwenden Sie diese Einstellung also nur, wenn Sie reservierte Knoten nutzen. Weitere Informationen finden Sie unter Upgrade in einer ressourcenbeschränkten Umgebung.
Beispiel für die Verwendung der Einstellungen maxSurge
und maxUnavailable
Ein GKE-Cluster hat beispielsweise einen Einzelzonenknotenpool mit fünf Knoten und die folgende Surge-Upgrade-Konfiguration: maxSurge=2;maxUnavailable=1
.
Während eines Surge-Upgrades mit diesem Knotenpool erstellt GKE in einem rollierenden Zeitfenster zwei aktualisierte Knoten und unterbricht jeweils nur einen vorhandenen Knoten. GKE beendet nach der Bereitstellung der aktualisierten Knoten höchstens drei vorhandene Knoten. Während des Upgrades enthält der Knotenpool zwischen vier und sieben Knoten.
Überlegungen zu Surge-Upgrade-Einstellungen
Beachten Sie die folgenden Informationen, bevor Sie die Surge-Upgrade-Einstellungen konfigurieren:
- Durch Surge-Upgrades erstellte Knoten unterliegen Ihren Google Cloud-Ressourcenkontingenten, der Ressourcenverfügbarkeit und der Reservierungskapazität für Knotenpools mit spezifische Reservierungsaffinität. Wenn Ihre Umgebung ressourcenbeschränkt ist, finden Sie weitere Informationen unter Upgrade in einer ressourcenbeschränkten Umgebung.
- 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 aktualisiert Knotenpools mit mehreren Zonen zonenweise. 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
plusmaxUnavailable
und nicht höher als 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 anpassen, um Geschwindigkeit und Unterbrechung auszugleichen
In der folgenden Tabelle werden vier verschiedene Upgradeprofile 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 nach Abschluss von Jobs, die vollständig ausgeführt werden müssen |
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 auf dem neuen Surge-Knoten sofort neu gestartet werden. Diese Konfiguration benötigt die Ressourcen nur, um vorübergehend einen neuen Knoten zu 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
jeden 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 entfernt werden („blaue“ Knoten). GKE behält die „blauen“ Ressourcen bei Bedarf bei, um Rollbacks von Arbeitslasten durchzuführen, bis die Wartezeit erreicht 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
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 der 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.