Sauvegarder et restaurer des données à l'aide d'un instantané
Cette page explique comment utiliser un instantané pour sauvegarder et restaurer les données de votre instance Vertex AI Workbench.
Sauvegarder les données
Pour sauvegarder des données sur une instance Vertex AI Workbench, vous pouvez créer un instantané du disque de données de la machine virtuelle (VM) Compute Engine sous-jacente.
Vous pouvez créer un instantané du disque de données de votre instance à l'aide de la console Google Cloud , de la Google Cloud CLI ou de l'API REST :
Console
Dans la console Google Cloud , accédez à la page Instances.
Cliquez sur le nom de l'instance.
Sur la page Détails de l'instance, cliquez sur Afficher dans Compute Engine pour ouvrir Détails de la VM.
Dans la section Disques supplémentaires, cliquez sur le nom du disque de données. Le nom du disque de données est au format suivant :
INSTANCE_NAME-data-workspace.Cliquez sur Create snapshot (Créer un instantané).
Dans la boîte de dialogue Créer un instantané, cliquez sur Créer.
Compute Engine crée un instantané du disque de données.
gcloud
Pour créer un instantané du disque de données de votre instance, utilisez la commande gcloud compute snapshots create.
Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :
SNAPSHOT_NAME: nom de votre instantanéSOURCE_ZONE: zone où se trouve votre instanceINSTANCE_NAME: nom de l'instance-
STORAGE_LOCATION: emplacement multirégional Cloud Storage ou emplacement régional Cloud Storage dans lequel vous souhaitez stocker l'instantané. Vous ne pouvez spécifier qu'un seul emplacement de stockage.
Exécutez la commande suivante :
Linux, macOS ou 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
Pour créer un instantané du disque de données de votre instance, envoyez une requête POST à la méthode snapshots.insert de Compute Engine.
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
-
DESTINATION_PROJECT_ID: ID du projet dans lequel vous souhaitez créer l'instantané SNAPSHOT_NAME: nom de votre instantané-
SOURCE_PROJECT_ID: ID du projet dans lequel se trouve votre instance SOURCE_ZONE: zone où se trouve votre instanceINSTANCE_NAME: nom de l'instance-
STORAGE_LOCATION: emplacement multirégional Cloud Storage ou emplacement régional Cloud Storage dans lequel vous souhaitez stocker l'instantané. Vous ne pouvez spécifier qu'un seul emplacement de stockage.
Méthode HTTP et URL :
POST https://compute.googleapis.com/compute/v1/projects/DESTINATION_PROJECT_ID/global/snapshots
Corps JSON de la requête :
{
"name": "SNAPSHOT_NAME",
"sourceDisk": "projects/SOURCE_PROJECT_ID/zones/SOURCE_ZONE/disks/INSTANCE_NAME-data-workspace",
"storageLocations": [
"STORAGE_LOCATION"
],
}
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Enregistrez le corps de la requête dans un fichier nommé request.json, puis exécutez la commande suivante :
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
Enregistrez le corps de la requête dans un fichier nommé request.json, puis exécutez la commande suivante :
$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
Programmer une sauvegarde
Vous pouvez configurer un calendrier de sauvegarde pour une instance de notebook en associant une règle de ressources au disque de données.
Vous pouvez créer une instance à laquelle est associée une programmation d'instantanés à l'aide de la Google Cloud CLI ou de l'API REST :
gcloud
Pour créer une instance avec une programmation d'instantanés, utilisez la commande gcloud workbench
instances create et spécifiez vos règles de ressources à l'aide de l'option --data-disk-resource-policies.
Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :
-
INSTANCE_NAME: nom de votre instance Vertex AI Workbench. Ce nom doit commencer par une lettre, suivie de 62 caractères (lettres minuscules, chiffres ou traits d'union (-)), et ne peut pas se terminer par un trait d'union. PROJECT_ID: ID de votre projet.LOCATION: zone dans laquelle vous souhaitez placer votre instance.-
MACHINE_TYPE: type de machine de la VM de votre instance (par exemple,n2d-standard-2). REGION: région où se trouve la règle de ressource-
RESOURCE_POLICY: stratégie de ressources à appliquer au disque de données.
Exécutez la commande suivante :
Linux, macOS ou 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
Pour créer une instance avec une planification des instantanés, utilisez la méthode projects.locations.instances.create et définissez resourcePolicies dans votre DataDisk.
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
PROJECT_ID: ID de votre projetLOCATION: zone dans laquelle vous souhaitez placer votre instance.-
MACHINE_TYPE: type de machine de la VM de votre instance (par exemple,n2d-standard-2). REGION: région où se trouve la règle de ressource-
RESOURCE_POLICY: stratégie de ressources à appliquer au disque de données.
Méthode HTTP et URL :
POST https://notebooks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/instances
Corps JSON de la requête :
{
"gce_setup": {
"machine_type": "MACHINE_TYPE",
"data_disks": [
{
"resource_policies": [
"projects/PROJECT_ID/regions/REGION/resourcePolicies/RESOURCE_POLICY"
]
}
]
}
}
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Enregistrez le corps de la requête dans un fichier nommé request.json, puis exécutez la commande suivante :
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
Enregistrez le corps de la requête dans un fichier nommé request.json, puis exécutez la commande suivante :
$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
Limites du planificateur de sauvegarde
Tenez compte des limites suivantes concernant les sauvegardes planifiées lorsque vous planifiez votre projet :
Vous devez ajouter la programmation de sauvegarde lorsque vous créez l'instance. Si votre instance a été créée sans programmation de sauvegarde, sauvegardez l'instance existante, créez-en une avec une programmation de sauvegarde, puis restaurez l'instance à l'aide de la sauvegarde.
Il est impossible de modifier la planification des sauvegardes sur une instance. Cela inclut l'ajout, la modification et la suppression de la programmation des sauvegardes.
Restaurer des données à partir d'un instantané
Vous pouvez restaurer des données sur une instance à l'aide d'un instantané. Lorsque vous restaurez des données sur une instance, Vertex AI Workbench supprime le disque de données existant associé à l'instance, crée un disque de données basé sur l'instantané et associe le nouveau disque de données à l'instance.
Vous pouvez restaurer des données sur une instance à l'aide de la gcloud CLI ou de l'API REST :
gcloud
Pour restaurer des données sur une instance, utilisez la commande gcloud workbench instances restore.
Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :
INSTANCE_NAME: nom de l'instanceLOCATION: zone où se trouve votre instance-
SNAPSHOT_PROJECT_NAME: nom du projet dans lequel se trouve votre instantané SNAPSHOT_NAME: nom de l'instantané à restaurer
Exécutez la commande suivante :
Linux, macOS ou 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
Pour restaurer des données sur une instance, envoyez une requête POST à la méthode projects.locations.instances.restore.
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
PROJECT_ID: ID de votre projet.LOCATION: zone où se trouve votre instanceINSTANCE_ID: ID de votre instance-
SNAPSHOT_ID: ID de l'instantané à restaurer. Pour obtenir l'ID d'un instantané, utilisez la méthode snapshots.get de Compute Engine. SNAPSHOT_PROJECT_ID: ID du projet de l'instantané
Méthode HTTP et URL :
POST https://notebooks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID:restore
Corps JSON de la requête :
{
"snapshot": {
{
"snapshotId": SNAPSHOT_ID,
"projectId": SNAPSHOT_PROJECT_ID
}
}
}
Pour envoyer votre requête, choisissez l'une des options suivantes :
curl
Enregistrez le corps de la requête dans un fichier nommé request.json, puis exécutez la commande suivante :
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
Enregistrez le corps de la requête dans un fichier nommé request.json, puis exécutez la commande suivante :
$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