Les instantanés de disque standards vous permettent de sauvegarder régulièrement des données de votre Persistent Disk et de votre Google Cloud Hyperdisk.
Vous pouvez afficher, répertorier et supprimer des instantanés de disque. Vous pouvez également partager des instantanés entre plusieurs projets.
Avant de commencer
-
Si ce n'est pas déjà fait, configurez l'authentification.
L'authentification est le processus permettant de valider votre identité pour accéder aux Google Cloud services et aux API.
Pour exécuter du code ou des exemples depuis un environnement de développement local, vous pouvez vous authentifier auprès de Compute Engine en sélectionnant l'une des options suivantes:
Select the tab for how you plan to use the samples on this page:
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
REST
Pour utiliser les exemples d'API REST de cette page dans un environnement de développement local, vous devez utiliser les identifiants que vous fournissez à gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Pour en savoir plus, consultez la section S'authentifier pour utiliser REST dans la documentation sur l'authentification Google Cloud.
-
Rôles et autorisations requis
Pour obtenir les autorisations nécessaires pour gérer les instantanés standards, demandez à votre administrateur de vous accorder les rôles IAM suivants sur le projet :
-
Administrateur d'instances Compute (v1) (
roles/compute.instanceAdmin.v1
) - Pour se connecter à une VM pouvant s'exécuter en tant que compte de service :
Utilisateur du compte de service (v1) (
roles/iam.serviceAccountUser
)
Pour en savoir plus sur l'attribution de rôles, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.
Ces rôles prédéfinis contiennent les autorisations requises pour gérer les instantanés standards. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Les autorisations suivantes sont requises pour gérer les instantanés standards:
-
Pour répertorier les instantanés :
compute.snapshots.list
sur le projet -
Pour afficher des informations sur un instantané :
compute.snapshots.get
sur l'instantané -
Pour supprimer un instantané :
compute.snapshots.delete
sur l'instantané -
Pour supprimer des instantanés basés sur un filtre :
-
compute.snapshots.delete
sur l'instantané compute.snapshots.list
sur le projet
-
-
Pour partager des données d'instantané entre projets :
-
compute.storageAdmin
sur le projet (pour accéder à tous les instantanés standards) -
compute.disks.create
sur le projet avec lequel partager -
compute.snapshots.create
sur le projet source compute.disks.createSnapshot
sur le disque source
-
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
Afficher les instantanés standards dans un projet ou un emplacement
Vous pouvez afficher ou répertorier les instantanés standards dans un projet ou un emplacement à l'aide de la gcloud CLI, de la console Google Cloud ou de REST.
Dans Google Cloud Console, accédez à la page Instantanés.
Dans l'onglet Instantanés, vous pouvez afficher les instantanés standards du projet en cours.
Facultatif. Affinez les résultats à l'aide du champ Filtre filter_list. Saisissez un nom ou une valeur de propriété dans le champ Filtre, ou choisissez parmi les propriétés disponibles.
Pour afficher la liste des instantanés disponibles pour un projet particulier, utilisez la commande gcloud compute snapshots list
.
gcloud compute snapshots list --project=PROJECT_ID
Facultatif. Remplacez PROJECT_ID
par l'ID du projet.
Si vous omettez cette option, le projet actuel est utilisé. Vous pouvez définir le projet par défaut pour votre session à l'aide de la commande gcloud CLI gcloud config set project PROJECT_ID
.
Pour afficher la liste des instantanés disponibles pour un projet particulier, envoyez une requête GET
à la méthode snapshots.list
.
GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID /global/snapshots
Remplacez PROJECT_ID
par l'ID du projet.
Afficher les instantanés standards d'un disque
Vous pouvez afficher la liste des instantanés standards pour un disque à l'aide de la console Google Cloud, de la gcloud CLI ou de REST.
Dans Google Cloud Console, accédez à la page Instantanés.
L'onglet Instantanés affiche la liste de tous les instantanés standards du projet.
Filtrez les résultats par disque source :
Saisissez
Source disk:
dans le champ Filtre filter_list ou cliquez sur le champ Filtre, puis sélectionnez l'option la valeurSource disk
dans la liste Propriétés.Sélectionnez le nom du disque dans la liste Valeurs qui s'affiche à côté de
Source disk:
dans le champ Filtre.Les instantanés affichés dans la console affichent désormais tous les instantanés standards pour le disque spécifié.
Si vous ne voyez pas le nom d'un disque dans la liste Valeurs, saisissez dans le champ Filtre à côté de
Source disk:
, saisissez les premières lettres du nom du disque source pour modifier la liste des valeurs qui s'affiche.
Répertoriez les instantanés standards d'un disque à l'aide de la commande gcloud compute snapshots list
et de l'argument --filter
.
Répertoriez les instantanés standards pour un disque zonal :
gcloud compute snapshots list --filter="sourceDisk:projects/
PROJECT_ID /zones/SOURCE_ZONE /disks/DISK_NAME Répertoriez les instantanés standards pour un disque régional :
gcloud compute snapshots list --filter=sourceDisk:projects/
PROJECT_ID /regions/SOURCE_REGION /disks/DISK_NAME
Remplacez les éléments suivants :
PROJECT_ID
: ID du projet.SOURCE_ZONE
: (disques zonaux uniquement) nom de la zone pour le disque, par exemple,us-west1-a
.SOURCE_REGION
: (disques régionaux uniquement) nom de la région pour le disque, par exemple,us-west1
.DISK_NAME
: nom du disque, par exempledisk-1
.
Répertoriez les instantanés standards pour un disque zonal ou régional en envoyant une requête GET
à la méthode snapshots.list
.
Utilisez le paramètre de requête filter=sourceDisk
pour spécifier le nom du disque.
Répertoriez les instantanés standards pour un disque zonal :
GET https://compute.googleapis.com/compute/v1/projects/
PROJECT_ID /global/snapshots?filter=sourceDisk:'https://www.googleapis.com/compute/v1/projects/PROJECT_ID /zones/SOURCE_ZONE /disks/DISK_NAME 'Répertoriez les instantanés standards pour un disque régional :
GET https://compute.googleapis.com/compute/v1/projects/
PROJECT_ID /global/snapshots?filter=sourceDisk:'https://www.googleapis.com/compute/v1/projects/PROJECT_ID /regions/SOURCE_REGION /disks/DISK_NAME '
Remplacez les éléments suivants :
PROJECT_ID
: ID du projet.SOURCE_ZONE
: (disques zonaux uniquement) nom de la zone pour le disque, par exemple,us-west1-a
.SOURCE_REGION
: (disques régionaux uniquement) nom de la région pour le disque, par exemple,us-west1
.DISK_NAME
: nom du disque source, par exempledisk-1
.
Afficher les informations sur un instantané standard
Récupérez des informations détaillées sur un instantané standard, telles que son heure de création, son disque source et sa taille, à l'aide de la console Google Cloud, de la Google Cloud CLI ou de REST.
Dans Google Cloud Console, accédez à la page Instantanés.
Dans l'onglet Instantanés, affichez la liste des instantanés du projet.
Dans la colonne Nom, cliquez sur le nom de l'instantané standard. La page Détails de l'instantané de l'instantané sélectionné s'affiche, indiquant ses propriétés.
Pour afficher des informations sur un instantané standard, exécutez la commande gcloud compute snapshots describe
.
gcloud compute snapshots describeSNAPSHOT_NAME
Remplacez SNAPSHOT_NAME
par le nom de l'instantané standard.
Envoyez une requête GET
à la méthode snapshots.get
.
GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID /global/snapshots/SNAPSHOT_NAME
Remplacez les éléments suivants :
PROJECT_ID
: nom du projet contenant l'instantané standard.SNAPSHOT_NAME
: nom de l'instantané standard.
Supprimer un instantané
Compute Engine utilise des instantanés incrémentiels qui ne contiennent que les données modifiées depuis l'instantané précédent. Les instantanés ultérieurs peuvent nécessiter des informations stockées dans un instantané précédent. Par conséquent, notez que la suppression d'un instantané ne supprime pas nécessairement toutes les données qu'il contient.
Pour en savoir plus sur la suppression des instantanés, consultez la page Suppression d'instantanés.
Accédez à la page Instantanés dans la console Google Cloud.
Sélectionnez un ou plusieurs instantanés que vous souhaitez supprimer.
En haut de la page Instantanés, cliquez sur Supprimer.
Pour supprimer un instantané, utilisez la commande gcloud compute snapshots delete
.
gcloud compute snapshots delete SNAPSHOT_NAME
Remplacez SNAPSHOT_NAME par le nom de l'instantané que vous souhaitez supprimer.
Envoyez une requête DELETE
à la méthode snapshots.delete
pour supprimer des instantanés.
DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID /global/snapshots/SNAPSHOT_NAME
Remplacez les éléments suivants :
- PROJECT_ID : nom de votre projet
- SNAPSHOT_NAME: nom de l'instantané à supprimer.
Supprimer plusieurs instantanés en fonction d'un filtre
Compute Engine utilise des instantanés incrémentiels qui ne contiennent que les données modifiées depuis l'instantané précédent. Étant donné que les instantanés suivants peuvent nécessiter des informations stockées dans un instantané précédent, la suppression d'un instantané ne supprime pas nécessairement toutes les données qu'il contient.
Pour en savoir plus sur la suppression des instantanés, consultez la page Suppression d'instantanés.
Vous pouvez supprimer un certain nombre d'instantanés en fonction d'un filtre donné. Pour en savoir plus sur l'utilisation des filtres avec gcloud CLI, consultez la page Filtres de sujets de gcloud CLI.
Pour supprimer les instantanés, utilisez une combinaison de la commande gcloud compute snapshots list
avec un filtre donné, et de la commande gcloud compute snapshots delete
avec xargs
.
gcloud compute snapshots list --filter="EXPRESSION " --uri | xargs gcloud compute snapshots delete
Remplacez EXPRESSION
par un filtre de sujet gcloud CLI.
Par exemple, --filter="creationTimestamp<'2023-12-31'"
supprime tous les instantanés créés avant le 31 décembre 2023.
Partager des données d'instantané entre des projets appartenant à la même organisation
Vous pouvez utiliser cette procédure pour déplacer des données d'un disque d'un projet vers un disque d'un autre projet au sein de la même organisation.
Créez un instantané standard dans le projet de destination en utilisant la commande
gcloud compute snapshots create
. Par exemple, pour créer un instantané d'un disque Persistent Disk ou Hyperdisk zonal, exécutez la commande suivante:gcloud compute snapshots create
SNAPSHOT_NAME \ --source-disk https://www.googleapis.com/compute/v1/projects/SOURCE_PROJECT_ID /zones/ZONE /disks/SOURCE_DISK_NAME \ --projectDESTINATION_PROJECT_ID Remplacez les éléments suivants :
- SNAPSHOT_NAME: nom du nouvel instantané.
- SOURCE_PROJECT_ID: ID du projet pour le disque source.
- ZONE : zone du disque source.
- SOURCE_DISK_NAME : nom du disque source.
- DESTINATION_PROJECT_ID : ID du projet de destination pour le nouvel instantané.
Dans le projet de destination, créez un disque zonal ou régional basé sur l'instantané en utilisant la commande
gcloud compute disks create
:gcloud compute disks create
DISK_NAME \ --source-snapshotSNAPSHOT_NAME \ --projectDESTINATION_PROJECT_ID Remplacez les éléments suivants :
- DISK_NAME : nom du nouveau disque.
- SNAPSHOT_NAME : nom de l'instantané.
- DESTINATION_PROJECT_ID : ID du projet de destination pour le nouveau disque.
Créez un instantané standard dans le projet de destination en appelant la méthode
snapshots.insert
. Par exemple, pour prendre un instantané d'un disque Persistent Disk ou Hyperdisk zonal, exécutez la requête suivante:POST https://compute.googleapis.com/compute/v1/projects/
DESTINATION_PROJECT_ID /global/snapshots { "name":SNAPSHOT_NAME "sourceDisk": "projects/SOURCE_PROJECT_ID /zones/SOURCE_ZONE /disks/SOURCE_DISK_NAME }Remplacez les éléments suivants :
- DESTINATION_PROJECT_ID : ID du projet de destination pour le nouvel instantané.
- SNAPSHOT_NAME : nom de l'instantané.
- SOURCE_PROJECT_ID : ID de projet du disque source.
- SOURCE_ZONE : zone du disque source.
- SOURCE_DISK_NAME : nom du disque source.
Dans le projet de destination, créez un disque zonal ou régional basé sur l'instantané en utilisant la méthode zonale
disks.insert
ou la méthode régionaleregionDisks.insert
.Par exemple, pour créer un disque zonal, envoyez la requête suivante :
POST https://compute.googleapis.com/compute/v1/projects/
DESTINATION_PROJECT_ID /zones/DESTINATION_ZONE /disks { "name":DISK_NAME "sourceSnapshot":SNAPSHOT_NAME }Remplacez les éléments suivants :
- DESTINATION_PROJECT_ID : ID du projet de destination pour le nouveau disque.
- DESTINATION_ZONE: zone du projet de destination pour le nouveau disque.
- DISK_NAME : nom du nouveau disque.
- SNAPSHOT_NAME : nom de l'instantané.
Pour obtenir la liste des instantanés disponibles, consultez la section Afficher les instantanés standards dans un projet ou un emplacement.
Partager un instantané entre des projets de différentes organisations
Vous pouvez utiliser cette procédure pour partager un instantané standard dans un projet d'une organisation avec un autre projet dans une autre organisation.
Dans le projet source, créez un disque basé sur l'instantané à l'aide de la commande
gcloud compute disks create
.gcloud compute disks create
DISK_NAME \ --source-snapshotSNAPSHOT_NAME \ --projectSOURCE_PROJECT_ID \ --zoneZONE Remplacez les éléments suivants :
- DISK_NAME : nom du nouveau disque.
- SNAPSHOT_NAME : nom de l'instantané.
- SOURCE_PROJECT_ID: ID du projet source.
- ZONE : zone dans laquelle créer le disque.
Ce disque est un disque temporaire qui n'est créé que pour copier l'instantané sur plusieurs organisations.
Dans le projet de destination, créez un instantané à l'aide de la commande
gcloud compute snapshots create
.Par exemple, pour créer un instantané à l'aide du disque zonal créé à la première étape, exécutez la commande suivante:
gcloud compute snapshots create
SNAPSHOT_NAME \ --source-disk https://www.googleapis.com/compute/v1/projects/SOURCE_PROJECT_ID /zones/ZONE /disks/DISK_NAME \ --projectDESTINATION_PROJECT_ID Remplacez les éléments suivants :
- SNAPSHOT_NAME : nom de l'instantané.
- SOURCE_PROJECT_ID: ID du projet contenant le disque source.
- ZONE : zone du disque source.
- DISK_NAME: nom du disque créé à l'étape 1.
- DESTINATION_PROJECT_ID : ID du projet de destination pour le nouvel instantané.
Pour obtenir la liste des instantanés disponibles, consultez la section Afficher les instantanés standards dans un projet ou un emplacement.
Supprimez le disque temporaire créé à la première étape à l'aide de la commande
gcloud compute disks delete
.gcloud compute disks delete
DISK_NAME \ --projectSOURCE_PROJECT_ID --zoneZONE Remplacez les éléments suivants :
- DISK_NAME: nom du disque créé à l'étape 1.
- SOURCE_PROJECT_ID: ID du projet contenant le disque source.
- ZONE : zone du disque.
Dans le projet source, créez un disque zonal ou régional basé sur l'instantané à l'aide de la méthode
disks.insert
zonal.Par exemple, pour créer un disque zonal, envoyez la requête suivante :
POST https://compute.googleapis.com/compute/v1/projects/
SOURCE_PROJECT_ID /zones/SOURCE_ZONE /disks { "name":DISK_NAME "sourceSnapshot":SNAPSHOT_NAME }Remplacez les éléments suivants :
- SOURCE_PROJECT_ID : ID du projet source pour le nouveau disque.
- SOURCE_ZONE: zone du nouveau disque.
- DISK_NAME : nom du nouveau disque.
- SNAPSHOT_NAME : nom de l'instantané.
Ce disque est un disque temporaire qui n'est créé que pour copier l'instantané sur plusieurs organisations.
Créez un instantané dans le projet de destination en appelant la méthode
snapshots.insert
.Par exemple, pour créer un instantané à l'aide du disque zonal créé à la première étape, exécutez la commande suivante:
POST https://compute.googleapis.com/compute/v1/projects/
DESTINATION_PROJECT_ID /global/snapshots { "name":SNAPSHOT_NAME "sourceDisk": "projects/SOURCE_PROJECT_ID /zones/SOURCE_ZONE /disks/DISK_NAME }Remplacez les éléments suivants :
- DESTINATION_PROJECT_ID : ID du projet de destination pour le nouvel instantané.
- SNAPSHOT_NAME : nom de l'instantané.
- SOURCE_PROJECT_ID: ID du projet contenant le disque source.
- SOURCE_ZONE : zone du disque source.
- DISK_NAME : nom du disque source.
Supprimez le disque temporaire créé à la première étape à l'aide de la méthode
disks.delete
.DELETE https://compute.googleapis.com/compute/v1/projects/
SOURCE_PROJECT_ID /zones/SOURCE_ZONE /disks/DISK_NAME Remplacez les éléments suivants :
- SOURCE_PROJECT_ID: ID du projet contenant le disque temporaire.
- SOURCE_ZONE : zone du disque.
- DISK_NAME: nom du disque temporaire créé à l'étape 1.
Étapes suivantes
- Découvrez comment créer des instantanés programmés pour des disques.
- Apprenez à créer une image disque à partir de votre instantané.