Verwenden Sie Wartungsfenster und Wartungsausschlüsse, um zu steuern, wann automatische Clusterwartungen wie z. B. automatische Upgrades in Ihren Google Kubernetes Engine-Clustern (GKE-Clustern) durchgeführt werden dürfen. Bevor Sie diese Wartungsrichtlinien konfigurieren, prüfen Sie, welche Änderungen GKE-Wartungsrichtlinien berücksichtigen und welche dies nicht tun.
Hinweise
Führen Sie die folgenden Aufgaben aus, bevor Sie beginnen:
- Aktivieren Sie die Google Kubernetes Engine API. Google Kubernetes Engine API aktivieren
- Wenn Sie die Google Cloud CLI für diesen Task verwenden möchten, müssen Sie die gcloud CLI installieren und dann initialisieren. Wenn Sie die gcloud CLI bereits installiert haben, rufen Sie die neueste Version mit dem Befehl
gcloud components update
ab. In früheren gcloud CLI-Versionen werden die Befehle in diesem Dokument möglicherweise nicht unterstützt.
- Prüfen Sie, ob Sie einen vorhandenen Autopilot- oder Standardcluster haben. Erstellen Sie einen Autopilot-Cluster, falls erforderlich.
Wartungsfenster konfigurieren
Geben Sie zum Konfigurieren eines Wartungsfensters an, wann es beginnt, wie lange es dauert und wie oft es sich wiederholen soll. So können Sie beispielsweise ein Wartungsfenster konfigurieren, das sich wöchentlich von Montag bis Freitag vier Stunden pro Tag auftritt.
Sie können ein Wartungsfenster mit der Google Cloud Konsole oder dem Google Cloud CLI konfigurieren.
Überlegungen beim Konfigurieren eines Wartungsfensters
So konfigurieren Sie ein Wartungsfenster:
- Informieren Sie sich darüber, welche Arten von Wartungsereignissen GKE-Wartungsfenster berücksichtigen und welche nicht. Weitere Informationen finden Sie unter Automatische Wartung unter Einhaltung der GKE-Wartungsrichtlinien und Automatische Wartung, die die GKE-Wartungsrichtlinien nicht berücksichtigt.
- Sie können nur ein Wartungsfenster für einen Cluster konfigurieren. Wenn Sie ein neues Fenster konfigurieren, wird das vorherige überschrieben.
- Sie müssen mindestens 48 Stunden Wartungszeit in einem 32-tägigen rollierenden Zeitfenster festlegen. Es werden nur zusammenhängende Verfügbarkeitszeiträume von mindestens vier Stunden berücksichtigt.
- Bei Verwendung der Google Cloud Console werden die Zeiten immer in der lokalen Zeitzone angezeigt.
- Die Wiederholung des Wochentags erfolgt immer anhand der UTC. Daher empfehlen wir die Verwendung von Wartungsfenstern, die solche Wiederholungen in UTC vollständig umfassen, mit der gcloud CLI. Beim Festlegen von Flags kann zwar die Ortszeit verwendet werden, die Zeitzone wird jedoch nicht gespeichert. Wenn Ihre Zeitzone z. B. UTC+6 ist und Sie möchten, dass ein Wartungsfenster am Mittwoch um 02:00 Uhr beginnt, geben Sie einen UTC-Wert von 20:00 Uhr am Dienstag an. Weitere Informationen finden Sie unter Zeitzonen für Wartungsfenster.
Wartungsfenster konfigurieren
Sie können ein Wartungsfenster für einen vorhandenen Cluster mit derGoogle Cloud -Konsole oder der gcloud CLI konfigurieren.
gcloud
Erstellen oder aktualisieren Sie ein Wartungsfenster für einen vorhandenen Cluster:
gcloud container clusters update CLUSTER_NAME \
--maintenance-window-start START_TIME \
--maintenance-window-end END_TIME \
--maintenance-window-recurrence RRULE
Ersetzen Sie Folgendes:
CLUSTER_NAME
ist der Name des Clusters.START_TIME
: Das Datum und die Uhrzeit, zu der das wiederkehrende Wartungsfenster aktiviert wird, ausgedrückt als DTSTART-Wert gemäß RFC-5545. Nach diesem Zeitpunkt wird das Wartungsfenster gemäßRRULE
wiederholt. DerSTART_TIME
gibt außerdem an, zu welcher Tageszeit das Wartungsfenster beginnt.END_TIME
: Das Ende für die Berechnung der Dauer des Wartungsfensters, ausgedrückt durch die Zeit nachSTART_TIME
im selben Format. Der Wert fürEND_TIME
muss relativ zuSTART_TIME
in der Zukunft liegen. Dadurch wird nur die Dauer des Wartungsfensters berechnet. Es wird nicht festgelegt, wann das Wartungsfenster nicht mehr wiederholt wird. Wartungsfenster werden nur dann nicht mehr wiederholt, wenn sie entfernt werden.RRULE
: Die Wiederholung des Wartungsfensters, wie sie ausgedrückt durch eine RRULE gemäß RFC-5545. Dies ist ein flexibles Format mit mehreren Möglichkeiten, Wiederholungsregeln anzugeben, die bestimmen, an welchem Tag das Wartungsfenster beginnt. Sie können beispielsweise eine Wiederholung bestimmter Zeiten in einer Woche oder eines Monats angeben. Wenn das DatumEND_TIME
nach dem DatumSTART_TIME
liegt, erstreckt sich das Wartungsfenster über mehrere Tage. Beispiel: Ein Wartungsfenster, das am Sonntag beginnt, würde bis Montag dauern.
Mit dem folgenden Befehl wird beispielsweise der Cluster my-cluster
mit einem Wartungsfenster bearbeitet, das am Freitag, dem 23. August 2024, um 2:00 Uhr (UTC) aktiviert wird. Dieses Wartungsfenster wird wöchentlich jeden Montag und Freitag wiederholt und endet 30 Stunden später. Das erste Vorkommen des Wartungsfensters beginnt am Freitag, dem 23. August um 2:00 Uhr und endet am Samstag, dem 24. August um 8:00 Uhr. Weitere Informationen zur Formatierung von Datumsangaben und Uhrzeiten finden Sie unter Datum und Uhrzeit formatieren.
gcloud container clusters update my-cluster \
--maintenance-window-start 2024-08-23T02:00:00Z \
--maintenance-window-end 2024-08-24T08:00:00Z \
--maintenance-window-recurrence 'FREQ=WEEKLY;BYDAY=MO,FR'
Weitere Szenarien finden Sie in den Beispielwartungsfenstern.
Console
So erstellen oder ändern Sie ein Wartungsfenster für einen vorhandenen Cluster:
Öffnen Sie in der Google Cloud Console die Seite Google Kubernetes Engine.
Klicken Sie in der Clusterliste auf den Namen des Clusters, den Sie ändern möchten.
Klicken Sie unter Automatisierung neben dem Feld Wartungsfenster auf edit Wartungsrichtlinie bearbeiten.
Klicken Sie auf das Kästchen Wartungsfenster aktivieren.
Wählen Sie die Startzeit und die Dauer und dann die Wochentage für das Wartungsfenster aus. Um die Wiederholungsregel (RRule) direkt zu bearbeiten, wählen Sie Benutzerdefinierter Editor aus.
Klicken Sie auf Änderungen speichern.
Unvollständige Wartung manuell fertigstellen
Wenn ein Upgrade oder eine andere automatische Wartung mehr Zeit als mit dem Wartungsfenster vorgesehen benötigt, versucht GKE, die laufenden Wartungsaufgaben zu beenden und im nächsten Wartungsfenster fortzusetzen. Wenn ein automatisches Upgrade abgebrochen wird und automatische Upgrades für Knoten aktiviert sind, können für die Knoten unterschiedliche Versionen aktiv sein. Der Cluster sollte jedoch wie gewohnt funktionieren.
Wenn Sie Ihren Cluster manuell aktualisieren oder ein teilweises Upgrade abbrechen bzw. rückgängig machen möchten, rufen Sie Manuelles Upgrade eines Clusters auf.
Wartungsfenster entfernen
gcloud
Entfernen Sie ein Wartungsfenster aus einem Cluster:
gcloud container clusters update CLUSTER_NAME --clear-maintenance-window
Ersetzen Sie CLUSTER_NAME
durch den Namen des vorhandenen Clusters.
Console
So entfernen Sie ein Wartungsfenster:
Öffnen Sie in der Google Cloud Console die Seite Google Kubernetes Engine.
Klicken Sie in der Clusterliste auf den Namen des Clusters, den Sie ändern möchten.
Klicken Sie unter Automatisierung neben dem Feld Wartungsfenster auf edit Wartungsrichtlinie bearbeiten.
Entfernen Sie das Häkchen von Wartungsfenster aktivieren.
Klicken Sie auf Änderungen speichern.
Beispiele für Wartungsfenster
In den folgenden Beispielen werden verschiedene Möglichkeiten zur Konfiguration eines Wartungsfensters dargestellt. Es werden nur die relevanten Flags angezeigt. Die dafür verwendete Syntax gilt auch für das Erstellen eines neuen oder für das Aktualisieren eines vorhandenen Clusters.
Wochenenden ab dem 22. August 2026
In diesem Beispiel beträgt die Differenz zwischen den Zeitstempeln für Start und Ende zwei vollständige Tage. Das Wartungsfenster umfasst also das gesamte Wochenende, also Samstags und Sonntags. Wenn das Zeitfenster nicht genau 48 Stunden lang sein soll, ändern Sie -start
, um den Beginn des Zeitfensters zu ändern, oder -end
, um die Gesamtlänge des Zeitfensters zu ändern.
--maintenance-window-start 2026-08-22T00:00:00Z \
--maintenance-window-end 2026-08-24T00:00:00Z \
--maintenance-window-recurrence 'FREQ=WEEKLY;BYDAY=SA'
Täglich werktags von 9:00 bis 17:00 Uhr (UTC-4)
In diesem Beispiel wird gezeigt, wie Sie ein tägliches Wartungsfenster einrichten, aber Wochenenden überspringen. Dieses Beispiel verwendet eine andere Zeitzone als UTC.
--maintenance-window-start 2026-09-02T09:00:00-04:00 \
--maintenance-window-end 2026-09-02T17:00:00-04:00 \
--maintenance-window-recurrence 'FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR'
Wöchentlich um 16 Uhr für 8 Stunden (UTC-7)
Wenn Sie keine Zeitzone für --maintenance-window-start
angeben, wird die in Ihrem Google Cloud -Konto konfigurierte Ortszeit verwendet.
In der Google Cloud Console wird immer die Ortszeit verwendet.
--maintenance-window-start 2026-08-13T16:00:00-7:00 \
--maintenance-window-end 2026-08-14T00:00:00-7:00 \
--maintenance-window-recurrence 'FREQ=WEEKLY'
Wochentags nachts
In diesem Beispiel wird ein tägliches Wartungsfenster gezeigt, das in der Zeitzone UTC-7 über Nacht zwischen Arbeitstagen ausgeführt wird. In diesem Beispiel läuft das Zeitfenster von 20:00 Uhr abends bis 4:00 Uhr morgens.
--maintenance-window-start 2026-08-15T20:00:00-7:00 \
--maintenance-window-end 2026-08-16T04:00:00-7:00 \
--maintenance-window-recurrence 'FREQ=WEEKLY;BYDAY=MO,TU,WE,TH'
Wartungsausschluss konfigurieren
Wenn Sie einen Wartungsausschluss für Ihren Cluster einrichten möchten, müssen Sie Folgendes angeben:
- Name: Der Name des Ausschlusses (optional).
- Startzeit: Das Datum und die Uhrzeit für den Beginn des Ausschlusszeitraums. Die Startzeit muss jetzt oder in der Zukunft liegen.
- Ende: Datum und Uhrzeit für das Ende des Ausschlusszeitraums. In der folgenden Tabelle finden Sie Einschränkungen für die Länge eines Ausschlusszeitraums für jeden der verfügbaren Bereiche.
- Umfang: Der einzuschränkende Umfang automatischer Upgrades. In der folgenden Tabelle sind die verfügbaren Optionen für den Ausschlussumfang aufgeführt.
Umfang | Beschreibung | Maximaler Ausschlusszeitraum |
---|---|---|
Keine Upgrades (Standard) | Alle Patch- und Nebenversionsupgrades werden ausgeschlossen. Verhindert VM-Unterbrechungen für die Steuerungsebene und die Knoten des Clusters aufgrund von Upgrades. | Darf nicht mehr als 30 Tage betragen. |
Keine Nebenversionsupgrades | Alle Nebenversionsupgrades werden ausgeschlossen. VM-Unterbrechungen können für die Steuerungsebene und die Knoten des Clusters aufgrund von Patch-Upgrades auftreten. | Bei Clustern, die für die Release-Versionen „Rapid“, „Regular“ oder „Stable“ registriert sind, kann der Zeitraum nicht über das Ende des Standardsupports hinaus verlängert werden. Bei Clustern, die für den Extended Channel registriert sind, kann der Zeitraum nicht über das Ende des erweiterten Supports der Nebenversion hinaus verlängert werden. |
Keine Nebenversions- oder Knotenupgrades | Alle Nebenversions- und Knotenupgrades werden ausgeschlossen. Verhindert VM-Unterbrechungen auf den Clusterknoten aufgrund von Upgrades. Auf der Steuerungsebene können jedoch Unterbrechungen auftreten. | Bei Clustern, die für die Release-Versionen „Rapid“, „Regular“ oder „Stable“ registriert sind, kann der Zeitraum nicht über das Ende des Standardsupports hinaus verlängert werden. Bei Clustern, die für den Extended Channel registriert sind, kann der Zeitraum nicht über das Ende des erweiterten Supports der Nebenversion hinaus verlängert werden. |
Wartungsausschluss konfigurieren
Wartungsausschlüsse für einen vorhandenen Cluster können Sie mit derGoogle Cloud -Konsole oder der gcloud CLI konfigurieren.
gcloud
Konfigurieren Sie einen Wartungsausschluss für einen vorhandenen Cluster:
gcloud container clusters update CLUSTER_NAME \
--add-maintenance-exclusion-name EXCLUSION_NAME \
--add-maintenance-exclusion-start START_DATE_TIME \
--add-maintenance-exclusion-end END_DATE_TIME \
--add-maintenance-exclusion-scope SCOPE
Dabei gilt:
CLUSTER_NAME
: Der Name Ihres Clusters.EXCLUSION_NAME
: Der Name des Wartungsausschlusses.START_DATE_TIME
: Das Datum und die Uhrzeit für den Start des Ausschlusses.END_DATE_TIME
: Das Datum und die Uhrzeit für das Ende des Ausschlusses.SCOPE
: Der Bereich des Upgrades, der ausgeschlossen werden soll. Dies kann einer der folgenden Werte sein:no_upgrades
,no_minor_upgrades
oderno_minor_or_node_upgrades
.
Zum Aufruf der unterstützten Datums- und Uhrzeitformate führen Sie gcloud topic datetimes
aus.
Console
So konfigurieren Sie einen Wartungsausschluss für einen vorhandenen Cluster:
Öffnen Sie in der Google Cloud Console die Seite Google Kubernetes Engine.
Klicken Sie in der Clusterliste auf den Namen des Clusters, den Sie ändern möchten.
Klicken Sie unter Automatisierung neben dem Feld Wartungsausschlüsse auf edit Wartungsausschlüsse bearbeiten.
Klicken Sie unter Wartungsausschlüsse auf add Wartungsausschluss hinzufügen.
Wählen Sie den Umfang, eine Startzeit und eine Endzeit aus.
Klicken Sie auf Änderungen speichern.
Wartungsausschluss entfernen
Wartungsausschlüsse können mit der Google Cloud Console oder der gcloud CLI entfernt werden.
gcloud
So entfernen Sie einen vorhandenen Wartungsausschluss:
gcloud container clusters update CLUSTER_NAME \
--remove-maintenance-exclusion EXCLUSION_NAME
Dabei gilt:
CLUSTER_NAME
ist der Name des vorhandenen Clusters.EXCLUSION_NAME
: ist der Name des Wartungsausschlusses, der entfernt werden soll.
Console
So entfernen Sie einen Wartungsausschluss aus einem vorhandenen Cluster:
Öffnen Sie in der Google Cloud Console die Seite Google Kubernetes Engine.
Klicken Sie in der Clusterliste auf den Namen des Clusters, den Sie ändern möchten.
Klicken Sie unter Automatisierung neben dem Feld Wartungsausschlüsse auf edit Wartungsausschlüsse bearbeiten.
Klicken Sie unter Wartungsausschlüsse neben dem Feld Endzeit für den Ausschluss, der entfernt werden soll, auf delete Element löschen.
Klicken Sie auf Änderungen speichern.
Wenn Sie alle Wartungsausschlüsse für einen Cluster sehen möchten, können Sie die Wartungsrichtlinien des Clusters aufrufen.
Beispiel für einen Wartungsausschluss
Im folgenden Beispiel wird die Wartung über vier Tage vom Black Friday bis zum Cyber Monday verhindert. Das ist für viele Einzelhändler der umsatzstärkste Zeitraum des Jahres. In diesem Beispiel wird gezeigt, wie Sie ein Wartungsfenster vom Black Friday 2021 (26. November 2021) bis zum Cyber Monday 2021 (29. November 2021) von Mitternacht an der Ostküste (UTC-5) bis 23:59:59 Uhr an der Westküste (UTC-8).
gcloud container clusters update sample-cluster \
--add-maintenance-exclusion-name black-friday \
--add-maintenance-exclusion-start 2021-11-26T00:00:00-05:00 \
--add-maintenance-exclusion-end 2021-11-29T23:59:59-08:00 \
--add-maintenance-exclusion-scope no_upgrades
Wartungsrichtlinien eines Clusters aufrufen
Verwenden Sie den folgenden Befehl, um die Wartungsrichtlinie eines Clusters anzusehen, einschließlich der Angabe, ob ein Wartungsfenster und alle Wartungsausschlüsse vorhanden sind:
gcloud container clusters describe CLUSTER_NAME
Cluster ohne konfiguriertes Wartungsfenster identifizieren
GKE identifiziert Cluster, für die Sie kein Wartungsfenster konfiguriert haben, damit Sie ein wiederkehrendes Fenster auswählen können, in dem GKE die Clusterwartung durchführen kann. Wir empfehlen, ein Wartungsfenster zu konfigurieren, damit GKE automatische Upgrades und andere Clusterwartungsaufgaben, die Wartungsrichtlinien berücksichtigen, zu einem für Ihre Clusterumgebung optimalen Zeitpunkt ausführt.
GKE stellt diese Anleitung mit einer Statistik und einer Empfehlung über den Recommender-Dienst bereit. Weitere Informationen zum Verwalten von Statistiken und Empfehlungen von Recommendern finden Sie unter Nutzung von GKE mit Statistiken und Empfehlungen optimieren.
Sie haben folgende Möglichkeiten, um Cluster ohne konfiguriertes Wartungsfenster zu finden:
- Verwenden Sie die Google Cloud Console.
- Verwenden Sie die gcloud CLI oder die Recommender API und geben Sie den
CLUSTER_MAINTENANCE_WINDOW_AND_EXCLUSIONS
Recommender-Untertyp an.
Eine Anleitung finden Sie unter Insights und Empfehlungen ansehen.
Konfigurieren Sie ein Wartungsfenster, um diese Empfehlung zu implementieren.
Fehlerbehebung
Anhand der folgenden Informationen können Sie häufige Probleme mit Wartungsfenstern und ‑ausschlüssen beheben.
Wartungsfenster verhindert Abschluss des Knotenupdates
Wenn Ihr Cluster Knotenupdates, z. B. Knotenversionsupgrades, nicht innerhalb des geplanten Wartungsfensters abschließen kann, kann dies die Upgrade-Rate verlangsamen oder dazu führen, dass Änderungen an den Knoten verzögert werden. Möglicherweise müssen Sie mit Ihrer Konfiguration experimentieren, um das optimale Gleichgewicht zwischen Geschwindigkeit und Unterbrechung für Ihre Umgebung zu finden. Folgende Faktoren können sich auf die Upgrade-Rate auswirken:
- Geringe Wartungsverfügbarkeit (z. B. kurze Wartungsfenster).
- Große Standardknotenpools.
- Konfiguration der Knotenupgrade-Strategie, die eine minimale Unterbrechung im Vergleich zur Geschwindigkeit priorisiert.
- Einige Pod-Konfigurationsoptionen. Weitere Informationen finden Sie unter Überlegungen zur Dauer des Knotenupgrades.
Der Umfang der Wartungsausschlüsse kann nur auf Releasekanäle angewendet werden
Wenn Sie den Umfang automatischer Upgrades in einem Wartungsausschluss einschränken, muss der Cluster in einer Release-Version registriert sein. Andernfalls können die folgenden Fehler auftreten:
ERROR: (gcloud.container.clusters.update) INVALID_ARGUMENT: Cannot update to
STATIC channel since following maintenancePolicy.maintenanceExclusions can only
apply to release channels. Please remove those maintenance exclusions.
ERROR: (gcloud.container.clusters.update) ResponseError: code=400,
message=MaintenancePolicy.maintenanceExclusions["no"] could not apply to cluster
in STATIC channel, only no_upgrades exclusions are allowed in STATIC channel.
Wartungsausschlüsse überschreiten das Limit
Sie können maximal drei Wartungsausschlüsse angeben, die alle Upgrades ausschließen, also den Bereich „Keine Upgrades” erhalten. Andernfalls erhalten Sie den folgenden Fehler:
ERROR: (gcloud.container.clusters.update) ResponseError: code=400,
message=Number of active maintenance exclusions exceeds limit (3).
Sie können insgesamt maximal 20 Wartungsausschlüsse angeben. Andernfalls erhalten Sie den folgenden Fehler:
ERROR: (gcloud.container.clusters.update) ResponseError: code=400,
message=Number of total maintenance exclusions exceeds limit (20).
Nächste Schritte
- Mehr über Cluster- und Knotenupgrades erfahren
- Automatische Knotenupgrades aktivieren
- Weitere Informationen zu Clusterbenachrichtigungen
- Weitere Informationen zum GKE-Releasezeitplan