Laufwerk-Snapshots erstellen und verwalten

Erstellen Sie Snapshots, um regelmäßig Daten aus Ihren zonalen oder regionalen nichtflüchtigen Speichern zu sichern.

Sie können auch Snapshots von Laufwerken erstellen, die ausgeführten Instanzen zugeordnet sind. Snapshots sind globale Ressourcen, sodass Sie sie zur Wiederherstellung von Daten auf einem neuen Laufwerk oder einer neuen Instanz innerhalb desselben Projekts verwenden können. Außerdem ist eine projektübergreifende Freigabe von Snapshots möglich.

Hinweis

Erstellen von Snapshots vorbereiten

So bereiten Sie das Erstellen von Snapshots nichtflüchtiger Speicher vor:

Snapshot eines nichtflüchtigen Speichers erstellen

Console

  1. Öffnen Sie in der Google Cloud Console die Seite Snapshot erstellen.
    Zur Seite "Snapshot erstellen"
  2. Geben Sie einen Namen für den Snapshot ein.
  3. Optional können Sie eine Beschreibung des Snapshots eingeben.
  4. Wählen Sie im Drop-down-Menü das Quelllaufwerk aus.
  5. Legen Sie den Speicherort für den Snapshot fest. Sie können den Standardspeicherort oder einen benutzerdefinierten Speicherort verwenden.

    1. Wählen Sie unter Speicherort aus, ob Sie Ihren Snapshot an einem multiregionalen oder einem regionalen Speicherort speichern möchten.
    2. Wählen Sie die gewünschte Region bzw. den gewünschten multiregionalen Speicherort aus. Wenn Sie die Region bzw. den multiregionalen Speicherort verwenden möchten, der dem Quelllaufwerk am nächsten liegt, wählen Sie Je nach Standort des Laufwerks (Standard) aus.
  6. Klicken Sie auf Erstellen, um den Snapshot zu erstellen.

gcloud

Erstellen Sie den Snapshot am Standardspeicherort oder an einem ausgewählten Speicherort. Sie müssen einen Snapshot-Namen angeben. Der Name muss zwischen 1 und 63 Zeichen lang sein und RFC 1035 entsprechen.

  • Verwenden Sie den Befehl gcloud compute snapshots create, um einen Snapshot eines nichtflüchtigen Speichers am Standardspeicherort zu erstellen:

    gcloud compute snapshots create SNAPSHOT_NAME \
        --source-disk SOURCE_DISK \
        --source-disk-zone SOURCE_DISK_ZONE
    

    Dabei gilt:

    • SNAPSHOT_NAME: Ein Name für den Snapshot.
    • SOURCE_DISK: Der Name des nichtflüchtigen Speichers, von dem Sie einen Snapshot erstellen möchten.
    • SOURCE_DISK_ZONE: Die Zone des nichtflüchtigen Speichers, von dem Sie einen Snapshot erstellen möchten.
  • Alternativ können Sie einen Snapshot an einem benutzerdefinierten Speicherort erstellen. Dabei legen Sie mit dem Flag --storage-location fest, wo der Snapshot gespeichert werden soll:

    gcloud compute snapshots create SNAPSHOT_NAME \
        --source-disk SOURCE_DISK \
        --source-disk-zone SOURCE_DISK_ZONE \
        --storage-location STORAGE_LOCATION
    

    Dabei gilt:

    • SNAPSHOT_NAME: Ein Name für den Snapshot.
    • SOURCE_DISK: Der Name des nichtflüchtigen Speichers, von dem Sie einen Snapshot erstellen möchten.
    • SOURCE_DISK_ZONE: Die Zone des nichtflüchtigen Speichers, von dem Sie einen Snapshot erstellen möchten.
    • STORAGE_LOCATION: Der multiregionale Cloud Storage-Speicherort oder die Cloud Storage-Region, in der Sie den Snapshot speichern möchten. Sie können nur einen Speicherort angeben.

