Graceful Shutdown in einer Compute Engine-Instanz aktivieren


In diesem Dokument wird beschrieben, wie Sie den ordnungsgemäßen Herunterfahren in einer neuen oder vorhandenen Compute Engine-Instanz aktivieren. Weitere Informationen zum ordnungsgemäßen Herunterfahren finden Sie unter Ordnungsgemäßes Herunterfahren.

Wenn Sie den ordnungsgemäßen Herunterfahrvorgang in einer Instanz aktivieren, können Sie dem Gastbetriebssystem bis zu eine Stunde Zeit geben, um ordnungsgemäß herunterzufahren, wenn Sie die Instanz anhalten oder löschen. So lassen sich potenzielle Datenverluste oder beschädigte Dateisysteme vermeiden.

Hinweis

  • 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:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    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 (v1) (roles/compute.instanceAdmin.v1) für das Projekt zu gewähren, um die Berechtigungen zu erhalten, die Sie zum Aktivieren eines ordnungsgemäßen Herunterfahrens einer Compute-Instanz 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 Aktivieren eines ordnungsgemäßen Herunterfahrens in einer Compute-Instanz erforderlich sind. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:

Erforderliche Berechtigungen

Die folgenden Berechtigungen sind erforderlich, um einen ordnungsgemäßen Herunterfahrvorgang in einer Compute-Instanz zu aktivieren:

  • So erstellen Sie Instanzen:
    • compute.instances.create für das Projekt
    • Zur Erstellung der VM mit einem benutzerdefinierten Image: compute.images.useReadOnly für das Image
    • Zur Erstellung der VM mithilfe eines Snapshots: compute.snapshots.useReadOnly für den Snapshot
    • Zur Erstellung der VM mithilfe einer Instanzvorlage: compute.instanceTemplates.useReadOnly für die Instanzvorlage
    • Um der VM ein Legacy-Netzwerk zuzuweisen: compute.networks.use für das Projekt
    • Zum Festlegen einer statische IP-Adresse für die VM: compute.addresses.use für das Projekt
    • Zur Zuweisung einer externen IP-Adresse zur VM bei Verwendung eines Legacy-Netzwerks: compute.networks.useExternalIp für das Projekt
    • Um ein Subnetz für die VM anzugeben: compute.subnetworks.use für das Projekt oder für das ausgewählte Subnetz
    • Um der VM eine externe IP-Adresse zuzuweisen, wenn Sie ein VPC-Netzwerk verwenden: compute.subnetworks.useExternalIp für das Projekt oder für das ausgewählte Subnetz
    • Um die Metadaten der VM-Instanz für die VM festzulegen: compute.instances.setMetadata für das Projekt
    • Um Tags für die VM festzulegen: compute.instances.setTags für die VM
    • Um Labels für die VM festzulegen: compute.instances.setLabels für die VM
    • Um ein Dienstkonto festzulegen, das die VM verwenden soll: compute.instances.setServiceAccount für die VM
    • Um ein neues Laufwerk für die VM zu erstellen: compute.disks.create für das Projekt
    • Um ein vorhandenes Laufwerk im Lese- oder Lese‑/Schreibmodus anzuhängen: compute.disks.use für das Laufwerk
    • Um ein vorhandenes Laufwerk im Lesemodus anzuhängen: compute.disks.useReadOnly für das Laufwerk
  • Um eine Instanzvorlage zu erstellen: compute.instanceTemplates.create für das Projekt
  • So aktivieren Sie den ordnungsgemäßen Herunterfahren in einer vorhandenen Instanz: compute.instances.update auf der Instanz

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

Ordnungsgemäßes Herunterfahren aktivieren

Sie können eine der folgenden Methoden verwenden, um den ordnungsgemäßen Herunterfahren in einer Compute-Instanz zu aktivieren:

Ordentliches Herunterfahren in einer vorhandenen Instanz aktivieren

