Daten mit einem Snapshot sichern und wiederherstellen
Auf dieser Seite wird beschrieben, wie Sie mit einem Snapshot die Daten auf Ihrer Vertex AI Workbench-Instanz sichern und wiederherstellen.
Daten sichern
Wenn Sie Daten auf einer Vertex AI Workbench-Instanz sichern möchten, können Sie einen Snapshot des zugrunde liegenden Compute Engine-VM-Datenträgers 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.
Compute Engine erstellt einen Snapshot des Datenlaufwerks.
gcloud
Verwenden Sie zum Erstellen eines Snapshots des Datenlaufwerks Ihrer Instanz den Befehl gcloud compute snapshots create.
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 von 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
Sicherung planen
Für eine Workbench-Instanz kann ein Sicherungszeitplan konfiguriert werden, indem eine Ressourcenrichtlinie für das Datenlaufwerk angehängt wird.
Sie können eine Instanz mit einem angehängten Snapshot-Zeitplan mit der Google Cloud CLI oder der REST API erstellen:
gcloud
Verwenden Sie zum Erstellen einer Instanz mit einem Snapshot-Zeitplan den Befehl gcloud workbench
instances create und geben Sie Ihre Ressourcenrichtlinien mit dem Flag --data-disk-resource-policies an.
Ersetzen Sie folgende Werte, bevor sie einen der Befehlsdaten verwenden:
-
INSTANCE_NAME: der Name Ihrer Vertex AI Workbench-Instanz; muss mit einem Buchstaben beginnen, gefolgt von bis zu 62 Kleinbuchstaben, Ziffern oder Bindestrichen (-) und darf nicht mit einem Bindestrich enden PROJECT_ID: Ihre Projekt-ID.LOCATION: die Zone, in der sich Ihre Instanz befinden soll-
MACHINE_TYPE: Der Maschinentyp der VM-Instanz, z. B.n2d-standard-2. REGION: die Region, in der sich die Ressourcenrichtlinie befindet-
RESOURCE_POLICY: Die Ressourcenrichtlinie, die auf das Datenlaufwerk angewendet werden soll.
Führen Sie folgenden Befehl aus:
Linux, macOS oder Cloud Shell
gcloud workbench instances create INSTANCE_NAME \ --project=PROJECT_ID \ --location=LOCATION \ --machine-type=MACHINE_TYPE \ --data-disk-resource-policies=projects/PROJECT_ID/regions/REGION/resourcePolicies/RESOURCE_POLICY
Windows (PowerShell)
gcloud workbench instances create INSTANCE_NAME ` --project=PROJECT_ID ` --location=LOCATION ` --machine-type=MACHINE_TYPE ` --data-disk-resource-policies=projects/PROJECT_ID/regions/REGION/resourcePolicies/RESOURCE_POLICY
Windows (cmd.exe)
gcloud workbench instances create INSTANCE_NAME ^ --project=PROJECT_ID ^ --location=LOCATION ^ --machine-type=MACHINE_TYPE ^ --data-disk-resource-policies=projects/PROJECT_ID/regions/REGION/resourcePolicies/RESOURCE_POLICY
REST
Wenn Sie eine Instanz mit einem Snapshot-Zeitplan erstellen möchten, verwenden Sie die Methode projects.locations.instances.create und legen Sie resourcePolicies in Ihrem DataDisk fest.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
PROJECT_ID: Ihre Projekt-ID.LOCATION: die Zone, in der sich Ihre Instanz befinden soll-
MACHINE_TYPE: Der Maschinentyp der VM-Instanz, z. B.n2d-standard-2. REGION: die Region, in der sich die Ressourcenrichtlinie befindet-
RESOURCE_POLICY: Die Ressourcenrichtlinie, die auf das Datenlaufwerk angewendet werden soll.
HTTP-Methode und URL:
POST https://notebooks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/instances
JSON-Text der Anfrage:
{
"gce_setup": {
"machine_type": "MACHINE_TYPE",
"data_disks": [
{
"resource_policies": [
"projects/PROJECT_ID/regions/REGION/resourcePolicies/RESOURCE_POLICY"
]
}
]
}
}
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"
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" | Select-Object -Expand Content
Einschränkungen des Sicherungsplaners
Beachten Sie beim Planen Ihres Projekts die folgenden Einschränkungen für geplante Sicherungen:
Sie müssen den Sicherungszeitplan beim Erstellen der Instanz hinzufügen. Wenn Ihre Instanz ohne Sicherungszeitplan erstellt wurde, sichern Sie die vorhandene Instanz, erstellen Sie eine neue Instanz mit einem Sicherungszeitplan und stellen Sie die Instanz mithilfe der Sicherung wieder her.
Der Sicherungszeitplan einer Instanz kann nicht geändert werden. Dazu gehört das Hinzufügen, Aktualisieren und Entfernen des Sicherungszeitplans.
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 Datenträger, das an die Instanz angehängt ist, erstellt ein neues Datenträger basierend auf dem Snapshot und hängt das neue Datenträger an die Instanz an.
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 Projektname, in dem sich der Snapshot befindet SNAPSHOT_NAME: der 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, stellen 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