Snapshots von nichtflüchtigem Speicher wiederherstellen und löschen

Mit Snapshots können Sie Daten aus Ihrem nichtflüchtigen Speicher sichern. Informationen zum Erstellen von Snapshots finden Sie unter Snapshots von nichtflüchtigem Speicher erstellen. Nachdem Sie einen Snapshot erstellt haben, können Sie diesen verwenden, um den nichtflüchtigen Speicher mit oder ohne Bootfunktion auf einen vorherigen Status wiederherzustellen, der von einem Snapshot zu einer bestimmten Zeit erstellt wurde.

Das Sichern Ihrer Daten mit einem Snapshot-Zeitplan ist eine bewährte Methode, um Arbeitslasten zu verwalten und die Auswirkungen von Datenverlusten zu minimieren.

Wenn Sie einen bestimmten Snapshot nicht mehr benötigen, können Sie die Speicherkosten reduzieren. Löschen Sie dazu den Snapshot.

Mit dem Befehl gcloud compute snapshots list können Sie eine Liste der für ein Projekt verfügbaren Snapshots abrufen:

gcloud compute snapshots list

Verwenden Sie den Befehl gcloud compute snapshots describe, um Informationen zu einem bestimmten Snapshot aufzurufen:

gcloud compute snapshots describe [SNAPSHOT_NAME]

Dabei ist [SNAPSHOT_NAME] der Name des Snapshots, den Sie beschreiben möchten.

Hinweise

Neues VM-Instanz-Bootlaufwerk aus einem Snapshot erstellen

Im Falle eines Ausfalls können Sie Ihre Daten schnell wiederherstellen, wenn Sie einen oder mehrere Snapshots nichtflüchtiger Speicher auf dem neuen nichtflüchtigen Speicher auf einer neuen Instanz wiederherstellen. Wenn Sie diese Instanz erstellen, können Sie einen Bootlaufwerk-Snapshot auf dem Bootlaufwerk wiederherstellen, Nicht-Boot-Snapshots auf neuen zusätzlichen Laufwerken wiederherstellen oder beides.

Weitere Informationen finden Sie unter Instanz aus Snapshots nichtflüchtiger Speicher erstellen.

Neuen nichtflüchtigen Speicher aus einem Nicht-Boot-Snapshot erstellen

Sie können einen Snapshot eines nichtflüchtigen Nicht-Bootlaufwerks auf einem neuen nichtflüchtigen Speicher wiederherstellen. Der neue nichtflüchtige Speicher muss mindestens die Größe des ursprünglichen Quelllaufwerks für den Snapshot haben. Wenn Sie einen nichtflüchtigen Speicher erstellen, der größer als das ursprüngliche Quelllaufwerk für den Snapshot ist, müssen Sie zusätzliche Befehle in der Instanz ausführen, damit die Partitionen den zusätzlichen Speicherplatz nutzen können.

Je nach Betriebssystem und Dateisystemtyp müssen Sie unter Umständen ein anderes Tool zur Anpassung der Dateisystemgröße verwenden. Weitere Informationen finden Sie in der Dokumentation Ihres Betriebssystems.

So stellen Sie einen Snapshot eines nichtflüchtigen Nicht-Bootlaufwerks auf einem neuen Laufwerk einer vorhandenen Instanz wieder her:

Console

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

    Zur Seite "Snapshots"

  2. Suchen Sie den Namen des Snapshots, den Sie wiederherstellen möchten.
  3. Rufen Sie die Seite VM-Instanzen auf.

    Zur Seite "VM-Instanzen"

  4. Klicken Sie auf den Namen der Instanz, in der Sie das Nicht-Bootlaufwerk wiederherstellen möchten.
  5. Klicken Sie oben auf der Seite Instanzdetails auf Bearbeiten.
  6. Klicken Sie unter Zusätzliche Laufwerke auf Laufwerk hinzufügen.
  7. Geben Sie die folgenden Konfigurationsparameter an:
    • Name für das Laufwerk.
    • Typ für das Laufwerk. Der ausgewählte Typ sollte dem des Snapshots entsprechen.
  8. Klicken Sie unter Quelltyp auf Snapshot.
  9. Wählen Sie den Namen des wiederherzustellenden Snapshots aus.
  10. (Optional) Wählen Sie eine Größe für das Laufwerk in GB aus. Diese Zahl muss größer oder gleich dem ursprünglichen Quelllaufwerk für den Snapshot sein. Wenn Sie diesen Wert nicht angeben, hat das neue Laufwerk die gleiche Größe wie das ursprüngliche Quelllaufwerk für den Snapshot.
  11. Klicken Sie auf Fertig, um das Laufwerk zu erstellen.
  12. Klicken Sie am Ende der Seite "Instanzdetails" auf Speichern, um die Änderungen an der Instanz zu übernehmen und das neue Laufwerk anzuhängen.

