Surge-Updates für Knotenpools konfigurieren

In diesem Dokument wird beschrieben, wie Sie Notstandsaktualisierungen von Knotenpools aktivieren und verwalten. Informationen zur Funktionsweise von Surge-Aktualisierungen von Knotenpools finden Sie unter Surge-Aktualisierungen.

Was Sie vor dem Ausführen von Spitzenupdates beachten sollten

Beachten Sie Folgendes, bevor Sie ein Hochskalierungsupdate ausführen:

  • Zusätzliche Instanzen, die im Rahmen dieses Schritts zur Leistungssteigerung erstellt werden, können Ihr AWS-Instanzkontingent überschreiten. Wenn Sie nicht genügend Kontingent haben und diese zusätzlichen Instanzen nicht bereitgestellt werden können, schlägt das Update möglicherweise fehl.
  • Wenn max-unavailable-update auf 0 festgelegt ist, können Unterbrechungen bei Arbeitslasten dennoch auftreten, da Pods entfernt und auf die neueren Knoten verschoben werden.
  • Die maximale Anzahl von Knoten, die gleichzeitig aktualisiert werden können, entspricht der Summe von max-surge-update und max-unavailable-update und ist auf 20 beschränkt.

Surge-Updates aktivieren und konfigurieren

Wenn Sie Aktualisierungen bei Nachfragespitzen aktivieren möchten, wenden Sie sich an den Google Cloud Support. Nachdem das Supportteam die Funktion aktiviert hat, können Sie beim Erstellen oder Aktualisieren Ihres Knotenpools Werte für die Parameter max-surge-update und max-unavailable-update festlegen:

Erstellen

gcloud container aws node-pools create NODE_POOL_NAME
    --cluster CLUSTER_NAME \
    --location GOOGLE_CLOUD_LOCATION \
    --max-surge-update MAX_SURGE \
    --max-unavailable-update MAX_UNAVAILABLE

Aktualisieren

gcloud container aws node-pools update NODE_POOL_NAME
    --cluster CLUSTER_NAME \
    --location GOOGLE_CLOUD_LOCATION \
    --max-surge-update MAX_SURGE \
    --max-unavailable-update MAX_UNAVAILABLE

Ersetzen Sie Folgendes:

  • NODE_POOL_NAME: der Name des Knotenpools, der aktualisiert werden soll.
  • CLUSTER_NAME ist der Name des Clusters.
  • GOOGLE_CLOUD_LOCATION: die unterstützte Google Cloud Region, die Ihren Cluster verwaltet. Beispiel: us-west1
  • MAX_SURGE: Die maximale Anzahl zusätzlicher Knoten, die während eines Updates vorübergehend über die aktuelle Größe des Knotenpools hinaus erstellt werden können. Mit diesem Wert können Sie steuern, wie viele Knoten gleichzeitig aktualisiert werden. Die Standardeinstellung ist „1“, Sie können sie aber auch auf „0“ setzen. Wenn Sie max-surge-update auf einen Wert größer als 0 festlegen, erstellt GKE on AWS Surge-Knoten. Wenn Sie ihn auf 0 festlegen, wird die Erstellung verhindert.
  • MAX_UNAVAILABLE: die maximale Anzahl von Knoten, die während des Aktualisierungsvorgangs gleichzeitig nicht verfügbar sein können. Durch Erhöhen dieses Werts können mehr Knoten gleichzeitig aktualisiert werden. Der Standardwert ist 0, kann aber nach oben angepasst werden.

Einstellungen für Surge-Updates für einen Knotenpool prüfen

Führen Sie den folgenden Befehl aus, um die Einstellungen für das Surge-Update eines Knotenpools aufzurufen:

gcloud alpha container aws node-pools describe NODE_POOL_NAME
    --cluster CLUSTER_NAME \
    --location GOOGLE_CLOUD_LOCATION \

Ersetzen Sie Folgendes:

  • NODE_POOL_NAME: Der Name des Knotenpools.
  • CLUSTER_NAME ist der Name des Clusters.
  • GOOGLE_CLOUD_LOCATION: die unterstützte Google Cloud Region, die Ihren Cluster verwaltet. Beispiel: us-west1

Wenn für den Knotenpool Surge-Upgrades aktiviert sind, enthält die Ausgabe dieses Befehls den Abschnitt surge_settings. In diesem Abschnitt surge_settings werden die Werte der Parameter max_surge und max_unavailable angezeigt.

Laufende Surge-Updates verwalten