Sie können den ordnungsgemäßen Herunterfahren in einer vorhandenen Compute-Instanz aktivieren, ohne sie zu beenden oder neu zu starten. Die standardmäßige Zeitspanne für die ordnungsgemäße Abschaltung beträgt 10 Minuten. Sie können jedoch eine benutzerdefinierte Zeitspanne zwischen einer Sekunde und einer Stunde angeben.

Wählen Sie eine der folgenden Optionen aus, um den ordnungsgemäßen Herunterfahren in einer vorhandenen Instanz zu aktivieren:

Console

  1. Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.

    Zu „VM-Instanzen“

  2. Klicken Sie in der Spalte Name auf den Namen der Instanz, für die Sie den ordnungsgemäßen Herunterfahrvorgang aktivieren möchten.

    Die Detailseite der Instanz wird geöffnet.

  3. Klicken Sie auf  Bearbeiten.

  4. Führen Sie im Bereich Verwaltung die folgenden Schritte aus:

    1. Klicken Sie das Kästchen VM ordnungsgemäß herunterfahren an.

    2. Optional: Wenn Sie einen benutzerdefinierten Zeitraum für die geplante Deaktivierung angeben möchten, geben Sie im Feld Maximale Dauer eine Dauer an.

  5. Klicken Sie auf Speichern.

gcloud

Verwenden Sie den Befehl gcloud beta compute instances update mit dem Flag --graceful-shutdown, um den ordnungsgemäßen Herunterfahren in einer vorhandenen Instanz zu aktivieren:

gcloud beta compute instances update INSTANCE_NAME \
    --graceful-shutdown \
    --zone=ZONE

Ersetzen Sie Folgendes:

  • INSTANCE_NAME: der Name der Instanz.

  • ZONE: die Zone, in der sich die Instanz befindet.

Optional können Sie das Flag --graceful-shutdown-max-duration angeben, um einen benutzerdefinierten Zeitraum für die geplante Deaktivierung anzugeben:

gcloud beta compute instances update INSTANCE_NAME \
    --graceful-shutdown \
    --graceful-shutdown-max-duration=MAX_DURATION \
    --zone=ZONE

Ersetzen Sie MAX_DURATION durch die Dauer der Abschaltung. Der Wert muss als Anzahl der Stunden, Minuten oder Sekunden gefolgt von h, m oder s formatiert werden. Geben Sie beispielsweise 1h für eine Stunde oder 20m10s für 20 Minuten und 10 Sekunden an.

REST

  1. Erstellen Sie eine leere JSON-Datei.

  2. Wenn Sie die Eigenschaften einer vorhandenen Instanz aufrufen möchten, senden Sie eine GET-Anfrage an die Betamethode instances.get:

    GET https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME
    

    Ersetzen Sie Folgendes:

    • PROJECT_ID: die ID des Projekts, in dem sich die Instanz befindet.

    • ZONE: die Zone, in der sich die Instanz befindet.

    • INSTANCE_NAME: der Name einer vorhandenen Instanz.

  3. Gehen Sie in der leeren JSON-Datei, die Sie in den vorherigen Schritten erstellt haben, so vor:

    1. Geben Sie die Details zur Instanzkonfiguration aus der GET-Anfrageausgabe ein.

    2. Fügen Sie im Feld scheduling das Feld gracefulShutdown so hinzu:

      {
        ...
        "scheduling": {
          ...
          "gracefulShutdown": {
            "enabled": true
          }
        },
        ...
      }
      

      Optional können Sie das Feld maxDuration angeben, um einen benutzerdefinierten Zeitraum für die ordnungsgemäße Abschaltung anzugeben:

      {
        ...
        "scheduling": {
          ...
          "gracefulShutdown": {
            ...
            "enabled": true,
            "maxDuration": {
              "seconds": "MAX_DURATION"
            }
          }
        },
        ...
      }
      

      Ersetzen Sie MAX_DURATION durch die Dauer in Sekunden für die ordnungsgemäße Abschaltung. Der Wert muss zwischen 1 und 3600 liegen, also 3.600 Sekunden (eine Stunde).

  4. Wenn Sie die Instanz aktualisieren und neu starten möchten, senden Sie eine PUT-Anfrage an die Betamethode instances.update. Gehen Sie in der Anfrage so vor:

    • Fügen Sie in der Anfrage-URL den Abfrageparameter mostDisruptiveAllowedAction ein, wobei dieser auf RESTART gesetzt ist.

    • Fügen Sie im Anfragetext die Instanzeigenschaften aus der JSON-Datei ein, die Sie in den vorherigen Schritten erstellt und aktualisiert haben.

    Die PUT-Anfrage zum Aktualisieren der Instanz sieht in etwa so aus:

    PUT https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME?mostDisruptiveAllowedAction=RESTART
    
    {
      ...
      "scheduling": {
        ...
        "gracefulShutdown": {
          "enabled": true
        }
      },
      ...
    }
    

