Pour accéder aux données capturées dans un instantané immédiat, vous devez restaurer ou créer un disque à partir de l'instantané immédiat.
Cette page explique comment créer un disque à partir d'un instantané immédiat. Après avoir créé le disque, vous pouvez l'utiliser en l'associant à une machine virtuelle (VM).
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 services et aux API Google Cloud.
Pour exécuter du code ou des exemples depuis un environnement de développement local, vous pouvez vous authentifier auprès de Compute Engine comme suit :
Sélectionnez l'onglet correspondant à la façon dont vous prévoyez d'utiliser les exemples de cette page :
Console
Lorsque vous utilisez la console Google Cloud pour accéder aux services et aux API Google Cloud, vous n'avez pas besoin de configurer l'authentification.
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Définissez une région et une zone par défaut.
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
-
Rôles et autorisations requis
Pour obtenir les autorisations nécessaires pour créer un disque à partir d'un instantané immédiat, 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 section Gérer les accès.
Ces rôles prédéfinis contiennent les autorisations requises pour créer un disque à partir d'un instantané immédiat. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Les autorisations suivantes sont requises pour créer un disque à partir d'un instantané immédiat :
-
Pour créer un disque :
-
compute.disks.create
sur le projet de destination du nouveau disque -
compute.instantSnapshots.useReadOnly
sur l'instantané immédiat source
-
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
Restrictions
Les restrictions suivantes s'appliquent :
Lorsque vous créez un disque à partir d'un instantané immédiat, le nouveau disque possède toujours le même type, le même emplacement de stockage et le même chiffrement que le disque source de l'instantané.
Vous ne pouvez pas créer une VM directement à partir d'un instantané immédiat. Vous devez créer un disque à partir de l'instantané immédiat, puis utiliser le nouveau disque pour créer une VM.
Si le disque source de l'instantané immédiat utilise des clés de chiffrement gérées par le client ou fournies par le client, vous devez fournir la même clé de chiffrement lorsque vous créez un disque à partir de l'instantané immédiat.
Prenez l'exemple suivant : Imaginons que vous disposez d'un disque
DISK-1
chiffré avec une clé de chiffrement fournie par le client (CSEK),KEY-1
. Vous disposez également d'un instantané immédiat,IS-1
, créé à partir deDISK-1
. Pour créer un disque à partir deIS-1
, vous devez fournir la même clé,KEY-1
, lors de la création du disque.Si le disque est chiffré avec des clés de chiffrement gérées par le client (CMEK), vous ne devez fournir la clé que si vous utilisez REST ou gcloud CLI pour créer le disque. Si vous utilisez la console Google Cloud, vous n'avez pas besoin de spécifier la clé de chiffrement.
Créer un disque à partir d'un instantané immédiat
Un instantané immédiat est chiffré avec le même chiffrement que son disque source. La procédure de création d'un disque à partir d'un instantané immédiat dépend du mode de chiffrement du disque source de l'instantané immédiat.
Chaque disque source est chiffré avec l'une des méthodes suivantes :
- Clés appartenant à Google et gérées par Google Il s'agit de la valeur par défaut.
- Clés de chiffrement gérées par le client (CMEK)
- Clés de chiffrement fournies par le client (CSEK)
Pour en savoir plus sur le chiffrement d'un disque particulier, consultez la section Afficher les informations sur le chiffrement d'un disque.
Créer un disque à partir d'un instantané immédiat chiffré avec le chiffrement par défaut
Vous pouvez créer un disque à partir d'un instantané immédiat à l'aide de gcloud CLI, de la console Google Cloud ou de REST.
Console
Recherchez l'instantané immédiat que vous souhaitez restaurer :
Dans la console Google Cloud, accédez à la page Instantanés.
Cliquez sur l'onglet Instantanés immédiats.
Dans la colonne Nom, cliquez sur le nom de l'instantané immédiat que vous souhaitez restaurer.
Cliquez sur Créer un disque.
Dans le champ Nom, saisissez un nom pour le disque.
Facultatif : Dans le champ Description, saisissez des détails supplémentaires.
Vérifiez que le type de source du disque est défini sur Instantané immédiat.
Dans la liste Instantané immédiat source, sélectionnez l'instantané immédiat.
Facultatif : configurez des personnalisations supplémentaires pour le disque.
- Saisissez une taille : dans le champ Taille, spécifiez la taille du disque en Go. La taille doit être au moins égale à la taille du disque source de l'instantané.
- Programmez des sauvegardes : si vous souhaitez que Compute Engine crée des instantanés standards de ce nouveau disque selon une programmation, cochez la case Activer la programmation d'instantanés, puis choisissez une programmation d'instantanés. Sinon, décochez cette case.
Facultatif : pour organiser votre projet, ajoutez un ou plusieurs libellés.
Pour créer le disque, cliquez sur Créer.
gcloud
Utilisez la commande gcloud compute disks create
.
Les arguments que vous spécifiez varient selon que vous créez un disque zonal ou régional.
Créer un disque zonal
Spécifiez la zone avec l'option --zone
:
gcloud compute disks create DISK_NAME --zone=ZONE \ --source-instant-snapshot=SOURCE_INSTANT_SNAPSHOT_NAME
Remplacez les éléments suivants :
DISK_NAME
: le nom du nouveau disque.ZONE
: zone du nouveau disque, par exempleeurope-west1-a
.SOURCE_INSTANT_SNAPSHOT_NAME
: nom de l'instantané immédiat source.
Créer un disque régional
Spécifiez la région avec --region
et les zones de réplication cibles du nouveau disque avec --replica-zones
.
gcloud compute disks create DISK_NAME \ --region=REGION \ --source-instant-snapshot=SOURCE_INSTANT_SNAPSHOT_NAME \ --replica-zones=ZONE1,ZONE2
Remplacez les éléments suivants :
DISK_NAME
: le nom du nouveau disque.REGION
: la région dans laquelle se trouve le disque régional (par exemple,europe-west1
).SOURCE_INSTANT_SNAPSHOT_NAME
: le nom de l'instantané immédiat source.ZONE1,ZONE2
: les zones de la région où se trouvent les instances dupliquées des deux disques (par exemple,europe-west1-b,europe-west1-c
).
REST
Pour créer un disque zonal ou régional à partir d'un instantané immédiat, utilisez la méthode disks.insert. Le nouveau disque doit être du même type que celui du disque source de l'instantané immédiat. Par exemple, vous ne pouvez pas créer un disque régional à partir d'un instantané d'un disque zonal.
Créer un disque zonal
Envoyez une requête POST
en spécifiant l'instantané immédiat source.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/SOURCE_ZONE/disks/insert { "name": "NEW_DISK_NAME", "sourceInstantSnapshot": "projects/PROJECT/zones/SOURCE_ZONE/instantSnapshots/SOURCE_INSTANT_SNAPSHOT_NAME" }
Remplacez les éléments suivants :
PROJECT
: projet dans lequel créer le disque.SOURCE_ZONE
: zone où se trouve l'instantané immédiat (par exemple,us-central1-a
). Le disque sera créé dans cette zone.NEW_DISK_NAME
: nom unique du nouveau disque.SOURCE_INSTANT_SNAPSHOT_NAME
: nom de l'instantané immédiat source.
Créer un disque régional
Envoyez une requête POST
, en spécifiant l'instantané immédiat source et les zones dans lesquelles le disque doit être répliqué.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT/region/SOURCE_REGION/disks/insert { "name": "NEW_DISK_NAME", "sourceInstantSnapshot": "projects/PROJECT/regions/SOURCE_REGION/instantSnapshots/SOURCE_INSTANT_SNAPSHOT_NAME", "replicaZones": [ "projects/PROJECT/zones/ZONE1", "projects/PROJECT/zones/ZONE2" ] }
Remplacez les éléments suivants :
PROJECT
: projet dans lequel créer le disque.SOURCE_REGION
: région où se trouve l'instantané immédiat. Le disque sera créé dans cette région.NEW_DISK_NAME
: nom unique du nouveau disque.SOURCE_INSTANT_SNAPSHOT_NAME
: nom de l'instantané immédiat source.ZONE1,ZONE2
: les zones de la région pour les deux instances dupliquées du disque (par exemple,europe-west1-b
eteurope-west1-c
).
Réponse de requête d'API
Si la requête POST
aboutit, le corps de la réponse est un objet que vous pouvez interroger pour obtenir l'état de la création du disque. Pour en savoir plus, consultez la page Gérer les réponses de l'API.
Créer un disque à partir d'un instantané immédiat chiffré par CMEK ou CSEK
Console
Si l'instantané immédiat utilise le chiffrement par défaut de Google ou les CMEK, la console Google Cloud fournit automatiquement la clé de chiffrement lorsque vous créez un disque à partir de l'instantané immédiat. Sinon, si l'instantané immédiat est chiffré par CSEK, vous devez fournir la clé de chiffrement pour créer un disque.
Suivez les étapes de la section "Chiffrement géré par Google" en spécifiant la clé de chiffrement à l'aide des instructions suivantes :
- Dans la section Déchiffrement, saisissez la clé de chiffrement dans le champ Clé de chiffrement.
- Si la clé est encapsulée avec la clé RSA publique, sélectionnez Clé encapsulée.
gcloud
Utilisez la commande gcloud compute disks create
.
Si le disque source est chiffré par CMEK, utilisez le paramètre --kms-key
pour fournir le nom de la clé.
Si le disque source est chiffré par CSEK, utilisez le paramètre --csek-key-file
pour spécifier la clé de chiffrement du disque source.
CMEK
Pour créer un disque zonal à partir d'un instantané immédiat chiffré par CMEK, exécutez la commande suivante :
gcloud compute disks create NEW_DISK_NAME \ --zone=SOURCE_ZONE \ --source-instant-snapshot=SOURCE_INSTANT_SNAPSHOT_NAME \ --kms-key=projects/KMS_PROJECT_NAME/locations/KEYRING_LOCATION/keyRings/KEY_RING_NAME/cryptoKeys/KEY_NAME
Remplacez les éléments suivants :
NEW_DISK_NAME
: le nom du nouveau disque.SOURCE_ZONE
: zone où est stocké l'instantané immédiat (par exemple,europe-west1-a
).SOURCE_INSTANT_SNAPSHOT_NAME
: nom de l'instantané immédiat source.KMS_PROJECT_NAME
: projet contenant la clé.KEYRING_LOCATION
: emplacement du trousseau de clés auquel appartient la clé. Si le trousseau de clés est global, spécifiezglobal
. Sinon, spécifiez le nom de la région où se trouve le trousseau de clés, par exempleus-west1
.KEY_RING_NAME
: nom du trousseau de clés qui inclut la clé, par exemplekey-ring-1
.KEY_NAME
: nom de la clé utilisée pour chiffrer le disque.
CSEK
Pour créer un disque zonal à partir d'un instantané immédiat chiffré par CSEK, utilisez la commande suivante :
gcloud compute disks create NEW_DISK_NAME \ --zone=SOURCE_ZONE \ --source-instant-snapshot=SOURCE_INSTANT_SNAPSHOT_NAME \ --csek-key-file=PATH_TO_CSEK_JSON_FILE
Remplacez les éléments suivants :
NEW_DISK_NAME
: le nom du nouveau disque.SOURCE_ZONE
: zone où est stocké l'instantané immédiat (par exemple,europe-west1-a
).SOURCE_INSTANT_SNAPSHOT_NAME
: nom de l'instantané immédiat source.CSEK_JSON_FILE
: chemin d'accès à un fichier JSON contenant la clé. Consultez un exemple de format de fichier CSEK.
Pour créer un disque régional, remplacez l'option --zone
de l'exemple précédent par les options suivantes :
--region
: région du nouveau disque.--replica-zones
: zones de la région pour les deux instances dupliquées des disques.
REST
Pour créer un disque zonal ou régional à partir d'un instantané immédiat chiffré par CMEK ou CSEK, envoyez une requête POST
à la méthode disks.insert en utilisant les propriétés répertoriées dans la section Chiffrement géré par Google.
Fournissez également la clé de chiffrement du disque source dans le champ diskEncryptionKey
. Les propriétés du champ diskEncryptionKey
varient selon que le disque est chiffré avec une clé CMEK ou CSEK.
Les exemples suivants montrent comment créer un disque zonal pour chaque type de chiffrement.
CMEK
Dans le corps de la requête, spécifiez le nom de la clé avec la propriété diskEncryptionKey.kmsKeyName
:
{ "name": "NEW_DISK_NAME", "sourceInstantSnapshot": "projects/PROJECT/zones/SOURCE_ZONE/instantSnapshots/SOURCE_INSTANT_SNAPSHOT_NAME", "diskEncryptionKey": { "kmsKeyName": "projects/KMS_PROJECT/locations/LOCATION/keyRings/KEYRING_LOCATION/cryptoKeys/KEY_NAME" } }
Remplacez les éléments suivants :
NEW_DISK_NAME
: nom unique du nouveau disque.PROJECT
: projet dans lequel créer le disque.SOURCE_ZONE
: zone où se trouve l'instantané immédiat (par exemple,us-central1-a
). Le disque sera créé dans cette zone.SOURCE_INSTANT_SNAPSHOT_NAME
: nom de l'instantané immédiat source.KMS_PROJECT
: projet contenant la clé.LOCATION
: emplacement du trousseau de clés auquel appartient la clé. Si le trousseau de clés est global, spécifiezglobal
. Sinon, spécifiez le nom de la région où se trouve le trousseau de clés, par exempleus-west1
.KEY_RING
: nom du trousseau de clés qui inclut la clé, par exemple,key-ring-1
.KEY
: nom de la clé utilisée pour chiffrer le disque.
CSEK
Le corps de la requête varie selon que la clé CSEK utilisée pour chiffrer l'instantané immédiat est chiffrée par RSA ou non.
Pour utiliser une clé brute (non chiffrée par RSA), spécifiez-la dans la propriété diskEncryptionKey.rawKey
du corps de la requête :
POST https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/SOURCE_ZONE/disks/insert { "name": "NEW_DISK_NAME", "sourceInstantSnapshot": "projects/PROJECT/zones/SOURCE_ZONE/instantSnapshots/INSTANT_SNAPSHOT_NAME, "diskEncryptionKey": { "rawKey": "RAW_ENCRYPTION_KEY" } }
Remplacez les éléments suivants par les valeurs correspondantes :
PROJECT
: projet dans lequel créer le disque.SOURCE_ZONE
: zone où se trouve l'instantané immédiat (par exemple,us-central1-a
). Le disque sera créé dans cette zone.NEW_DISK_NAME
: nom unique du nouveau disque.SOURCE_INSTANT_SNAPSHOT_NAME
: nom de l'instantané immédiat source.RAW_ENCRYPTION_KEY
: clé utilisée pour chiffrer l'instantané immédiat et son disque source, par exempleSGVsbG8gZnJvbSBHb29nbGUgQ2xvdWQgUGxhdGZvcm0=
.
Pour utiliser une clé chiffrée par RSA, modifiez l'exemple précédent comme suit :
Envoyez une requête
POST
à la méthode disks.insert :POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/disks/insert
Spécifiez la clé dans la propriété
diskEncryptionKey.rsaEncryptedKey
du corps de la requête :"diskEncryptionKey": { "rsaEncryptedKey": "RSA_ENCRYPTED_KEY" }
Remplacez RSA_ENCRYPTED_KEY
par votre clé chiffrée.
Réponse de requête d'API
Si la requête POST
aboutit, le corps de la réponse est un objet que vous pouvez interroger pour obtenir l'état de la création du disque. Pour en savoir plus, consultez la page Gérer les réponses de l'API.