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
Rufen Sie in der Google Cloud Console die Seite Instanzen auf.
Klicken Sie auf den Instanznamen.
Klicken Sie auf der Seite Instanzdetails auf In Compute Engine ansehen, um die VM-Details zu öffnen.
Klicken Sie im Bereich Zusätzliche Laufwerke auf den Namen des Datenlaufwerks. Der Name des Datenlaufwerks hat folgendes Format:
INSTANCE_NAME-data-workspace
.Klicken Sie auf Snapshot erstellen.
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 SnapshotSOURCE_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 InstanzLOCATION
: 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