Die gcloud CLI wartet bis der Vorgang den Status READY oder FAILED zurückgibt oder das Zeitlimit erreicht und die letzten bekannten Details des Snapshots zurückgibt.

API

Erstellen Sie den Snapshot am Standardspeicherort oder an einem ausgewählten Speicherort.

  • Zum Erstellen eines Snapshots am Standardspeicherort senden Sie eine POST-Anfrage an die Methode snapshots.insert:

    POST https://compute.googleapis.com/compute/v1/projects/DESTINATION_PROJECT_ID/global/snapshots
    
    {
      "name": SNAPSHOT_NAME
      "sourceDisk": "projects/SOURCE_PROJECT_ID/zones/SOURCE_ZONE/disks/SOURCE_DISK_NAME
    }
    

    Dabei gilt:

    • DESTINATION_PROJECT_ID: Die ID des Projekts, in dem Sie den Snapshot erstellen möchten.
    • SNAPSHOT_NAME: Ein Name für den Snapshot.
    • SOURCE_PROJECT_ID: Die ID des Projekts des Quelllaufwerks.
    • SOURCE_ZONE: Die Zone des Quelllaufwerks.
    • SOURCE_DISK_NAME: Der Name des nichtflüchtigen Speichers, von dem Sie einen Snapshot erstellen möchten.
  • Wenn Sie alternativ einen Snapshot an einem benutzerdefinierten Speicherort erstellen möchten, senden Sie eine POST-Anfrage an die Methode snapshots.insert und geben Sie den Speicherort an:

    POST https://compute.googleapis.com/compute/v1/projects/DESTINATION_PROJECT_ID/global/snapshots
    
    {
      "name": SNAPSHOT_NAME
      "sourceDisk": "projects/SOURCE_PROJECT_ID/zones/SOURCE_ZONE/disks/SOURCE_DISK_NAME
      "storageLocations": STORAGE_LOCATION
    }
    

    Dabei gilt:

    • DESTINATION_PROJECT_ID: Die ID des Projekts, in dem Sie den Snapshot erstellen möchten.
    • SNAPSHOT_NAME: Ein Name für den Snapshot.
    • SOURCE_PROJECT_ID: Die ID des Projekts des Quelllaufwerks.
    • SOURCE_ZONE: Die Zone des Quelllaufwerks.
    • SOURCE_DISK_NAME: Der Name des nichtflüchtigen Speichers, von dem Sie einen Snapshot erstellen möchten.
    • STORAGE_LOCATION: Der multiregionale Cloud Storage-Speicherort oder die Cloud Storage-Region, in der Sie den Snapshot speichern möchten. Sie können nur einen Speicherort angeben.

Snapshot eines regionalen nichtflüchtigen Speichers erstellen

Nachdem Sie das Laufwerk vorbereitet haben, können Sie einen Snapshot erstellen. Beim Erstellen eines Snapshots eines regionalen nichtflüchtigen Speichers müssen Sie die Region angeben, in der sich das Laufwerk befindet.

Console

  1. Öffnen Sie in der Google Cloud Console die Seite Snapshot erstellen.
    Zur Seite "Snapshot erstellen"
  2. Geben Sie einen Namen für den Snapshot ein.
  3. Optional können Sie eine Beschreibung des Snapshots eingeben.
  4. Wählen Sie unter Quelllaufwerk ein vorhandenes Laufwerk aus, von dem Sie einen Snapshot erstellen möchten.
  5. Optional können Sie einen benutzerdefinierten Speicherort angeben:

    1. Wählen Sie unter Speicherort aus, ob Sie Ihren Snapshot an einem multiregionalen oder einem regionalen Speicherort speichern möchten.
    2. Wählen Sie die gewünschte Region bzw. den gewünschten multiregionalen Speicherort aus. Wählen Sie Basierend auf dem Standort des Quelllaufwerks aus, um die Region bzw. den multiregionalen Speicherort mit der geringsten Entfernung zum Quelllaufwerk zu verwenden.
  6. Klicken Sie auf Erstellen, um den Snapshot zu erstellen.

