Ce document explique comment créer une instance de machine virtuelle (VM) à l'aide d'une image de disque de démarrage, d'un instantané de disque de démarrage ou d'une image de conteneur. Certaines images sont compatibles avec les fonctionnalités de sécurité de VM protégée, comme le micrologiciel compatible UEFI, le démarrage sécurisé et le démarrage mesuré protégé par vTPM. Sur les VM protégées, vTPM et la surveillance de l'intégrité sont activés par défaut.
Lors de la création de votre VM, vous pouvez lui créer un ou plusieurs disques. Vous pouvez également ajouter des disques à la VM après sa création. Compute Engine démarre automatiquement l'instance de VM après sa création.
Lors de la création d'une VM, vous pouvez également ajouter plusieurs interfaces réseau. Pour limiter l'exposition de votre VM aux menaces sur Internet, vous pouvez omettre l'adresse IP externe lorsque vous ajoutez une interface réseau à l'instance. Dans ce cas, la VM est accessible uniquement à partir d'autres VM du même réseau VPC ou d'un réseau associé, sauf si vous configurez Cloud NAT.
Si vous créez une VM pour la première fois, consultez le guide de démarrage rapide sur l'utilisation d'une VM Linux ou le guide de démarrage rapide sur l'utilisation d'une VM Windows Server.
Pour la création de VM plus spécifiques ou complexes, veuillez consulter les ressources suivantes :
- Créer une VM qui utilise un compte de service géré par l'utilisateur.
- Créer des instances Windows Server.
- Créer des instances SQL Server.
- Créer des instances sur des nœuds à locataire unique.
- Créer une instance de VM avec un nom d'hôte personnalisé.
- Créer des instances de VM qui utilisent l'interface réseau gVNIC.
- Créer et démarrer une instance de VM Arm.
- Créer une instance de VM avec des GPU associés.
- Créer une instance de VM avec une image HPC (calcul haute performance).
- Créer des VM de manière groupée.
- Créer une instance de VM avec une programmation d'instances associée.
- Créer un groupe d'instances géré (MIG).
- Créer une instance Confidential VM.
- Réserver des instances et consommer des instances réservées.
- Configurer une instance de VM avec une bande passante plus élevée.
Si vous utilisez une licence existante, consultez la page Bring Your Own License.
Avant de commencer
- Lorsque vous créez des VM à partir d'images ou de disques à l'aide de la Google Cloud CLI ou de REST, la limite est de 20 instances de VM par seconde. Si vous devez créer un nombre plus élevé de VM par seconde, demandez une augmentation de limite de quota pour la ressource Images.
-
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.
Terraform
Pour utiliser les exemples Terraform de cette page dans un environnement de développement local, installez et initialisez gcloud CLI, puis configurez le service Identifiants par défaut de l'application à l'aide de vos identifiants utilisateur.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create local authentication credentials for your user account:
gcloud auth application-default login
Pour en savoir plus, consultez les sections sur Configurer l'authentification pour un environnement de développement local.
C#
Pour utiliser les exemples .NET de cette page dans un environnement de développement local, installez et initialisez gcloud CLI, puis configurez le service Identifiants par défaut de l'application à l'aide de vos identifiants utilisateur.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create local authentication credentials for your user account:
gcloud auth application-default login
Pour en savoir plus, consultez les sections sur Configurer l'authentification pour un environnement de développement local.
Go
Pour utiliser les exemples Go de cette page dans un environnement de développement local, installez et initialisez gcloud CLI, puis configurez le service Identifiants par défaut de l'application à l'aide de vos identifiants utilisateur.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create local authentication credentials for your user account:
gcloud auth application-default login
Pour en savoir plus, consultez les sections sur Configurer l'authentification pour un environnement de développement local.
Java
Pour utiliser les exemples Java de cette page dans un environnement de développement local, installez et initialisez gcloud CLI, puis configurez le service Identifiants par défaut de l'application à l'aide de vos identifiants utilisateur.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create local authentication credentials for your user account:
gcloud auth application-default login
Pour en savoir plus, consultez les sections sur Configurer l'authentification pour un environnement de développement local.
Node.js
Pour utiliser les exemples Node.js de cette page dans un environnement de développement local, installez et initialisez gcloud CLI, puis configurez le service Identifiants par défaut de l'application à l'aide de vos identifiants utilisateur.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create local authentication credentials for your user account:
gcloud auth application-default login
Pour en savoir plus, consultez les sections sur Configurer l'authentification pour un environnement de développement local.
PHP
Pour utiliser les exemples PHP de cette page dans un environnement de développement local, installez et initialisez gcloud CLI, puis configurez le service Identifiants par défaut de l'application à l'aide de vos identifiants utilisateur.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create local authentication credentials for your user account:
gcloud auth application-default login
Pour en savoir plus, consultez les sections sur Configurer l'authentification pour un environnement de développement local.
Python
Pour utiliser les exemples Python de cette page dans un environnement de développement local, installez et initialisez gcloud CLI, puis configurez le service Identifiants par défaut de l'application à l'aide de vos identifiants utilisateur.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create local authentication credentials for your user account:
gcloud auth application-default login
Pour en savoir plus, consultez les sections sur Configurer l'authentification pour un environnement de développement local.
Ruby
Pour utiliser les exemples Ruby de cette page dans un environnement de développement local, installez et initialisez gcloud CLI, puis configurez le service Identifiants par défaut de l'application à l'aide de vos identifiants utilisateur.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create local authentication credentials for your user account:
gcloud auth application-default login
Pour en savoir plus, consultez les sections sur Configurer l'authentification pour un environnement de développement local.
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 requis
Pour obtenir les autorisations nécessaires à la création de VM, demandez à votre administrateur de vous attribuer le rôle IAM Administrateur d'instances Compute (v1) (roles/compute.instanceAdmin.v1
) sur le projet.
Pour en savoir plus sur l'attribution de rôles, consultez la section Gérer les accès.
Ce rôle prédéfini contient les autorisations requises pour créer des VM. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Les autorisations suivantes sont requises pour créer des VM :
-
compute.instances.create
sur le projet -
Pour créer la VM à l'aide d'une image personnalisée :
compute.images.useReadOnly
sur l'image -
Pour créer la VM à l'aide d'un instantané :
compute.snapshots.useReadOnly
sur l'instantané -
Pour créer la VM à l'aide d'un modèle d'instance :
compute.instanceTemplates.useReadOnly
sur le modèle d'instance -
Pour attribuer un ancien réseau à la VM :
compute.networks.use
sur le projet -
Pour spécifier une adresse IP statique pour la VM :
compute.addresses.use
sur le projet -
Pour attribuer une adresse IP externe à la VM, en cas d'utilisation d'un ancien réseau :
compute.networks.useExternalIp
sur le projet -
Pour spécifier un sous-réseau pour la VM :
compute.subnetworks.use
sur le projet ou sur le sous-réseau choisi -
Pour attribuer une adresse IP externe à la VM, en cas d'utilisation d'un réseau VPC :
compute.subnetworks.useExternalIp
sur le projet ou sur le sous-réseau choisi -
Pour définir les métadonnées d'instance de VM pour la VM :
compute.instances.setMetadata
sur le projet -
Pour définir des tags pour la VM :
compute.instances.setTags
sur la VM -
Pour définir des libellés pour la VM :
compute.instances.setLabels
sur la VM -
Pour définir un compte de service à utiliser avec la VM :
compute.instances.setServiceAccount
sur la VM -
Pour créer un disque pour la VM :
compute.disks.create
sur le projet -
Pour associer un disque existant en mode lecture seule ou en mode lecture-écriture :
compute.disks.use
sur le disque -
Pour associer un disque existant en mode lecture seule :
compute.disks.useReadOnly
sur le disque
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
Créer une instance de VM à partir d'une image
Cette section explique comment créer une VM à partir d'une image d'OS publique ou d'une image personnalisée. Une VM contient un bootloader, un système de fichiers de démarrage et une image de l'OS.
Afficher une liste d'images publiques disponibles sur Compute Engine
Avant de créer une VM à l'aide d'une image publique, consultez la liste des images publiques disponibles sur Compute Engine.
Pour plus d'informations sur les fonctionnalités disponibles avec chaque image publique, consultez la section Compatibilité des fonctionnalités par système d'exploitation.
Console
Dans la console Google Cloud, accédez à la page Images.
gcloud
Exécutez la commande suivante :
gcloud compute images list
Notez le nom de l'image ou de la famille d'images, ainsi que le nom du projet contenant l'image.
Facultatif : Pour déterminer si l'image est compatible avec les fonctionnalités de VM protégée, exécutez la commande suivante :
gcloud compute images describe IMAGE_NAME \ --project=IMAGE_PROJECT
Remplacez les éléments suivants :
IMAGE_NAME
: nom de l'image pour laquelle vérifier la compatibilité avec les fonctionnalités de VM protégéeIMAGE_PROJECT
: projet contenant l'image
Si l'image est compatible avec les fonctionnalités de VM protégée, la ligne suivante apparaît dans le résultat :
type: UEFI_COMPATIBLE
.
C#
Avant d'essayer cet exemple, suivez les instructions de configuration pour C# décrites dans le Guide de démarrage rapide de Compute Engine à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API C# Compute Engine.
Pour vous authentifier auprès de Compute Engine, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Go
Avant d'essayer cet exemple, suivez les instructions de configuration pour Go décrites dans le Guide de démarrage rapide de Compute Engine à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Go Compute Engine.
Pour vous authentifier auprès de Compute Engine, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Java
Avant d'essayer cet exemple, suivez les instructions de configuration pour Java décrites dans le Guide de démarrage rapide de Compute Engine à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Java Compute Engine.
Pour vous authentifier auprès de Compute Engine, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Node.js
Avant d'essayer cet exemple, suivez les instructions de configuration pour Node.js décrites dans le Guide de démarrage rapide de Compute Engine à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Node.js Compute Engine.
Pour vous authentifier auprès de Compute Engine, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
PHP
Avant d'essayer cet exemple, suivez les instructions de configuration pour PHP décrites dans le Guide de démarrage rapide de Compute Engine à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API PHP Compute Engine.
Pour vous authentifier auprès de Compute Engine, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Python
Avant d'essayer cet exemple, suivez les instructions de configuration pour Python décrites dans le Guide de démarrage rapide de Compute Engine à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Python Compute Engine.
Pour vous authentifier auprès de Compute Engine, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Ruby
Avant d'essayer cet exemple, suivez les instructions de configuration pour Ruby décrites dans le Guide de démarrage rapide de Compute Engine à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Ruby Compute Engine.
Pour vous authentifier auprès de Compute Engine, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
REST
Exécutez la commande suivante :
GET https://compute.googleapis.com/compute/v1/projects/IMAGE_PROJECT/global/images/
Notez le nom de l'image ou de la famille d'images, ainsi que le nom du projet contenant l'image.
Facultatif : Pour déterminer si l'image est compatible avec les fonctionnalités de VM protégée, exécutez la commande suivante :
GET https://compute.googleapis.com/compute/v1/projects/IMAGE_PROJECT/global/images/IMAGE_NAME
Remplacez les éléments suivants :
IMAGE_PROJECT
: projet contenant l'imageIMAGE_NAME
: nom de l'image pour laquelle vérifier la compatibilité avec les fonctionnalités de VM protégée
Si l'image est compatible avec les fonctionnalités de VM protégée, la ligne suivante apparaît dans le résultat :
type: UEFI_COMPATIBLE
.
Créer une instance de VM à partir d'une image publique
Google, les communautés Open Source et les fournisseurs tiers fournissent et gèrent des images d'OS publiques. Par défaut, tous les projets Google Cloud peuvent créer des VM à partir d'images d'OS publiques. Toutefois, si votre projet Google Cloud dispose d'une liste définie d'images de confiance, vous pouvez utiliser uniquement les images de cette liste pour créer une VM.
Si vous créez une image de VM protégée avec un SSD local, vous ne pouvez pas protéger les données avec la surveillance de l'intégrité ou le module vTPM (Virtual Trusted Platform Module).
Console
Dans la console Google Cloud, accédez à la page Instances de VM.
Sélectionnez le projet et cliquez sur Continuer.
Cliquez sur Create instance (Créer une instance).
Spécifiez un nom pour votre VM. Pour en savoir plus, consultez Recommandation pour l'attribution de noms aux ressources.
Facultatif : modifiez la zone de cette VM. Compute Engine choisit de manière aléatoire la liste des zones de chaque région pour encourager l'utilisation dans plusieurs zones.
Sélectionnez une configuration de machine pour votre VM.
Dans la section Disque de démarrage, cliquez sur Modifier, puis procédez comme suit :
- Sur l'onglet Images publiques, sélectionnez les éléments suivants :
- OS
- Version d'OS
- Type de disque de démarrage
- Taille du disque de démarrage
- Facultatif : pour afficher les options de configuration avancées, cliquez sur Afficher la configuration avancée.
- Cliquez sur Sélectionner pour confirmer vos options de disque de démarrage.
- Sur l'onglet Images publiques, sélectionnez les éléments suivants :
Dans la section Pare-feu, pour autoriser le trafic HTTP ou HTTPS vers la VM, sélectionnez Autoriser le trafic HTTP ou Autoriser le trafic HTTPS. Lorsque vous sélectionnez l'une de ces options, Compute Engine ajoute un tag réseau à votre VM, qui associe la règle de pare-feu à la VM. Compute Engine crée ensuite la règle de pare-feu d'entrée correspondante qui autorise tout le trafic entrant sur
tcp:80
(HTTP) outcp:443
(HTTPS).Facultatif : si vous avez choisi une image d'OS compatible avec les fonctionnalités de VM protégée, vous pouvez modifier les paramètres de la VM protégée. Pour modifier les paramètres de VM protégée, développez la section Sécurité dans la section Mise en réseau, disques, sécurité, gestion, location unique, puis procédez comme suit, si nécessaire :
Pour activer le démarrage sécurisé, sélectionnez Activer le démarrage sécurisé. Le démarrage sécurisé est désactivé par défaut.
Pour désactiver vTPM, décochez la case Activer vTPM. Le module vTPM est activé par défaut. La désactivation de vTPM désactive également la surveillance de l'intégrité, car elle repose sur les données collectées par le démarrage mesuré.
Pour désactiver la surveillance de l'intégrité, désélectionnez Activer la surveillance de l'intégrité. La surveillance de l'intégrité est activée par défaut.
Pour créer et démarrer la VM, cliquez sur Créer.
gcloud
- Sélectionnez une image publique. Notez le nom de l'image ou de la famille d'images, ainsi que le nom du projet contenant l'image.
Exécutez la commande
gcloud compute instances create
pour créer une VM à partir d'une famille d'images ou d'une version spécifique d'une image de l'OS.Si vous spécifiez l'option facultative
--shielded-secure-boot
, Compute Engine crée une VM avec les trois fonctionnalités de VM protégée activées :Une fois que Compute Engine a démarré votre VM, vous devez l'arrêter pour modifier les options de VM protégée.
gcloud compute instances create VM_NAME \ [--image=IMAGE | --image-family=IMAGE_FAMILY] \ --image-project=IMAGE_PROJECT --machine-type=MACHINE_TYPE
Remplacez l'élément suivant :
VM_NAME
: nom de la nouvelle VM.IMAGE
ouIMAGE_FAMILY
: spécifiez l'un des éléments suivants :IMAGE
: version spécifique d'une image publiquePar exemple,
--image=debian-10-buster-v20200309
.IMAGE_FAMILY
: famille d'images.Cette action crée la VM à partir de l'image d'OS la plus récente et non obsolète. Par exemple, si vous spécifiez
--image-family=debian-10
, Compute Engine crée une VM à partir de la dernière version de l'image de l'OS dans la famille d'images Debian 10.
IMAGE_PROJECT
: projet contenant l'imageMACHINE_TYPE
: type de machine prédéfini ou personnalisé pour la nouvelle VMPour obtenir la liste des types de machines disponibles dans une zone, utilisez la commande
gcloud compute machine-types list
avec l'option--zones
.
Vérifiez que Compute Engine a créé la VM :
gcloud compute instances describe VM_NAME
Remplacez
VM_NAME
par le nom de la VM.
Terraform
Pour créer une VM, vous pouvez utiliser la ressource google_compute_instance
.
Pour savoir comment appliquer ou supprimer une configuration Terraform, consultez la page Commandes Terraform de base.
Pour générer le code Terraform, vous pouvez utiliser le composant Code équivalent dans la console Google Cloud.- Dans Google Cloud Console, accédez à la page Instances de VM.
- Cliquez sur Créer une instance.
- Spécifiez les paramètres souhaités.
- En haut ou en bas de la page, cliquez sur Code équivalent, puis sur l'onglet Terraform pour afficher le code Terraform.
C#
C#
Avant d'essayer cet exemple, suivez les instructions de configuration pour C# décrites dans le Guide de démarrage rapide de Compute Engine à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API C# Compute Engine.
Pour vous authentifier auprès de Compute Engine, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Go
Go
Avant d'essayer cet exemple, suivez les instructions de configuration pour Go décrites dans le Guide de démarrage rapide de Compute Engine à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Go Compute Engine.
Pour vous authentifier auprès de Compute Engine, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Java
Avant d'essayer cet exemple, suivez les instructions de configuration pour Java décrites dans le Guide de démarrage rapide de Compute Engine à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Java Compute Engine.
Pour vous authentifier auprès de Compute Engine, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Node.js
Avant d'essayer cet exemple, suivez les instructions de configuration pour Node.js décrites dans le Guide de démarrage rapide de Compute Engine à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Node.js Compute Engine.
Pour vous authentifier auprès de Compute Engine, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
PHP
Avant d'essayer cet exemple, suivez les instructions de configuration pour PHP décrites dans le Guide de démarrage rapide de Compute Engine à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API PHP Compute Engine.
Pour vous authentifier auprès de Compute Engine, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Python
Avant d'essayer cet exemple, suivez les instructions de configuration pour Python décrites dans le Guide de démarrage rapide de Compute Engine à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Python Compute Engine.
Pour vous authentifier auprès de Compute Engine, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Ruby
Avant d'essayer cet exemple, suivez les instructions de configuration pour Ruby décrites dans le Guide de démarrage rapide de Compute Engine à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Ruby Compute Engine.
Pour vous authentifier auprès de Compute Engine, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
REST
- Sélectionnez une image publique. Notez le nom de l'image ou de la famille d'images, ainsi que le nom du projet contenant l'image.
Utilisez la méthode
instances.insert
pour créer une VM à partir d'une famille d'images ou d'une version spécifique d'une image de l'OS :POST https://compute.googleapis.com/compute/v1/projects/
PROJECT_ID
/zones/ZONE
/instances { "machineType":"zones/MACHINE_TYPE_ZONE/machineTypes/MACHINE_TYPE", "name":"VM_NAME
", "disks":[ { "initializeParams":{ "sourceImage":"projects/IMAGE_PROJECT/global/images/IMAGE" }, "boot":true } ], "networkInterfaces":[ { "network":"global/networks/NETWORK_NAME" } ], "shieldedInstanceConfig":{ "enableSecureBoot":"ENABLE_SECURE_BOOT" } }Remplacez les éléments suivants :
PROJECT_ID
: ID du projet dans lequel créer la VMZONE
: zone dans laquelle créer la VMMACHINE_TYPE_ZONE
: zone contenant le type de machine à utiliser pour la nouvelle VMMACHINE_TYPE
: type de machine prédéfini ou personnalisé pour la nouvelle VMVM_NAME
: nom de la nouvelle VM.IMAGE_PROJECT
: projet contenant l'image
Par exemple, si vous spécifiezdebian-10
comme famille d'images, spécifiezdebian-cloud
comme le projet d'images.IMAGE or IMAGE_FAMILY
: spécifiez l'une des options suivantes :IMAGE
: version spécifique d'une image publique
Par exemple,"sourceImage": "projects/debian-cloud/global/images/debian-10-buster-v20200309"
IMAGE_FAMILY
: famille d'images
. La VM est créée à partir de l'image d'OS non obsolète la plus récente. Par exemple, si vous spécifiez"sourceImage": "projects/debian-cloud/global/images/family/debian-10"
, Compute Engine crée une VM à partir de la dernière version de l'image de l'OS dans la famille d'imagesDebian 10
.
NETWORK_NAME
: réseau VPC que vous souhaitez utiliser pour la VM. Vous pouvez spécifierdefault
pour utiliser votre réseau par défaut.ENABLE_SECURE_BOOT
(facultatif) : si vous avez choisi une image compatible avec les fonctionnalités de VM protégée, Compute Engine active par défaut le module vTPM et la surveillance de l'intégrité. Compute Engine n'active pas le démarrage sécurisé par défaut.Si vous spécifiez
true
pourenableSecureBoot
, Compute Engine crée une VM avec les trois fonctionnalités de VM protégée activées. Une fois que Compute Engine a démarré votre VM, vous devez l'arrêter pour modifier les options de VM protégée.
Créer une VM à partir d'une image personnalisée
Une image personnalisée appartient uniquement à votre projet. Pour créer une VM avec une image personnalisée, vous devez d'abord créer une image personnalisée si vous n'en possédez pas.
Console
Dans la console Google Cloud, accédez à la page Instances de VM.
Sélectionnez le projet et cliquez sur Continuer.
Cliquez sur Create instance (Créer une instance).
Spécifiez un nom pour votre VM. Pour en savoir plus, consultez Recommandation pour l'attribution de noms aux ressources.
Facultatif : modifiez la zone de cette VM. Compute Engine choisit de manière aléatoire la liste des zones de chaque région pour encourager l'utilisation dans plusieurs zones.
Sélectionnez une configuration de machine pour votre VM.
Dans la section Disque de démarrage, cliquez sur Modifier, puis procédez comme suit :
- Sélectionnez l'onglet Images personnalisées.
- Pour sélectionner le projet d'image, cliquez sur Sélectionner un projet, puis procédez comme suit :
- Sélectionnez le projet contenant l'image.
- Cliquez sur Ouvrir.
- Dans la liste Image, cliquez sur l'image que vous souhaitez importer.
- Sélectionnez le type et la taille de votre disque de démarrage.
- Facultatif : pour afficher les options de configuration avancées, cliquez sur Afficher la configuration avancée.
- Cliquez sur Sélectionner pour confirmer vos options de disque de démarrage.
Dans la section Pare-feu, pour autoriser le trafic HTTP ou HTTPS vers la VM, sélectionnez Autoriser le trafic HTTP ou Autoriser le trafic HTTPS.
La console Google Cloud ajoute un tag réseau à votre VM et crée la règle de pare-feu d'entrée correspondante, qui autorise l'intégralité du trafic entrant sur le port
tcp:80
(HTTP) outcp:443
(HTTPS). Le tag réseau associe la règle de pare-feu à la VM. Pour en savoir plus, consultez la section Présentation des règles de pare-feu dans la documentation sur le pare-feu Cloud nouvelle génération.Pour créer et démarrer la VM, cliquez sur Créer.
gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Exécutez la commande
gcloud compute instances create
pour créer une VM avec une image personnalisée :gcloud compute instances create VM_NAME \ --image-project IMAGE_PROJECT \ [--image IMAGE | --image-family IMAGE_FAMILY] --subnet SUBNET
Remplacez les éléments suivants :
VM_NAME
: nom de la VMIMAGE_PROJECT
: nom du projet contenant l'image.IMAGE
ouIMAGE_FAMILY
: spécifiez l'un des éléments suivants :IMAGE
: nom de votre image personnalisée.Par exemple,
--image=my-debian-image-v2
.IMAGE_FAMILY
: si vous avez créé vos images personnalisées dans le cadre d'une famille d'images personnalisées, spécifiez cette famille.Cette action crée la VM à partir de la version de l'image de l'OS la plus récente et non obsolète de votre famille d'images personnalisée. Par exemple, si vous spécifiez
--image-family=my-debian-family
, Compute Engine crée une VM à partir de la dernière image de l'OS dans votre famille d'images personnaliséemy-debian-family
.
SUBNET
: si le sous-réseau et l'instance se trouvent dans le même projet, remplacez SUBNET par le nom d'un sous-réseau situé dans la même région que l'instance.
Terraform
Pour générer le code Terraform, vous pouvez utiliser le composant Code équivalent dans la console Google Cloud.- Dans Google Cloud Console, accédez à la page Instances de VM.
- Cliquez sur Créer une instance.
- Spécifiez les paramètres souhaités.
- En haut ou en bas de la page, cliquez sur Code équivalent, puis sur l'onglet Terraform pour afficher le code Terraform.
Go
Avant d'essayer cet exemple, suivez les instructions de configuration pour Go décrites dans le Guide de démarrage rapide de Compute Engine à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Go Compute Engine.
Pour vous authentifier auprès de Compute Engine, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Java
Avant d'essayer cet exemple, suivez les instructions de configuration pour Java décrites dans le Guide de démarrage rapide de Compute Engine à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Java Compute Engine.
Pour vous authentifier auprès de Compute Engine, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Node.js
Avant d'essayer cet exemple, suivez les instructions de configuration pour Node.js décrites dans le Guide de démarrage rapide de Compute Engine à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Node.js Compute Engine.
Pour vous authentifier auprès de Compute Engine, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Python
Avant d'essayer cet exemple, suivez les instructions de configuration pour Python décrites dans le Guide de démarrage rapide de Compute Engine à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Python Compute Engine.
Pour vous authentifier auprès de Compute Engine, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
REST
Le processus de création d'une VM avec une image personnalisée dans l'API est identique à celui consistant à partir d'une image accessible publiquement.
Pour créer la VM à partir d'une image personnalisée, utilisez la méthode instances.insert
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID
/zones/ZONE
/instances { "machineType":"zones/MACHINE_TYPE_ZONE/machineTypes/MACHINE_TYPE", "name":"VM_NAME
", "disks":[ { "initializeParams":{ "sourceImage":"projects/IMAGE_PROJECT/global/images/IMAGE" }, "boot":true } ], "networkInterfaces":[ { "network":"global/networks/NETWORK_NAME" } ], "shieldedInstanceConfig":{ "enableSecureBoot":"ENABLE_SECURE_BOOT" } }
Remplacez l'élément suivant :
PROJECT_ID
: ID du projet dans lequel créer la VMZONE
: zone dans laquelle créer la VMMACHINE_TYPE_ZONE
: zone contenant le type de machine à utiliser pour la nouvelle VMMACHINE_TYPE
: type de machine prédéfini ou personnalisé pour la nouvelle VMVM_NAME
: nom de la nouvelle VM.IMAGE_PROJECT
: nom du projet contenant l'image personnaliséeIMAGE
ouIMAGE_FAMILY
: spécifiez l'un des éléments suivants :IMAGE
: nom de votre image personnalisée. Exemple :"sourceImage": "projects/my-project-1234/global/images/my-debian-image-v2"
.IMAGE_FAMILY
: si vous avez créé vos images personnalisées dans le cadre d'une famille d'images personnalisées, spécifiez cette famille.Cette action crée la VM à partir de l'image d'OS la plus récente et non obsolète de votre famille d'images personnalisée. Par exemple, si vous spécifiez
"sourceImage": "projects/my-project-1234/global/images/family/my-debian-family"
, Compute Engine crée une VM à partir de la dernière version de l'image de l'OS dans la famille d'imagesmy-debian-family
personnalisées.
NETWORK_NAME
: réseau VPC que vous souhaitez utiliser pour la VM. Vous pouvez spécifierdefault
pour utiliser votre réseau par défaut.ENABLE_SECURE_BOOT
(facultatif) : si vous avez choisi une image compatible avec les fonctionnalités de VM protégée, Compute Engine active par défaut le module vTPM et la surveillance de l'intégrité. Compute Engine n'active pas le démarrage sécurisé par défaut.Si vous spécifiez
true
pourenableSecureBoot
, Compute Engine crée une VM avec les trois fonctionnalités de VM protégée activées. Une fois que Compute Engine a démarré votre VM, vous devez l'arrêter pour modifier les options de VM protégée.
Créer une instance de VM avec des disques non amorçables supplémentaires
Console
Dans la console Google Cloud, accédez à la page Instances de VM.
Sélectionnez le projet et cliquez sur Continuer.
Cliquez sur Create instance (Créer une instance).
Spécifiez un nom pour votre VM. Pour en savoir plus, consultez Recommandation pour l'attribution de noms aux ressources.
Facultatif : modifiez la zone de cette VM. Compute Engine choisit de manière aléatoire la liste des zones de chaque région pour encourager l'utilisation dans plusieurs zones.
Sélectionnez une configuration de machine pour votre VM.
Dans la section Disque de démarrage, cliquez sur Modifier, puis procédez comme suit :
- Dans l'onglet Images publiques, sélectionnez les éléments suivants :
- OS
- Version d'OS
- Type de disque de démarrage
- Taille du disque de démarrage
- Facultatif : pour afficher les options de configuration avancées, cliquez sur Afficher la configuration avancée.
- Cliquez sur Sélectionner pour confirmer vos options de disque de démarrage.
- Dans l'onglet Images publiques, sélectionnez les éléments suivants :
Dans la section Pare-feu, pour autoriser le trafic HTTP ou HTTPS vers la VM, sélectionnez Autoriser le trafic HTTP ou Autoriser le trafic HTTPS. Lorsque vous sélectionnez l'une de ces options, Compute Engine ajoute un tag réseau à votre VM, qui associe la règle de pare-feu à la VM. Compute Engine crée ensuite la règle de pare-feu d'entrée correspondante qui autorise tout le trafic entrant sur
tcp:80
(HTTP) outcp:443
(HTTPS).Pour ajouter des disques non amorçables à votre VM, développez la section Options avancées, puis procédez comme suit :
- Développez la section Disques.
- Cliquez sur Ajouter un disque, puis procédez comme suit :
- Renseignez les champs Nom, Type, Type de source et Taille pour le disque.
- Dans la section Paramètre de rattachement, sélectionnez le mode de rattachement du disque et la règle de suppression du rattachement. Pour en savoir plus sur l'ajout de nouveaux disques, consultez la section Ajouter un disque persistant à votre VM.
- Cliquez sur Enregistrer.
Pour créer et démarrer la VM, cliquez sur Créer.
gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Exécutez la commande
gcloud compute instances create
pour créer une VM avec des disques supplémentaires non amorçables.Vous pouvez ajouter jusqu'à 127 disques non amorçables lors de la création de votre VM. Spécifiez l'option
--create-disk
pour chaque disque non amorçable que vous créez.Pour créer des disques non amorçables à partir d'une image publique ou issue d'une banque d'images, spécifiez les propriétés
image
,image-family
etimage-project
avec l'option--create-disk
. Pour créer un disque vide, n'incluez pas ces propriétés. Vous pouvez également inclure les propriétéssize
ettype
pour le disque. Incluez la propriétéreplica-zones
pour créer des disques persistants régionaux.gcloud compute instances create VM_NAME \ --zone=ZONE \ [--image=IMAGE | --image-family=IMAGE_FAMILY] \ --image-project=IMAGE_PROJECT \ --create-disk [image=DISK_IMAGE | image-family=DISK_IMAGE_FAMILY ], \ image-project=DISK_IMAGE_PROJECT,size=SIZE_GB,type=DISK_TYPE \ --create-disk=device_name=DISK_NAME, \ replica-zones=^:^ZONE:REMOTE-ZONE,boot=false
Remplacez les éléments suivants :
VM_NAME
: nom de la nouvelle VMZONE
: zone dans laquelle créer la VMIMAGE
ouIMAGE_FAMILY
. Spécifiez l'une des options suivantes :IMAGE
: version spécifique d'une image publiquePar exemple,
--image=debian-10-buster-v20200309
.IMAGE_FAMILY
: famille d'imagesCette action crée la VM à partir de l'image d'OS la plus récente et non obsolète. Par exemple, si vous spécifiez
--image-family=debian-10
, Compute Engine crée une VM à partir de la dernière version de l'image d'OS dans la famille d'images Debian 10.
IMAGE_PROJECT
: projet contenant l'imagePour les disques supplémentaires, remplacez les éléments suivants :
DISK_IMAGE
ouDISK_IMAGE_FAMILY
: spécifiez l'un des éléments suivants :DISK_IMAGE
: nom de l'image que vous souhaitez utiliser en tant que disque non amorçableDISK_IMAGE_FAMILY
: famille d'images à utiliser comme disque non amorçable
DISK_IMAGE_PROJECT
: projet d'image auquel appartient l'image disqueSIZE_GB
: taille facultative du disque non amorçableDISK_TYPE
(facultatif) : URL complète ou partielle du type du disque persistant.Par exemple,
https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/diskTypes/pd-ssd
. Pour afficher les types de disques disponibles, exécutez la commandegcloud compute disk-types list
.DISK_NAME
(facultatif) : nom du disque affiché sur l'OS invité après la création de la VM.REMOTE_ZONE
: zone dans laquelle le disque doit être répliqué.
Pour les disques vides, ne spécifiez pas les paramètres
DISK_IMAGE
,DISK_IMAGE_FAMILY
ouDISK_IMAGE_PROJECT
.Pour les disques zonaux, ne spécifiez pas la propriété de disque
replica-zones
.
Terraform
Pour générer le code Terraform, vous pouvez utiliser le composant Code équivalent dans la console Google Cloud.- Dans Google Cloud Console, accédez à la page Instances de VM.
- Cliquez sur Créer une instance.
- Spécifiez les paramètres souhaités.
- En haut ou en bas de la page, cliquez sur Code équivalent, puis sur l'onglet Terraform pour afficher le code Terraform.
Go
Avant d'essayer cet exemple, suivez les instructions de configuration pour Go décrites dans le Guide de démarrage rapide de Compute Engine à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Go Compute Engine.
Pour vous authentifier auprès de Compute Engine, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Java
Avant d'essayer cet exemple, suivez les instructions de configuration pour Java décrites dans le Guide de démarrage rapide de Compute Engine à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Java Compute Engine.
Pour vous authentifier auprès de Compute Engine, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Node.js
Avant d'essayer cet exemple, suivez les instructions de configuration pour Node.js décrites dans le Guide de démarrage rapide de Compute Engine à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Node.js Compute Engine.
Pour vous authentifier auprès de Compute Engine, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.
Python
Avant d'essayer cet exemple, suivez les instructions de configuration pour Python décrites dans le Guide de démarrage rapide de Compute Engine à l'aide des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Python Compute Engine.
Pour vous authentifier auprès de Compute Engine, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.