gcloud

  1. Verwenden Sie den Befehl gcloud compute snapshots list, um den Namen des Snapshots zu finden, den Sie wiederherstellen möchten:

    gcloud compute snapshots list
    
  2. Verwenden Sie den Befehl gcloud compute snapshots describe, um die Größe des Snapshots zu ermitteln, den Sie wiederherstellen möchten:

    gcloud compute snapshots describe [SNAPSHOT_NAME]
    

    Dabei steht [SNAPSHOT_NAME] für den Namen des wiederherzustellenden Snapshots.

  3. Führen Sie den Befehl gcloud compute disks create aus, um einen neuen regionalen oder zonalen nichtflüchtigen Speicher aus dem Nicht-Boot-Snapshot zu erstellen. Wenn Sie nichtflüchtigen SSD-Speicher für zusätzlichen Durchsatz oder mehr IOPS benötigen, fügen Sie das Flag --type ein und geben Sie pd-ssd an.

    gcloud compute disks create [DISK_NAME] \
        --size [DISK_SIZE] \
        --source-snapshot [SNAPSHOT_NAME] \
        --type [DISK_TYPE]
    

    Dabei gilt:

    • [DISK_NAME] ist der Name des neuen Laufwerks.
    • [DISK_SIZE] ist die Größe des neuen Laufwerks in GB. Diese Zahl muss größer oder gleich dem ursprünglichen Quelllaufwerk für den Snapshot sein.
    • [SNAPSHOT_NAME] ist der Name des wiederherzustellenden Snapshots.
    • [DISK_TYPE] ist der Typ des nichtflüchtigen Speichers, pd-standard oder pd-ssd.
  4. Verwenden Sie den Befehl gcloud compute instances attach-disk, um Ihren nichtflüchtigen Speicher an eine Instanz anzuhängen:

    gcloud compute instances attach-disk [INSTANCE_NAME] \
        --disk [DISK_NAME]
    

    Dabei gilt:

    • [INSTANCE_NAME] ist der Name der Instanz.
    • [DISK_NAME] ist der Name des aus dem Snapshot erstellten Laufwerks.

API

Verwenden Sie einen Snapshot, um ein nichtflüchtiges Nicht-Bootlaufwerk wiederherzustellen.

  1. Erstellen Sie eine GET-Anfrage an snapshots.list, um die Liste der Snapshots in Ihrem Projekt anzuzeigen.

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

    Dabei ist [PROJECT_ID] Ihre Projekt-ID.

  2. Erstellen Sie eine POST-Anfrage, um mit der Methode disks.insert einen zonalen nichtflüchtigen Speicher zu erstellen. Fügen Sie die Attribute name, sizeGb und type hinzu. Damit ein Laufwerk mithilfe eines Snapshots wiederhergestellt werden kann, muss das Attribut sourceSnapshot eingefügt werden.

    POST https://compute.googleapis.com/compute/v1/projects/[PROJECT_ID]/zones/[ZONE]/disks
    
    {
     "name": "[DISK_NAME]",
     "sizeGb": "[DISK_SIZE]",
     "type": "zones/[ZONE]/diskTypes/[DISK_TYPE]"
     "sourceSnapshot": "[SNAPSHOT_NAME]"
    }
    

    Dabei gilt:

    • [PROJECT_ID] ist die Projekt-ID.
    • [ZONE] ist die Zone, in der sich Ihre Instanz und das neue Laufwerk befinden.
    • [DISK_NAME] ist der Name des neuen Laufwerks.
    • [DISK_SIZE] ist die Größe des neuen Laufwerks in GB.
    • [DISK_TYPE] ist der Typ des nichtflüchtigen Speichers, pd-standard oder pd-ssd.
    • [SNAPSHOT_NAME] ist der Quell-Snapshot für das Laufwerk, das Sie wiederherstellen.
  3. Erstellen Sie eine POST-Anfrage an die Methode instances.attachDisk und fügen Sie die URL dem zonalen nichtflüchtigen Speicher hinzu, den Sie gerade erstellt haben.

    POST https://compute.googleapis.com/compute/v1/projects/[PROJECT_ID]/zones/[ZONE]/instances/[INSTANCE_NAME]/attachDisk
    
    {
     "source": "/compute/v1/projects/[PROJECT_ID]/zones/[ZONE]/disks/[DISK_NAME]"
    }
    

    Dabei gilt:

    • [PROJECT_ID] ist die Projekt-ID.
    • [ZONE] ist die Zone, in der sich Ihre Instanz und das neue Laufwerk befinden.
    • [INSTANCE_NAME] ist der Name der Instanz, der Sie den neuen nichtflüchtigen Speicher hinzufügen
    • [DISK_NAME] ist der Name des neuen Laufwerks.

