Host-Wartungsereignis manuell starten


Auf dieser Seite wird erläutert, wie Sie ein Host-Wartungsereignis auf unterstützten Compute Engine-Instanzen manuell starten. Mit dieser Funktion können Sie ein Wartungsereignis starten, um den Zeitpunkt der Wartung Ihrer Instanz zu steuern. Dies ist für Arbeitslasten nützlich, die möglicherweise von einer Leistungsminderung oder Ausfallzeit betroffen sind und für die das Wartungsfenster zu einer bestimmten Zeit beginnen muss.

Wenn Sie ein Wartungsereignis manuell starten, beginnt die Hostwartung sofort. Sie können kein Datum oder keine Uhrzeit für den Beginn des Wartungsereignisses angeben. Wenn Sie diese Funktion nicht verwenden, erfolgt das Wartungsereignis zum in der Benachrichtigung zur anstehenden Wartung angegebenen Zeitpunkt.

Wenn Sie zuerst testen möchten, wie Ihre Anwendungen mit einem Wartungsereignis umgehen, können Sie ein Wartungsereignis simulieren.

Beschränkungen

Sie können ein Hostwartungsereignis für Instanzen mit den folgenden Maschinentypen manuell starten:

Hinweise

  • Richten Sie die Authentifizierung ein, falls Sie dies noch nicht getan haben. Bei der Authentifizierung wird Ihre Identität für den Zugriff auf Google Cloud-Dienste und APIs überprüft. Zur Ausführung von Code oder Beispielen aus einer lokalen Entwicklungsumgebung können Sie sich bei Compute Engine authentifizieren. Wählen Sie dazu eine der folgenden Optionen aus:

    Select the tab for how you plan to use the samples on this page:

    gcloud

    1. Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init
    2. Set a default region and zone.
    3. REST

      Verwenden Sie die von der gcloud CLI bereitgestellten Anmeldedaten, um die REST API-Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung zu verwenden.

        Install the Google Cloud CLI, then initialize it by running the following command:

        gcloud init

      Weitere Informationen finden Sie unter Für die Verwendung von REST authentifizieren in der Dokumentation zur Google Cloud-Authentifizierung.

Erforderliche Rollen

Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Compute-Instanzadministrator (Version 1) (roles/compute.instanceAdmin.v1) für das Projekt zu gewähren, um die Berechtigungen zu erhalten, die Sie zum Verwalten der VM-Wartung benötigen. Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

Diese vordefinierte Rolle enthält die Berechtigungen, die zum Verwalten der VM-Wartung erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:

Erforderliche Berechtigungen

Die folgenden Berechtigungen sind für die Verwaltung der VM-Wartung erforderlich:

  • So rufen Sie Informationen zu einer Compute-Instanz ab: compute.instances.get

Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.

Host-Wartungsereignis manuell starten

Die Compute Engine sendet Benachrichtigungen über bevorstehende Wartungsereignisse durch mehrere Methoden. Anhand der Informationen in den Benachrichtigungen können Sie den Zeitraum ermitteln, in dem Sie ein Wartungsereignis manuell starten können.

Benachrichtigungsinformationen prüfen

So finden Sie Benachrichtigungen zu Wartungsereignissen:

Wenn die Benachrichtigung zu einem Host-Wartungsereignis canReschedule=True und maintenanceStatus=Pending enthält, können Sie die Wartung zu einem beliebigen Zeitpunkt starten oder warten, bis das Wartungsereignis zur von windowStartTime angegebenen Uhrzeit stattfindet.

Wenn Sie keine Benachrichtigung erhalten und versuchen, ein Wartungsereignis manuell zu starten, wird die folgende Meldung angezeigt:

There is no reschedulable upcoming maintenance.

Das bedeutet, dass kein Wartungsereignis geplant ist und Sie nichts unternehmen müssen.

Wartungsereignis starten

Sie können die Wartung des Hosts zu einer beliebigen Zeit starten, anstatt auf die geplante Zeit zu warten. Verwenden Sie die Google Cloud CLI oder REST, um das Wartungsereignis auszulösen, das dann sofort beginnt.

gcloud

Verwenden Sie den Befehl compute instances perform-maintenance, um ein Wartungsereignis zu starten. Die Wartung des Hosts beginnt sofort nach Eingabe des Befehls.

gcloud compute instances perform-maintenance INSTANCE_NAME \
    --zone=ZONE

Ersetzen Sie Folgendes:

  • INSTANCE_NAME: Der Name der Compute-Instanz.
  • ZONE: Die Zone, in der sich die Instanz befindet.

Die Antwort ähnelt dem folgenden Beispiel.

upcomingMaintenance:{
  "canReschedule":false
  "latestWindowStartTime": "2023-12-01T19:00:01Z"
  "maintenanceStatus":"ONGOING"
  "type":"SCHEDULED"
  "windowEndTime": "2023-12-01T22:00:00Z"
  "windowStartTime": "2023-12-01T19:00:00Z"
}

In der Antwort ist canReschedule auf false und maintenanceStatus auf ONGOING gesetzt. Das bedeutet, dass der Vorgang zur Hostwartung läuft.

REST

Erstellen Sie eine POST-Anfrage mit der Methode instances.performMaintenance, um ein Wartungsereignis zu starten.

POST: https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE/instances/INSTANCE_NAME/performMaintenance

Ersetzen Sie Folgendes:

  • PROJECT_NAME: Name des Projekts
  • ZONE: Die Zone, in der sich die Compute-Instanz befindet
  • INSTANCE_NAME: Der Name der Instanz

Die Antwort sieht so aus:

upcomingMaintenance:{
  "canReschedule":false
  "latestWindowStartTime": "2023-12-01T19:00:01Z"
  "maintenanceStatus":"ONGOING"
  "type":"SCHEDULED"
  "windowEndTime": "2023-12-01T22:00:00Z"
  "windowStartTime": "2023-12-01T19:00:00Z"
}

In der Antwort ist canReschedule auf false und maintenanceStatus auf ONGOING gesetzt. Das bedeutet, dass der Vorgang zur Hostwartung läuft.

Nächste Schritte