Weitere Informationen zum Aktualisieren der Eigenschaften einer Instanz finden Sie unter Instanzattribute aktualisieren.

Ordentliches Herunterfahren beim Erstellen einer Instanz aktivieren

Wenn Sie eine Compute-Instanz mit ordnungsgemäßem Herunterfahren erstellen, beträgt die standardmäßige Zeitspanne für das Herunterfahren 10 Minuten. Optional können Sie einen benutzerdefinierten Zeitraum zwischen einer Sekunde und einer Stunde angeben.

Wählen Sie eine der folgenden Optionen aus, um eine Instanz mit aktiviertem ordnungsgemäßen Herunterfahren zu erstellen:

Console

  1. Rufen Sie in der Google Cloud Console die Seite VM-Instanzen auf.

    Zu Seite „VM-Instanzen“

  2. Klicken Sie auf Instanz erstellen.

    Die Seite Instanz erstellen wird geöffnet.

  3. Legen Sie einen Namen für die Instanz fest.

  4. Geben Sie die Region und die Zone an, in der die Instanz erstellt werden soll.

  5. Geben Sie einen Maschinentyp für die Instanz an.

  6. Klicken Sie im Navigationsmenü auf Erweitert.

  7. Maximieren Sie den Abschnitt Erweiterte Einstellungen für das VM-Bereitstellungsmodell und gehen Sie dann so vor:

    1. Klicken Sie das Kästchen VM ordnungsgemäß herunterfahren an.

    2. Optional: Wenn Sie einen benutzerdefinierten Zeitraum für die ordnungsgemäße Abschaltung angeben möchten, geben Sie im Feld Maximale Dauer eine Dauer an.

  8. Klicken Sie auf Erstellen.

gcloud

Verwenden Sie zum Erstellen einer Instanz mit aktiviertem ordnungsgemäßen Herunterfahren den Befehl gcloud beta compute instances create mit dem Flag --graceful-shutdown:

gcloud beta compute instances create INSTANCE_NAME \
    --graceful-shutdown \
    --machine-type=MACHINE_TYPE \
    --zone=ZONE

Ersetzen Sie Folgendes:

  • INSTANCE_NAME: der Name der Instanz.

  • MACHINE_TYPE: der für die Instanz zu verwendende Maschinentyp.

  • ZONE: Zone, in der die Instanz erstellt werden soll.

Optional können Sie das Flag --graceful-shutdown-max-duration angeben, um einen benutzerdefinierten Zeitraum für die ordnungsgemäße Abschaltung anzugeben:

gcloud beta compute instances create INSTANCE_NAME \
    --graceful-shutdown \
    --graceful-shutdown-max-duration=MAX_DURATION \
    --machine-type=MACHINE_TYPE \
    --zone=ZONE

Ersetzen Sie MAX_DURATION durch die Dauer der ordnungsgemäßen Abschaltung. Der Wert muss als Anzahl der Stunden, Minuten oder Sekunden gefolgt von h, m oder s formatiert werden. Geben Sie beispielsweise 1h für eine Stunde oder 20m10s für 20 Minuten und 10 Sekunden an.

REST

Wenn Sie eine Instanz mit aktiviertem Graceful Shutdown erstellen möchten, senden Sie eine POST-Anfrage an die Methode beta.instances.insert. Geben Sie im Anfragetext das Feld gracefulShutdown an:

POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instances

