Daten mithilfe eines Snapshots sichern und wiederherstellen

Auf dieser Seite wird beschrieben, wie Sie mit einem Snapshot die Daten in Ihrer Vertex AI Workbench-Instanz sichern und wiederherstellen.

Daten sichern

Wenn Sie Daten in einer Vertex AI Workbench-Instanz sichern möchten, können Sie einen Snapshot des zugrunde liegenden Datenlaufwerks der Compute Engine-VM erstellen.

Sie können einen Snapshot des Datenlaufwerks Ihrer Instanz mit der Google Cloud Console, der Google Cloud CLI oder der REST API erstellen:

Console

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

    Zur Seite „VM-Instanzen“

  2. Klicken Sie auf den Instanznamen.

  3. Klicken Sie auf der Seite Instanzdetails auf In Compute Engine ansehen, um die VM-Details zu öffnen.

  4. Klicken Sie im Bereich Zusätzliche Laufwerke auf den Namen des Datenlaufwerks. Der Name des Datenlaufwerks hat folgendes Format: INSTANCE_NAME-data-workspace.

  5. Klicken Sie auf Snapshot erstellen.

  6. Klicken Sie im Dialogfeld Snapshot erstellen auf Erstellen.

Die Compute Engine erstellt einen Snapshot des Datenlaufwerks.

gcloud

Verwenden Sie den Befehl gcloud compute snapshots create, um einen Snapshot des Datenlaufwerks Ihrer Instanz zu erstellen.

Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:

  • SNAPSHOT_NAME: ein Name für den Snapshot
  • SOURCE_ZONE: Zone, in der sich Ihre Instanz befindet.
  • INSTANCE_NAME: durch den Namen der Instanz
  • 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.

Führen Sie folgenden Befehl aus:

Linux, macOS oder Cloud Shell

gcloud compute snapshots create SNAPSHOT_NAME \
    --source-disk-zone=SOURCE_ZONE \
    --source-disk=INSTANCE_NAME-data-workspace \
    --storage-location=STORAGE_LOCATION

Windows (PowerShell)

gcloud compute snapshots create SNAPSHOT_NAME `
    --source-disk-zone=SOURCE_ZONE `
    --source-disk=INSTANCE_NAME-data-workspace `
    --storage-location=STORAGE_LOCATION

Windows (cmd.exe)

gcloud compute snapshots create SNAPSHOT_NAME ^
    --source-disk-zone=SOURCE_ZONE ^
    --source-disk=INSTANCE_NAME-data-workspace ^
    --storage-location=STORAGE_LOCATION

REST

Wenn Sie einen Snapshot des Datenlaufwerks Ihrer Instanz erstellen möchten, senden Sie eine POST-Anfrage an die Methode snapshots.insert der Compute Engine.

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

  • 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, in dem sich die Instanz befindet
  • SOURCE_ZONE: Zone, in der sich Ihre Instanz befindet.
  • INSTANCE_NAME: durch den Namen der Instanz
  • 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.

HTTP-Methode und URL:

POST https://compute.googleapis.com/compute/v1/projects/DESTINATION_PROJECT_ID/global/snapshots

JSON-Text der Anfrage:

{
  "name": "SNAPSHOT_NAME",
  "sourceDisk": "projects/SOURCE_PROJECT_ID/zones/SOURCE_ZONE/disks/INSTANCE_NAME-data-workspace",
  "storageLocations": [
      "STORAGE_LOCATION"
  ],
}

Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:

curl

Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://compute.googleapis.com/compute/v1/projects/DESTINATION_PROJECT_ID/global/snapshots"

PowerShell

Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://compute.googleapis.com/compute/v1/projects/DESTINATION_PROJECT_ID/global/snapshots" | Select-Object -Expand Content

Daten aus einem Snapshot wiederherstellen

Sie können Daten auf einer Instanz mithilfe eines Snapshots wiederherstellen. Wenn Sie Daten auf einer Instanz wiederherstellen, löscht Vertex AI Workbench das vorhandene Datenlaufwerk, das mit der Instanz verbunden ist, erstellt ein neues Datenlaufwerk basierend auf dem Snapshot und verbindet das neue Datenlaufwerk mit der Instanz.

Sie können Daten auf einer Instanz mit der gcloud CLI oder der REST API wiederherstellen:

gcloud

Verwenden Sie den Befehl gcloud workbench instances restore, um Daten auf einer Instanz wiederherzustellen.

Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:

  • INSTANCE_NAME: durch den Namen der Instanz
  • LOCATION: Zone, in der sich Ihre Instanz befindet.
  • SNAPSHOT_PROJECT_NAME: der Name des Projekts, in dem sich der Snapshot befindet
  • SNAPSHOT_NAME: Name des wiederherzustellenden Snapshots

Führen Sie folgenden Befehl aus:

Linux, macOS oder Cloud Shell

gcloud workbench instances restore INSTANCE_NAME \
    --location=LOCATION \
    --snapshot-project=SNAPSHOT_PROJECT_NAME \
    --snapshot=SNAPSHOT_NAME

Windows (PowerShell)

gcloud workbench instances restore INSTANCE_NAME `
    --location=LOCATION `
    --snapshot-project=SNAPSHOT_PROJECT_NAME `
    --snapshot=SNAPSHOT_NAME

Windows (cmd.exe)

gcloud workbench instances restore INSTANCE_NAME ^
    --location=LOCATION ^
    --snapshot-project=SNAPSHOT_PROJECT_NAME ^
    --snapshot=SNAPSHOT_NAME

REST

Wenn Sie Daten in einer Instanz wiederherstellen möchten, senden Sie eine POST-Anfrage an die Methode projects.locations.instances.restore.

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

  • PROJECT_ID: Ihre Projekt-ID.
  • LOCATION: Zone, in der sich Ihre Instanz befindet.
  • INSTANCE_ID: die ID Ihrer Instanz
  • SNAPSHOT_ID: die ID des Snapshots, der wiederhergestellt werden soll. Verwenden Sie die Compute Engine-Methode snapshots.get, um die ID eines Snapshots abzurufen.
  • SNAPSHOT_PROJECT_ID: die Projekt-ID des Snapshots

HTTP-Methode und URL:

POST https://notebooks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID:restore

JSON-Text der Anfrage:

{
  "snapshot": {
    {
      "snapshotId": SNAPSHOT_ID,
      "projectId": SNAPSHOT_PROJECT_ID
    }
  }
}

Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:

curl

Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://notebooks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID:restore"

PowerShell

Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://notebooks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID:restore" | Select-Object -Expand Content

Nächste Schritte