Vous pouvez créer une instance Confidential VM lors de la création d'une machine virtuelle Compute Engine.
Avant de commencer
Avant de créer une instance de Confidential VM, vous devez configurer votre environnement comme suit:
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine API.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine API.
- Facultatif: Pour utiliser les exemples de la CLI gcloud de ce guide :
- Installez la dernière version de la gcloud CLI ou appliquez la mise à jour correspondante.
- Définissez une région et une zone par défaut pour votre client qui est compatible avec les Confidential VM.
- Facultatif: Pour utiliser les exemples d'API de ce guide, configurez l'authentification pour vos requêtes. Découvrez-en davantage sur OAuth 2.0.
Créer une instance
Console
Pour créer une VM AMD SEV Confidential avec la console Google Cloud, procédez comme suit :
Dans Google Cloud Console, accédez à la page Instances de VM.
Cliquez sur Créer une instance.
Dans la section Service Confidential VM, cliquez sur Activer.
Dans la boîte de dialogue Activer l'informatique confidentielle, consultez la liste des paramètres mis à jour lorsque vous activez le service. Ils peuvent inclure les champs suivants, s'ils ont été définis sur des valeurs incompatibles.
Série et Type de machine. Pour en savoir plus, consultez la section Types de machines, processeurs et zones.
Région et Zone. Pour en savoir plus, consultez la section Types de machines, processeurs et zones.
Image du disque de démarrage. Pour en savoir plus, consultez la section Systèmes d'exploitation.
Pendant la maintenance de l'hôte Pour en savoir plus, consultez la section Définir la stratégie de maintenance de l'hôte d'une VM.
Carte d'interface réseau Pour plus d'informations, consultez la section Utiliser la carte d'interface réseau virtuelle Google.
Cliquez sur Activer.
Dans la section Configuration de la machine, développez Configurations avancées.
Pour la plate-forme de processeur, sélectionnez AMD Milan ou version ultérieure.
Vérifiez que vous êtes satisfait de ces paramètres, puis cliquez sur Créer.
Après avoir cliqué sur Créer, la page Instances de VM s'ouvre. Sur cette page, vous pouvez afficher l'état et les détails de votre nouvelle instance. Lorsqu'une icône
Disponible apparaît dans la colonne État de votre instance de Confidential VM, celle-ci est prête à l'emploi.
gcloud
Pour créer une instance de Confidential VM avec gcloud CLI, utilisez la sous-commande instances create
avec l'option --confidential-compute-type
.
gcloud compute instances create INSTANCE_NAME \
--confidential-compute-type=CONFIDENTIAL_COMPUTING_TECHNOLOGY \
--machine-type=MACHINE_TYPE_NAME \
--min-cpu-platform="CPU_PLATFORM" \
--maintenance-policy="MAINTENANCE_POLICY" \
--zone=ZONE_NAME \
--image-family=IMAGE_FAMILY_NAME \
--image-project=IMAGE_PROJECT \
--project=PROJECT_ID
Indiquez les valeurs suivantes :
INSTANCE_NAME
: nom de la nouvelle instance de VM.CONFIDENTIAL_COMPUTING_TECHNOLOGY
: type de technologie d'informatique confidentielle à utiliser. Choisissez l'une des valeurs suivantes :SEV
SEV_SNP
TDX
MACHINE_TYPE_NAME
: type de machine de la VM, par exemplen2d-standard-2
. Les types de machines valides pour les instances de VM Confidential sont déterminés par la technologie de calcul confidentiel que vous avez choisie. Consultez la section Types de machines, processeurs et zones.CPU_PLATFORM
: choisissez l'une des valeurs suivantes:Pour AMD SEV:
AMD Milan
(types de machines C2D ou N2D) ouAMD Genoa
(types de machines C3D).Pour AMD SEV-SNP:
AMD Milan
(types de machines N2D).Pour Intel TDX: supprimez cet indicateur.
MAINTENANCE_POLICY
: pour les types de machines N2D qui utilisent SEV, définissez cette valeur surMIGRATE
pour la prise en charge de la migration en direct. Pour tous les autres types de machines, définissez cette valeur surTERMINATE
, car ils ne sont pas compatibles avec la migration à chaud.ZONE_NAME
: zone compatible avec Confidential VM dans laquelle créer l'instance.IMAGE_FAMILY_NAME
: famille de l'image du système d'exploitation compatible avec les VM Confidential. Si vous ne spécifiez pas--image
, la dernière version de l'image est sélectionnée.IMAGE_PROJECT
: projet contenant l'image du système d'exploitation compatible.PROJECT_ID
: facultatif. ID du projet dans lequel créer la VM.
Exemple
Exécutez la commande suivante pour créer une instance n2d-standard-2
appelée my-instance
dans la zone us-central1-a
à l'aide d'AMD SEV-SNP:
gcloud compute instances create my-instance \
--machine-type=n2d-standard-2 \
--min-cpu-platform="AMD Milan" \
--zone=us-central1-a \
--confidential-compute-type=SEV_SNP \
--maintenance-policy=TERMINATE \
--image-family=ubuntu-2404-lts-amd64 \
--image-project=ubuntu-os-cloud
Réponse
Une réponse à une requête de création ressemble à l'exemple suivant:
Created [https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/instances/my-instance].
NAME: my-instance
ZONE: us-central1-a
MACHINE_TYPE: n2d-standard-2
PREEMPTIBLE:
INTERNAL_IP: 0.0.0.0
EXTERNAL_IP: 0.0.0.0
STATUS: RUNNING
REST
Pour créer une instance de VM Confidential, vous devez envoyer une requête POST avec le contenu de corps approprié.
Méthode HTTP et URL:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE_NAME/instances
Corps JSON de la requête :
{
"name": "INSTANCE_NAME",
"confidentialInstanceConfig": {
"confidentialInstanceType": "CONFIDENTIAL_COMPUTING_TECHNOLOGY"
},
"machineType": "zones/ZONE_NAME/machineTypes/MACHINE_TYPE_NAME",
"minCpuPlatform": "CPU_PLATFORM",
"disks": [
{
"boot": true,
"initializeParams": {
"sourceImage": "projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY_NAME"
}
}
],
"networkInterfaces": [
{
"nicType": "gVNIC"
}
],
"scheduling": {
"automaticRestart": true,
"nodeAffinities": [],
"preemptible": false,
"onHostMaintenance": MAINTENANCE_POLICY
}
}
Indiquez les valeurs suivantes :
PROJECT_ID
: ID du projet dans lequel créer la VM.ZONE_NAME
: zone compatible avec Confidential VM dans laquelle créer l'instance.INSTANCE_NAME
: nom de la nouvelle instance de VM.CONFIDENTIAL_COMPUTING_TECHNOLOGY
: type de technologie d'informatique confidentielle à utiliser. Choisissez l'une des valeurs suivantes :SEV
SEV_SNP
TDX
MACHINE_TYPE_NAME
: type de machine de la VM, par exemplen2d-standard-2
. Les types de machines valides pour les instances de VM Confidential sont déterminés par la technologie de calcul confidentiel que vous avez choisie. Consultez la section Types de machines, processeurs et zones.CPU_PLATFORM
: choisissez l'une des valeurs suivantes:Pour AMD SEV:
AMD Milan
(types de machines C2D ou N2D) ouAMD Genoa
(types de machines C3D).Pour AMD SEV-SNP:
AMD Milan
(types de machines N2D).Pour Intel TDX: supprimez cette paire clé-valeur.
IMAGE_PROJECT
: projet contenant l'image du système d'exploitation compatible.IMAGE_FAMILY_NAME
: famille de l'image du système d'exploitation compatible avec les VM Confidential. Si vous ne spécifiez pas--image
, la dernière version de l'image est sélectionnée.MAINTENANCE_POLICY
: pour les types de machines N2D qui utilisent SEV, définissez cette valeur surMIGRATE
pour la prise en charge de la migration en direct. Pour tous les autres types de machines, définissez cette valeur surTERMINATE
, car ils ne sont pas compatibles avec la migration à chaud.
Exemple
Exécutez l'une des commandes suivantes pour créer une instance n2d-standard-2
appelée my-instance
dans la zone us-central1-a
, dans le projet my-project
, à l'aide d'AMD SEV-SNP:
curl (Linux, macOS ou Cloud Shell)
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d '{ "machineType": "zones/us-central1-a/machineTypes/n2d-standard-2", "name": "my-instance", "minCpuPlatform": "AMD Milan", "confidentialInstanceConfig": { "confidentialInstanceType": "SEV_SNP" }, "disks": [ { "boot": true, "initializeParams": { "sourceImage": "projects/ubuntu-os-cloud/global/images/family/ubuntu-2404-lts-amd64" } } ], "networkInterfaces": [ { "nicType": "gVNIC" } ], "scheduling": { "automaticRestart": true, "nodeAffinities": [], "preemptible": false, "onHostMaintenance": "TERMINATE" } }' \ https://compute.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/instances
PowerShell (Windows)
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } $body = @" { "machineType": "zones/us-central1-a/machineTypes/n2d-standard-2", "name": "my-instance", "minCpuPlatform": "AMD Milan", "confidentialInstanceConfig": { "confidentialInstanceType": "SEV_SNP" }, "disks": [ { "boot": true, "initializeParams": { "sourceImage": "projects/ubuntu-os-cloud/global/images/family/ubuntu-2404-lts-amd64" } } ], "networkInterfaces": [ { "nicType": "gVNIC" } ], "scheduling": { "automaticRestart": true, "nodeAffinities": [], "preemptible": false, "onHostMaintenance": "TERMINATE" } } "@ Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body $body ` -Uri "https://compute.googleapis.com/compute/projects/my-project/zones/us-central1-a/instances" | Select-Object -Expand Content
Réponse
Une réponse à une requête de création ressemble à l'exemple suivant:
{
"kind": "compute#operation",
"id": "0000000000000000000",
"name": "operation-0000000000000-0000000000000-00000000-00000000",
"zone": "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a",
"operationType": "insert",
"targetLink": "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/instances/my-instance",
"targetId": "0000000000000000000",
"status": "RUNNING",
"user": "alex@example.com",
"progress": 0,
"insertTime": "2024-09-29T18:06:52.174-07:00",
"startTime": "2024-09-29T18:06:52.175-07:00",
"selfLink": "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/operations/operation-0000000000000-0000000000000-00000000-00000000"
}
Vous pouvez vérifier la progression de la création de la VM en envoyant une requête GET
à selfLink
:
GET https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE_NAME/operations/OPERATION_ID
Activer l'augmentation de la bande passante réseau pour les types de machines C2D
Les trois plus grandes formes de VM Compute Engine C2D (32, 56 et 112) sont compatibles avec la mise en réseau à bande passante élevée. Lorsque vous sélectionnez une configuration de bande passante réseau de niveau 1, la bande passante de transfert de données sortant passe de 32 Gbit/s par défaut à 50 ou 100 Gbit/s. Pour atteindre les vitesses de bande passante de niveau 1 plus élevées, l'instance doit exécuter le pilote de réseau virtuel gVNIC. Découvrez comment configurer une VM avec une bande passante plus élevée.
Étape suivante
Découvrez comment utiliser Cloud Monitoring pour valider vos instances Confidential VM.