gcloud

Erstellen Sie den Snapshot am Standardspeicherort oder an einem ausgewählten Speicherort.

  • Verwenden Sie den Befehl gcloud compute snapshots create, um einen Snapshot eines regionalen nichtflüchtigen Speichers am Standardspeicherort zu erstellen:

    gcloud compute snapshots create SNAPSHOT_NAME \
        --source-disk SOURCE_DISK \
        --source-disk-region=SOURCE_DISK_REGION
    

    Dabei gilt:

    • SNAPSHOT_NAME: Ein Name für den Snapshot.
    • SOURCE_DISK: Der Name des nichtflüchtigen Speichers, von dem Sie einen Snapshot erstellen möchten.
    • SOURCE_DISK_REGION: Der Name des regionalen nichtflüchtigen Speichers, von dem Sie einen Snapshot erstellen möchten.
  • Optional können Sie einen benutzerdefinierten Speicherort angeben:

    gcloud compute snapshots create SNAPSHOT_NAME \
        --source-disk SOURCE_DISK \
        --source-disk-region=SOURCE_DISK_REGION
        --storage-location STORAGE_LOCATION
    

    Dabei gilt:

    • SNAPSHOT_NAME: Ein Name für den Snapshot.
    • SOURCE_DISK: Der Name des nichtflüchtigen Speichers, von dem Sie einen Snapshot erstellen möchten.
    • SOURCE_DISK_REGION: Der Name des regionalen nichtflüchtigen Speichers, von dem Sie einen Snapshot erstellen möchten
    • STORAGE_LOCATION: Der multiregionale Cloud Storage-Speicherort oder die Cloud Storage-Region, in der Sie den Snapshot speichern möchten. Sie können nur einen Speicherort angeben.

    Die Google Cloud CLI wartet, bis der Vorgang den Status READY oder FAILED zurückgibt oder die maximale Zeitüberschreitung erreicht und gibt die letzten bekannten Details des Snapshots zurück.

API

  • Zum Erstellen eines Snapshots am Standardspeicherort senden Sie eine POST-Anfrage an die Methode snapshots.insert:

    POST https://compute.googleapis.com/compute/v1/projects/DESTINATION_PROJECT_ID/global/snapshots
    {
      "name": SNAPSHOT_NAME
      "sourceDisk": "projects/SOURCE_PROJECT_ID/regions/SOURCE_REGION/disks/SOURCE_DISK_NAME
    }
    

    Dabei gilt:

    • DESTINATION_PROJECT_ID: Die ID des Projekts, in dem Sie den Snapshot erstellen möchten.
    • SNAPSHOT_NAME: Ein Name für den Snapshot.
    • SOURCE_PROJECT_ID: Die ID des Projekts des Quelllaufwerks.
    • SOURCE_REGION: Die Region des Quelllaufwerks.
    • SOURCE_DISK_NAME: Der Name des nichtflüchtigen Speichers, von dem Sie einen Snapshot erstellen möchten.
  • Wenn Sie alternativ einen Snapshot an einem benutzerdefinierten Speicherort erstellen möchten, senden Sie eine POST-Anfrage an die Methode snapshots.insert und geben Sie den Speicherort an:

    POST https://compute.googleapis.com/compute/v1/projects/DESTINATION_PROJECT_ID/global/snapshots
    {
      "name": SNAPSHOT_NAME
      "sourceDisk": "projects/SOURCE_PROJECT_ID/regions/SOURCE_REGION/disks/SOURCE_DISK_NAME
      "storageLocations": STORAGE_LOCATION
    }
    

    Dabei gilt:

    • DESTINATION_PROJECT_ID: Die ID des Projekts, in dem Sie den Snapshot erstellen möchten.
    • SNAPSHOT_NAME: Ein Name für den Snapshot.
    • SOURCE_PROJECT_ID: Die ID des Projekts des Quelllaufwerks.
    • SOURCE_REGION: Die Region des Quelllaufwerks.
    • SOURCE_DISK_NAME: Der Name des nichtflüchtigen Speichers, von dem Sie einen Snapshot erstellen möchten.
    • STORAGE_LOCATION: Der multiregionale Cloud Storage-Speicherort oder die Cloud Storage-Region, in der Sie den Snapshot speichern möchten. Sie können nur einen Speicherort angeben.