{
  "name": "INSTANCE_NAME",
  "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE",
  "disks": [
    {
      "boot": true,
      "initializeParams": {
        "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE"
      }
    }
  ],
  "networkInterfaces": [
    {
      "network": "global/networks/default"
    }
  ],
  "scheduling": {
    "gracefulShutdown": {
      "enabled": true
    }
  }
}

Ersetzen Sie Folgendes:

  • PROJECT_ID: Die ID des Projekts, in dem die Instanz erstellt werden soll.

  • ZONE: Zone, in der die Instanz erstellt werden soll.

  • INSTANCE_NAME: der Name der Instanz.

  • MACHINE_TYPE: der gewünschte Maschinentyp für die Instanz.

  • IMAGE_PROJECT: das Image-Projekt, das das Image enthält, z. B. debian-cloud. Weitere Informationen zu den unterstützten Image-Projekten finden Sie unter Öffentliche Images.

  • IMAGE: Wählen Sie eine der folgenden Optionen aus:

    • Eine bestimmte Version des Betriebssystem-Images; Beispiel: debian-12-bookworm-v20240617.

    • Eine Image-Familie, die als family/IMAGE_FAMILY formatiert sein muss. Diese Formatierung gibt das neueste nicht verworfene Betriebssystem-Image an. Beispiel: Wenn Sie family/debian-12 angeben, wird die aktuelle Version in der Debian 12-Image-Familie verwendet. Weitere Informationen zur Verwendung von Image-Familien finden Sie unter Best Practices für Image-Familien.

Optional: Wenn Sie einen benutzerdefinierten Zeitraum für die ordnungsgemäße Abschaltung angeben möchten, fügen Sie das Feld maxDuration in den Anfragetext ein:

POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instances

{
  "name": "INSTANCE_NAME",
  "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE",
  "disks": [
    {
      "boot": true,
      "initializeParams": {
        "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE"
      }
    }
  ],
  "networkInterfaces": [
    {
      "network": "global/networks/default"
    }
  ],
  "scheduling": {
    "gracefulShutdown": {
      "enabled": true,
      "maxDuration": {
        "seconds": "MAX_DURATION"
      }
    }
  }
}

Ersetzen Sie MAX_DURATION durch die Dauer in Sekunden für die ordnungsgemäße Abschaltung. Der Wert muss zwischen 1 und 3600 liegen, also 3.600 Sekunden (eine Stunde).

Weitere Konfigurationsoptionen zum Erstellen einer Instanz finden Sie unter Compute Engine-Instanz erstellen und starten.

Ordentliches Herunterfahren beim Erstellen mehrerer Instanzen gleichzeitig aktivieren

Wenn Sie Compute-Instanzen im Bulk-Verfahren erstellen, für die das ordnungsgemäße Herunterfahren aktiviert ist, beträgt die Standardzeit für das Herunterfahren 10 Minuten. Optional können Sie einen benutzerdefinierten Zeitraum zwischen einer Sekunde und einer Stunde angeben.

Wählen Sie eine der folgenden Optionen aus, um mehrere Instanzen mit aktiviertem Graceful Shutdown zu erstellen:

gcloud

Wenn Sie Instanzen im Bulk erstellen möchten, für die ein geordneter Herunterfahrvorgang aktiviert ist, verwenden Sie den Befehl gcloud beta compute instances bulk create mit dem Flag --graceful-shutdown.

Wenn Sie beispielsweise Instanzen im Bulk in einer einzelnen Zone erstellen und ein Namensmuster für die Instanzen angeben möchten, führen Sie den folgenden Befehl aus:

gcloud beta compute instances bulk create \
    --count=COUNT \
    --graceful-shutdown \
    --machine-type=MACHINE_TYPE \
    --name-pattern="NAME_PATTERN" \
    --zone=ZONE