Nachdem Sie ein neues Laufwerk erstellt und an die Instanz angehängt haben, müssen Sie das Laufwerk formatieren und bereitstellen, damit das Betriebssystem den verfügbaren Speicherplatz nutzen kann.

Wenn das Laufwerk größer ist als der Snapshot, muss die Größe des Dateisystems an den nichtflüchtigen Speicher angepasst werden, um den zusätzlichen Speicherplatz zu berücksichtigen.

Nun können Sie mit der Instanz auf die wiederhergestellten Daten zugreifen und den zusätzlichen nichtflüchtigen Speicherplatz zum Speichern neuer Daten verwenden.

Snapshot löschen

Compute Engine verwendet inkrementelle Snapshots, sodass jeder Snapshot nur die Daten enthält, die sich seit dem vorherigen Snapshot geändert haben. Bei unveränderten Daten verweisen Snapshots auf die Daten in vorherigen Snapshots. Speicherkosten für Snapshots von nichtflüchtigem Speicher werden nur für die Gesamtgröße des Snapshots in Rechnung gestellt

Wenn Sie einen Snapshot löschen, markiert Compute Engine den Snapshot im System sofort als DELETED. Wenn der Snapshot keine abhängigen Snapshots hat, wird er sofort gelöscht. Wenn vom Snapshot jedoch andere Snapshots abhängen, gilt Folgendes:

  1. Daten, die zur Wiederherstellung anderer Snapshots benötigt werden, werden in den nächsten Snapshot verschoben, wodurch dieser vergrößert wird.
  2. Daten, die nicht zur Wiederherstellung anderer Snapshots benötigt werden, werden gelöscht. Dadurch wird die Gesamtgröße aller Snapshots verringert.
  3. Der nächste Snapshot verweist nicht mehr auf den zum Löschen markierten Snapshot, sondern auf den Snapshot davor.

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. Wenn Daten in einem zum Löschen markierten Snapshot zur Wiederherstellung nachfolgender Snapshots benötigt werden, werden diese Daten in den nächsten entsprechenden Snapshot verschoben. Sie müssen alle Snapshots löschen, um Daten endgültig aus Snapshots zu löschen.

Wenn ein Snapshot-Zeitplan mit dem Laufwerk verknüpft ist, müssen Sie den Snapshot-Zeitplan vom Laufwerk trennen, bevor Sie ihn löschen. Durch das Entfernen des Snapshot-Zeitplans vom Laufwerk werden weitere Snapshot-Aktivitäten verhindert. Mit einem Laufwerk verknüpfte Zeitpläne können nicht gelöscht werden. Snapshots lassen sich jederzeit manuell löschen.

Das folgende Diagramm zeigt das zuvor beschriebene Vorgehen:

Vorgehen zum Löschen eines Snapshots

So löschen Sie einen Snapshot:

Console

  1. Rufen Sie in der Google Cloud Platform 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 compute.snapshots.delete.

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

Dabei gilt:

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

Nächste Schritte

Hat Ihnen diese Seite weitergeholfen? Teilen Sie uns Ihr Feedback mit:

Feedback geben zu...

Compute Engine-Dokumentation