Sie können ein laufendes Surge-Update abbrechen, ein fehlgeschlagenes Surge-Update rückgängig machen oder ein unterbrochenes Update fortsetzen.

Surge-Update abbrechen (pausieren) und fortsetzen

In GKE on AWS bedeutet „Surge-Update abbrechen“, dass es pausiert wird. Weitere Informationen zum Abbrechen eines Updates finden Sie unter Aktualisierung abbrechen.

Mit anderen Worten: Wenn Sie ein Surge-Update abbrechen, wird das Update nicht rückgängig gemacht. Stattdessen wird der Knotenpool möglicherweise in einem teilweise aktualisierten Zustand mit zwei Autoscaling-Gruppen belassen: einer mit Knoten, auf denen die vorherige Konfiguration ausgeführt wird, und einer mit Knoten, auf denen die neue Konfiguration ausgeführt wird. Um dieses Problem zu beheben, setzen Sie das Surge-Update fort, indem Sie den Befehl „update“ noch einmal mit denselben Zielparametern wie beim unterbrochenen Vorgang ausführen. Das Initiieren eines Updates mit anderen Knotenpool-Parametern ist eingeschränkt, bis das vorherige Update abgeschlossen ist.

Rollback für fehlgeschlagenes Surge-Update ausführen

Sie können einen Knotenpool auf seinen ursprünglichen Zustand zurücksetzen, wenn ein Surge-Update abgebrochen wurde oder fehlgeschlagen ist.

Was Sie vor dem Zurückrollen eines Surge-Updates beachten sollten

  • Sie können nur einen für die Hochskalierung aktivierten Knotenpool zurücksetzen, der sich im Status „Teilweise aktualisiert“ (DEGRADED) befindet.
  • Sobald ein Rollback für einen Knotenpool gestartet wurde, kann es nicht mehr abgebrochen werden.
  • Sie können erst wieder Aktualisierungen vornehmen, wenn der Rollback-Vorgang abgeschlossen ist.
  • Sie können ein Rollback nur wiederholen, wenn es fehlschlägt.
  • Sie können für Knotenpools kein Rollback mehr durchführen, nachdem sie erfolgreich aktualisiert worden sind.

Rollback für ein fehlgeschlagenes Surge-Update durchführen

Führen Sie den folgenden Befehl aus, um einen fehlgeschlagenen Aktualisierungsvorgang für den Knotenpool rückgängig zu machen:

gcloud container aws node-pools rollback NODE_POOL_NAME
    --cluster CLUSTER_NAME

Ersetzen Sie Folgendes:

  • NODE_POOL_NAME: der Name des Knotenpools, der aktualisiert werden soll.
  • CLUSTER_NAME ist der Name des Clusters.

So funktioniert das Rollback

Wenn Sie ein Rollback initiieren, wird intern ein neuer Aktualisierungsvorgang für den Knotenpool gestartet. „Intern“ bedeutet hier, dass dieser Vorgang innerhalb des Systems selbst ausgeführt wird und keine manuelle Intervention erfordert. Dabei werden die Knoten des Knotenpools auf Best-Effort-Basis auf ihren ursprünglichen Zustand zurückgesetzt.

Die Knoten, die zur alten Autoscaling-Gruppe gehören, werden nicht mehr abgesperrt und die Cluster-Autoscaling-Funktion dieser Gruppe wird aktiviert, damit Arbeitslasten auf den Knoten geplant werden können. Teilweise aktualisierte Knotenpoolknoten in der neuen Autoscaling-Gruppe werden gemäß den Surge-Einstellungen, die Sie bei Ihrem ersten Versuch zur Surge-Aktualisierung festgelegt haben, abgegrenzt, entladen und beendet.

Fehlgeschlagene Surge-Updates verwalten

Sie haben drei Möglichkeiten, ein fehlgeschlagenes Update zu beheben:

  1. Aktualisierung fortsetzen: Sie können mit denselben Zielknotenpool-Einstellungen wie beim ersten erfolglosen Versuch fortfahren.
  2. Rollback: Mit dem Befehl „rollback“ können Sie den Knotenpool auf den ursprünglichen Zustand zurücksetzen.
  3. Ändern und neu starten: Wenn Sie die Parameter für das Surge-Upgrade ändern möchten, muss der vorhandene Knotenpool gelöscht und dann mit den neuen Einstellungen neu erstellt werden. Eine Anleitung zum Löschen eines Knotenpools finden Sie unter Knotenpool löschen.