Ersetzen Sie Folgendes:

  • COUNT: Die Anzahl der zu erstellenden Instanzen.

  • MACHINE_TYPE: der Maschinentyp für die Instanzen.

  • NAME_PATTERN ist das Namensmuster für die Instanzen. Verwenden Sie eine Abfolge von Hash-Zeichen (#), um eine Zahlenfolge in einem Instanznamen zu ersetzen. Wenn Sie z. B. instance-# für das Namensmuster verwenden, werden Instanzen mit Namen erstellt, die mit instance-1, instance-2 usw. beginnen und bis zur durch COUNT angegebenen Anzahl von Instanzen fortgesetzt werden.

  • ZONE: Zone, in der Instanzen im Bulk erstellt werden sollen.

Optional können Sie das Flag --graceful-shutdown-max-duration einfügen, um einen benutzerdefinierten Zeitraum für die geplante Deaktivierung anzugeben:

gcloud beta compute instances bulk create \
    --count=COUNT \
    --graceful-shutdown \
    --graceful-shutdown-max-duration=MAX_DURATION \
    --machine-type=MACHINE_TYPE \
    --name-pattern="NAME_PATTERN" \
    --zone=ZONE

Ersetzen Sie MAX_DURATION durch die Dauer der ordnungsgemäßen Abschaltung. Der Wert muss als Anzahl der Stunden, Minuten oder Sekunden gefolgt von h, m oder s formatiert werden. Geben Sie beispielsweise 1h für eine Stunde oder 20m10s für 20 Minuten und 10 Sekunden an.

REST

Wenn Sie mehrere Instanzen mit aktiviertem Graceful Shutdown erstellen möchten, senden Sie eine POST-Anfrage an die Betamethode instances.bulkInsert. Geben Sie im Anfragetext das Feld gracefulShutdown an.

Wenn Sie beispielsweise Instanzen im Bulk in einer einzelnen Zone erstellen und ein Namensmuster für die Instanzen angeben möchten, stellen Sie eine POST-Anfrage wie hier beschrieben:

POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instances/bulkInsert

{
  "count": COUNT,
  "namePattern": "NAME_PATTERN",
  "instanceProperties": {
    "machineType": "MACHINE_TYPE",
    "disks": [
      {
        "boot": true,
        "initializeParams": {
          "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE"
        }
      }
    ],
    "networkInterfaces": [
      {
        "network": "global/networks/default"
      }
    ],
    "scheduling": {
      "gracefulShutdown": {
        "enabled": true
      }
    }
  }
}

Ersetzen Sie Folgendes:

  • PROJECT_ID: Die ID des Projekts, in dem Instanzen im Bulk-Verfahren erstellt werden sollen.

  • ZONE: Zone, in der Instanzen im Bulk erstellt werden sollen.

  • COUNT: Die Anzahl der zu erstellenden Instanzen.

  • NAME_PATTERN ist das Namensmuster für die Instanzen. Verwenden Sie eine Abfolge von Hash-Zeichen (#), um eine Zahlenfolge in einem Instanznamen zu ersetzen. Wenn Sie z. B. instance-# für das Namensmuster verwenden, werden Instanzen mit Namen erstellt, die mit instance-1, instance-2 usw. beginnen und bis zur durch COUNT angegebenen Anzahl von Instanzen fortgesetzt werden.

  • MACHINE_TYPE: der Maschinentyp für die Instanzen.

  • IMAGE_PROJECT: das Image-Projekt, das das Image enthält, z. B. debian-cloud. Weitere Informationen zu den unterstützten Image-Projekten finden Sie unter Öffentliche Images.

  • IMAGE: Wählen Sie eine der folgenden Optionen aus:

    • Eine bestimmte Version des Betriebssystem-Images; Beispiel: debian-12-bookworm-v20240617.

    • Eine Image-Familie, die als family/IMAGE_FAMILY formatiert sein muss. Diese Formatierung gibt das neueste nicht verworfene Betriebssystem-Image an. Beispiel: Wenn Sie family/debian-12 angeben, wird die aktuelle Version in der Debian 12-Image-Familie verwendet. Weitere Informationen zur Verwendung von Image-Familien finden Sie unter Best Practices für Image-Familien.

  • ZONE: Zone, in der Instanzen im Bulk erstellt werden sollen.

Optional: Wenn Sie einen benutzerdefinierten Zeitraum für die ordnungsgemäße Abschaltung angeben möchten, fügen Sie das Feld maxDuration in den Anfragetext ein:

POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instances/bulkInsert

{
  "count": COUNT,
  "namePattern": "NAME_PATTERN",
  "instanceProperties": {
    "machineType": "MACHINE_TYPE",
    "disks": [
      {
        "boot": true,
        "initializeParams": {
          "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE"
        }
      }
    ],
    "networkInterfaces": [
      {
        "network": "global/networks/default"
      }
    ],
    "scheduling": {
      "gracefulShutdown": {
        "enabled": true,
        "maxDuration": {
          "seconds": "MAX_DURATION"
        }
      }
    }
  }
}

Ersetzen Sie MAX_DURATION durch die Dauer in Sekunden für die ordnungsgemäße Abschaltung. Der Wert muss zwischen 1 und 3600 liegen, also 3.600 Sekunden (eine Stunde).

Weitere Konfigurationsoptionen zum Erstellen mehrerer Instanzen finden Sie unter VMs im Bulk erstellen.

Graceful Shutdown beim Erstellen einer Instanzvorlage aktivieren

Wenn Sie eine Instanzvorlage mit ordnungsgemäßem Herunterfahren erstellen, beträgt die standardmäßige Zeitspanne für das Herunterfahren 10 Minuten. Optional können Sie einen benutzerdefinierten Zeitraum zwischen einer Sekunde und einer Stunde angeben.

Bei allen Compute-Instanzen, die mit der Instanzvorlage erstellt wurden, ist das ordnungsgemäße Herunterfahren aktiviert.

Wählen Sie eine der folgenden Optionen aus, um eine Instanzvorlage mit aktiviertem ordnungsgemäßen Herunterfahren zu erstellen:

Console

  1. Rufen Sie in der Google Cloud Console die Seite Instanzvorlagen auf.

    Zu Instanzvorlagen

  2. Klicken Sie auf Instanzvorlage erstellen.

    Die Seite Instanzvorlage erstellen wird geöffnet.

  3. Geben Sie im Feld Name einen Namen für die Instanzvorlage ein.

  4. Wählen Sie den Standort so aus:

    • So reduzieren Sie die regionsübergreifende Abhängigkeit, indem Sie eine regionale Instanzvorlage erstellen:

      1. Wählen Sie Regional aus, falls diese Option nicht bereits ausgewählt ist.

      2. Wählen Sie im Feld Region die Region aus, in der Sie die Instanzvorlage erstellen möchten.

    • Wenn Sie die Instanzvorlage regionenübergreifend verwenden möchten, wählen Sie Global aus.

  5. Geben Sie im Abschnitt Maschinenkonfiguration einen Maschinentyp an.

  6. Maximieren Sie den Abschnitt Erweiterte Einstellungen für das VM-Bereitstellungsmodell und gehen Sie dann so vor:

    1. Klicken Sie das Kästchen VM ordnungsgemäß herunterfahren an.

    2. Optional: Wenn Sie einen benutzerdefinierten Zeitraum für die ordnungsgemäße Abschaltung angeben möchten, geben Sie im Feld Maximale Dauer eine Dauer an.

  7. Klicken Sie auf Erstellen.

gcloud

Verwenden Sie zum Erstellen einer Instanzvorlage mit aktiviertem ordnungsgemäßen Herunterfahren den Befehl gcloud beta compute instance-templates create mit dem Flag --graceful-shutdown.

Wenn Sie beispielsweise eine regionale Instanzvorlage mit ordnungsgemäßem Herunterfahren erstellen möchten, führen Sie den folgenden Befehl aus:

gcloud beta compute instance-templates create INSTANCE_TEMPLATE_NAME \
    --graceful-shutdown \
    --instance-template-region=REGION \
    --machine-type=MACHINE_TYPE

Ersetzen Sie Folgendes:

  • INSTANCE_TEMPLATE_NAME ist der Name der Instanzvorlage.

  • REGION: Region, in der die Instanzvorlage erstellt werden soll.

  • MACHINE_TYPE: Maschinentyp für die mithilfe der Instanzvorlage erstellten Instanzen.

Optional können Sie das Flag --graceful-shutdown-max-duration einfügen, um einen benutzerdefinierten Zeitraum für die geplante Deaktivierung anzugeben.

gcloud beta compute instance-templates create INSTANCE_TEMPLATE_NAME \
    --graceful-shutdown \
    --graceful-shutdown-max-duration=MAX_DURATION \
    --instance-template-region=REGION \
    --machine-type=MACHINE_TYPE

Ersetzen Sie MAX_DURATION durch die Dauer der Abschaltung. Der Wert muss als Anzahl der Stunden, Minuten oder Sekunden gefolgt von h, m oder s formatiert werden. Geben Sie beispielsweise 1h für eine Stunde oder 20m10s für 20 Minuten und 10 Sekunden an.

REST

Wenn Sie eine Instanzvorlage mit ordnungsgemäßem Herunterfahren erstellen möchten, senden Sie eine POST-Anfrage an eine der folgenden Methoden:

Wenn Sie beispielsweise eine regionale Instanzvorlage mit aktiviertem Graceful Shutdown erstellen möchten, stellen Sie eine POST-Anfrage wie hier beschrieben:

POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceTemplates

{
  "name": "INSTANCE_TEMPLATE_NAME",
  "properties": {
    "disks": [
      {
        "boot": true,
        "initializeParams": {
          "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE"
        }
      }
    ],
    "machineType": "MACHINE_TYPE",
    "networkInterfaces": [
      {
        "network": "global/networks/default"
      }
    ],
    "scheduling": {
      "gracefulShutdown": {
        "enabled": true
      }
    }
  }
}

Ersetzen Sie Folgendes:

  • PROJECT_ID: die ID des Projekts, in dem die Instanzvorlage erstellt werden soll.

  • REGION: Region, in der die Instanzvorlage erstellt werden soll.

  • INSTANCE_TEMPLATE_NAME ist der Name der Instanzvorlage.

  • IMAGE_PROJECT: das Image-Projekt, das das Image enthält, z. B. debian-cloud. Weitere Informationen zu den unterstützten Image-Projekten finden Sie unter Öffentliche Images.

  • IMAGE: Wählen Sie eine der folgenden Optionen aus:

    • Eine bestimmte Version des Betriebssystem-Images; Beispiel: debian-12-bookworm-v20240617.

    • Eine Image-Familie, die als family/IMAGE_FAMILY formatiert sein muss. Diese Formatierung gibt das neueste nicht verworfene Betriebssystem-Image an. Beispiel: Wenn Sie family/debian-12 angeben, wird die aktuelle Version in der Debian 12-Image-Familie verwendet. Weitere Informationen zur Verwendung von Image-Familien finden Sie unter Best Practices für Image-Familien.

  • MACHINE_TYPE: Maschinentyp für die mithilfe der Instanzvorlage erstellten Instanzen.

Optional können Sie im Anfragetext das Feld maxDuration angeben, um einen benutzerdefinierten Zeitraum für die ordnungsgemäße Abschaltung festzulegen.

POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/global/instanceTemplates

{
  "name": "INSTANCE_TEMPLATE_NAME",
  "properties": {
    "disks": [
      {
        "boot": true,
        "initializeParams": {
          "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE"
        }
      }
    ],
    "machineType": "MACHINE_TYPE",
    "networkInterfaces": [
      {
        "network": "global/networks/default"
      }
    ],
    "scheduling": {
      "gracefulShutdown": {
        "enabled": true,
        "maxDuration": {
          "seconds": "MAX_DURATION"
        }
      }
    }
  }
}

Ersetzen Sie MAX_DURATION durch die Dauer in Sekunden für die Abschaltung. Der Wert muss zwischen 1 und 3600 liegen, also 3.600 Sekunden (eine Stunde).

Weitere Konfigurationsoptionen zum Erstellen einer Instanzvorlage finden Sie unter Instanzvorlagen erstellen.

Nächste Schritte