Snapshot löschen

Compute Engine verwendet differenzielle Snapshots, sodass jeder Snapshot nur jene Daten enthält, die sich seit dem letzten Snapshot geändert haben. Da nachfolgende Snapshots Informationen benötigen könnten, die in einem vorherigen Snapshot gespeichert sind, werden beim Löschen eines Snapshots also nicht unbedingt alle Daten im Snapshot gelöscht. Weitere Informationen zum Löschen von Snapshots finden Sie unter Snapshot löschen.

So löschen Sie einen Snapshot:

Console

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

    Zur Seite "Snapshots"

  2. Wählen Sie einen oder mehrere Snapshots aus, den oder die Sie löschen möchten.
  3. Klicken Sie oben auf der Seite Snapshots auf Löschen.

gcloud

Verwenden Sie zum Löschen eines Snapshots den Befehl gcloud compute snapshots delete:

gcloud compute snapshots delete SNAPSHOT_NAME

Dabei steht SNAPSHOT_NAME für den Namen des zu löschenden Snapshots.

API

Senden Sie zum Löschen von Snapshots eine DELETE-Anfrage an die compute.snapshots.delete-Methode.

DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/snapshots/SNAPSHOT_NAME

wobei

  • PROJECT_ID ist der Name Ihres Projekts.
  • SNAPSHOT_NAME ist der Name des zu löschenden Snapshots.

Mehrere Snapshots basierend auf einem Filter löschen

Compute Engine verwendet differenzielle Snapshots, sodass jeder Snapshot nur jene Daten enthält, die sich seit dem letzten Snapshot geändert haben. Da nachfolgende Snapshots Informationen benötigen könnten, die in einem vorherigen Snapshot gespeichert sind, werden beim Löschen eines Snapshots also nicht unbedingt alle Daten im Snapshot gelöscht. Weitere Informationen zum Löschen von Snapshots finden Sie unter Snapshot löschen.

In den folgenden Abschnitten wird beschrieben, wie Sie Snapshots anhand eines bestimmten Filters löschen. Weitere Informationen zu Filtern der gcloud CLI finden Sie unter Themenfilter der gcloud CLI.

Verwenden Sie zum Löschen der Snapshots eine Kombination aus dem Befehl gcloud compute snapshots list und einem bestimmten Filter sowie den Befehl gcloud compute snapshots delete mit xargs:

gcloud compute snapshots list --filter="EXPRESSION" --uri |
   xargs gcloud compute snapshots delete

Ersetzen Sie EXPRESSION durch einen Themenfilter vom Typ gcloud.

Zum Beispiel löscht --filter="creationTimestamp>'2021-01-01'" alle Snapshots, die nach dem 01.01.2021 erstellt wurden.

Snapshots auflisten

gcloud

Mit dem Befehl gcloud compute snapshots list können Sie eine Liste der Snapshots abrufen, die Ihnen in einem bestimmten Projekt zur Verfügung stehen.

gcloud compute snapshots list --project PROJECT_ID

Dabei ist PROJECT_ID die ID des Projekts.

API

Wenn Sie eine Liste des Snapshots abrufen möchten, der Ihnen in einem bestimmten Projekt zur Verfügung steht, senden Sie eine GET-Anfrage an die Methode snapshots.list:

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/snapshots

Dabei ist PROJECT_ID die ID des Projekts.

Informationen zu einem Snapshot ansehen

Mit dem Befehl gcloud compute snapshots describe rufen Sie Informationen zu einem bestimmten Snapshot ab, etwa den Erstellungszeitpunkt, die Größe und das Quelllaufwerk:

gcloud compute snapshots describe SNAPSHOT_NAME

Dabei ist SNAPSHOT_NAME der Name des Snapshots.

Snapshot-Daten projektübergreifend freigeben

So verschieben Sie Daten von einem Laufwerk in einem Projekt auf ein Laufwerk in einem anderen Projekt:

gcloud

  1. Erstellen Sie mit dem Befehl gcloud compute snapshots create einen Laufwerk-Snapshot im Zielprojekt. Verwenden Sie beispielsweise den folgenden Befehl, um einen Snapshot eines zonalen nichtflüchtigen Speichers zu erstellen:

    gcloud compute snapshots create SNAPSHOT_NAME \
        --source-disk https://www.googleapis.com/compute/v1/projects/SOURCE_PROJECT_ID/zones/ZONE/disks/SOURCE_DISK_NAME \
        --project DESTINATION_PROJECT_ID
    

    Dabei gilt:

    • SNAPSHOT_NAME: Ein Name für den Snapshot.
    • SOURCE_PROJECT_ID: Die ID des Projekts des Quelllaufwerks.
    • ZONE: Die Zone des Quelllaufwerks.
    • SOURCE_DISK_NAME: Der Name des Quelllaufwerks.
    • DESTINATION_PROJECT_ID: Die ID des Zielprojekts für den neuen Snapshot.
  2. Erstellen Sie im Zielprojekt mit dem Befehl gcloud compute disks create ein zonales oder regionales Laufwerk, das auf dem Snapshot basiert:

    gcloud compute disks create DISK_NAME \
        --source-snapshot SNAPSHOT_NAME \
        --project DESTINATION_PROJECT_ID
    

    Dabei gilt:

    • DISK_NAME: Ein Name für das neue Laufwerk.
    • SNAPSHOT_NAME: Der Name des Snapshots.
    • DESTINATION_PROJECT_ID: Die ID des Zielprojekts für das neue Laufwerk.

API

  1. Erstellen Sie einen Laufwerk-Snapshot im Zielprojekt, indem Sie die Methode snapshots.insert aufrufen. Wenn Sie beispielsweise einen Snapshot eines zonalen nichtflüchtigen Speichers erstellen möchten, stellen Sie folgende Anfrage:

    POST https://compute.googleapis.com/compute/v1/projects/DESTINATION_PROJECT_ID/global/snapshots
    
    {
      "name": SNAPSHOT_NAME
      "sourceDisk": "projects/SOURCE_PROJECT_ID/zones/SOURCE_ZONE/disks/SOURCE_DISK_NAME
    }
    

    Dabei gilt:

    • DESTINATION_PROJECT_ID: Die ID des Zielprojekts für den neuen Snapshot.
    • SNAPSHOT_NAME: Ein Name für den Snapshot.
    • SOURCE_PROJECT_ID: Die ID des Projekts des Quelllaufwerks.
    • SOURCE_ZONE: Die Zone des Quelllaufwerks.
    • SOURCE_DISK_NAME: Der Name des Quelllaufwerks.
  2. Erstellen Sie im Zielprojekt ein zonales oder regionales Laufwerk, das auf dem Snapshot basiert. Verwenden Sie dazu die zonale Methode disks.insert oder die regionale Methode regionDisks.insert. Stellen Sie zum Beispiel die folgende Anfrage zum Erstellen eines zonalen Laufwerks:

    POST https://compute.googleapis.com/compute/v1/projects/DESTINATION_PROJECT_ID/zones/DESTINATION_ZONE/disks
    
    {
      "name": DISK_NAME
      "sourceSnapshot": SNAPSHOT_NAME
    }
    

    Dabei gilt:

    • DESTINATION_PROJECT_ID: Die ID des Zielprojekts für das neue Laufwerk.
    • DISK_NAME: Ein Name für das neue Laufwerk.
    • SNAPSHOT_NAME: Der Name des Snapshots.

Eine Liste der verfügbaren Snapshots finden Sie unter Snapshots auflisten.

Nächste Schritte