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.
REST
Vous pouvez créer jusqu'à 127 disques non amorçables au moment de la création d'une VM, en utilisant la propriété initializeParams
pour chaque disque supplémentaire. Créez des disques supplémentaires avec une image publique ou privée.
Pour ajouter un disque vide, définissez l'entrée initializeParams
sans valeur sourceImage
. Incluez la propriété de disque replicaZones
pour créer des disques persistants régionaux.
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 }, { "initializeParams":{ "diskSizeGb":"SIZE_GB", "sourceImage":"projects/DISK_IMAGE_PROJECT/global/images/DISK_IMAGE", "diskType":"DISK_TYPE" } }, { "initializeParams":{ "diskSizeGb":"SIZE_GB", "diskType":"DISK_TYPE" }, }, { "boot": false, "deviceName":"DISK_NAME", "initializeParams": { "diskType": "DISK_TYPE", "replicaZones": [ "projects/PROJECT_ID/zones/ZONE", "projects/PROJECT_ID/zones/REMOTE_ZONE" ] } } ], "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
.
- Pour les disques supplémentaires, remplacez les éléments suivants :
SIZE_GB
: taille du disqueDISK_IMAGE
ouDISK_IMAGE_FAMILY
: spécifiez une image source ou une famille d'images source pour le disque non amorçable :DISK_IMAGE
: nom de l'image que vous souhaitez utiliser comme disque non amorçable. Par exemple,"sourceImage": "projects/DISK_IMAGE_PROJECT/global/images/DISK_IMAGE"
.DISK_IMAGE_FAMILY
: famille d'images à utiliser comme disque non amorçable. Par exemple,"sourceImage": "projects/DISK_IMAGE_PROJECT/global/images/family/DISK_IMAGE_FAMILY"
.
DISK_TYPE
: URL complète ou partielle du type du disque persistant. Exemple :https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/diskTypes/pd-ssd
.DISK_NAME
: facultatif. Nom du disque affiché sur l'OS invité après la création de la VM.REMOTE_ZONE
: zone vers laquelle répliquer le disque régional.
Pour les disques vides, ne spécifiez pas la propriété
sourceImage
. Pour les disques zonaux, ne spécifiez pas la propriétéreplicaZones
. 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.
Formatez et installez les disques avant de les utiliser.
Créer une instance de VM à partir d'une image partagée
Si un autre utilisateur a partagé une image avec vous, vous pouvez utiliser cette image pour créer une VM.
Console
Accédez à la page Créer une instance dans Google Cloud Console.
- 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 pour configurer le disque de démarrage, 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.
- 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 instance 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 démarrer et créer une 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.
-
Créez une VM à l'aide de la commande
gcloud compute instances create command
, et utilisez les options--image
et--image-project
pour spécifier le nom de l'image et le projet où se trouve l'image :gcloud compute instances create VM_NAME \ --image=IMAGE \ --image-project=IMAGE_PROJECT
Remplacez les éléments suivants :
VM_NAME
: nom de la nouvelle VM.IMAGE
: nom de l'imageIMAGE_PROJECT
: projet auquel appartient l'image.
Si la commande réussit,
gcloud
envoie une réponse contenant les propriétés de la nouvelle VM :Created [https://compute.googleapis.com/compute/v1/projects/myproject/zones/us-central1-b/instances/example-instance]. NAME ZONE MACHINE_TYPE PREEMPTIBLE INTERNAL_IP EXTERNAL_IP STATUS example-instance us-central1-b e2-standard-2 10.240.0.4 104.198.53.60 RUNNING
Terraform
Le processus de création d'une VM avec une image partagée dans Terraform est identique à celui consistant à créer une VM à partir d'une image accessible publiquement.
- 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.
REST
Le processus de création d'une VM avec une image partagée dans l'API est identique à celui consistant à créer une VM à partir d'une image accessible publiquement.
Pour créer la VM à partir d'une image partagé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 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
: nom du projet contenant l'image partagée.IMAGE
ouIMAGE_FAMILY
: spécifiez l'un des éléments suivants :IMAGE
: nom de l'image partagée. Exemple :"sourceImage": "projects/finance-project-1234/global/images/finance-debian-image-v2"
.IMAGE_FAMILY
: si l'image partagée est créée 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/finance-project-1234/global/images/family/finance-debian-family"
, Compute Engine crée une VM à partir de la dernière version de l'image de l'OS dans la famille d'imagesfinance-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 VM à partir d'un instantané
Vous pouvez créer une VM à partir d'un instantané comme suit :
Restaurer un disque de démarrage de VM : si vous avez sauvegardé le disque de démarrage d'une VM avec un instantané, vous pouvez utiliser cet instantané pour créer une VM. Pour obtenir des instructions, consultez la section Restaurer un instantané de disque de démarrage sur une nouvelle VM.
Restaurer un disque non amorçable : si vous avez sauvegardé un disque non amorçable avec un instantané, vous pouvez restaurer l'instantané sur un nouveau disque non amorçable lorsque vous créez une VM. Pour obtenir des instructions, consultez la section Créer une VM avec un disque non amorçable basé sur un instantané.
Pour créer rapidement plusieurs VM avec le même disque de démarrage, créez une image personnalisée, puis créez des VM à partir de cette image au lieu d'utiliser un instantané
Créer une instance de VM à partir d'une image de conteneur
Pour déployer et lancer un conteneur sur une VM Compute Engine, spécifiez un nom d'image de conteneur, ainsi que des paramètres de configuration facultatifs lors de la création de la VM. Compute Engine crée la VM en utilisant la dernière version de l'image publique de Container-Optimized OS, sur laquelle Docker est installé. Compute Engine lance ensuite le conteneur au démarrage de la VM. Pour plus d'informations, consultez la page Déployer des conteneurs sur des VM.
Pour créer une VM à partir d'une image de conteneur, vous devez utiliser la console Google Cloud ou gcloud
.
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.
Dans la section Conteneur, cliquez sur Déployer le conteneur.
Spécifiez l'Image de conteneur à utiliser. Exemple :
Pour sélectionner une image de conteneur NGINX 1.12 à partir de Cloud Launcher, procédez comme suit :
gcr.io/cloud-marketplace/google/nginx1:1.12
Pour déployer une image de conteneur Apache à partir de Docker Hub, spécifiez toujours le nom complet de l'image Docker :
docker.io/httpd:2.4
Facultatif : cliquez sur Options avancées des conteneurs. Pour plus d'informations, consultez la page Configurer des options pour exécuter votre conteneur.
Pour créer et démarrer la VM puis lancer le conteneur, 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-with-container
suivante :gcloud compute instances create-with-container VM_NAME \ --container-image=CONTAINER_IMAGE
Remplacez l'élément suivant :
VM_NAME
: nom de la nouvelle VM.CONTAINER_IMAGE
: nom de l'image de conteneur
Par exemple, la commande suivante crée une VM nommée
nginx-vm
, qui lance et exécute l'image du conteneur :gcr.io/cloud-marketplace/google/nginx1:1.12
gcloud compute instances create-with-container nginx-vm \ --container-image=gcr.io/cloud-marketplace/google/nginx1:1.12
Pour déployer une image de conteneur Apache à partir de Docker Hub, spécifiez toujours le nom complet de l'image Docker :
docker.io/httpd:2.4
Créer une instance de VM dans un sous-réseau spécifique
Par défaut, Google Cloud crée pour chaque projet un réseau VPC en mode automatique appelé default
. Pour utiliser un autre réseau ou un sous-réseau que vous avez créé manuellement dans un réseau VPC en mode automatique ou en mode personnalisé, vous devez spécifier le sous-réseau au moment de la création de la VM.
Lors de la création d'une VM dans un sous-réseau, tenez compte des règles suivantes :
- Si vous ne spécifiez pas de réseau ou de sous-réseau, Compute Engine utilise le réseau VPC par défaut et le sous-réseau automatique situé dans la même région que la VM.
- Si vous ne spécifiez pas de réseau, Compute Engine déduit le réseau à partir du sous-réseau spécifié.
- Si vous spécifiez un réseau, vous devez spécifier un sous-réseau et il doit appartenir au même réseau. Autrement, la création de la VM échoue.
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.
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 plus d'informations, consultez la section Présentation des règles de pare-feu dans la documentation Cloud NGFW.Développez la section Options avancées.
- Développez la section Mise en réseau.
- Sous Interfaces réseau, spécifiez les détails du réseau.
- Dans le champ Réseau, sélectionnez le réseau VPC contenant le sous-réseau que vous avez créé.
- Dans le champ Sous-réseau, sélectionnez le sous-réseau que la VM doit utiliser.
- Cliquez sur OK.
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.
À l'aide de l'interface de Google Cloud CLI, suivez les mêmes instructions pour créer une VM à partir d'une image ou un instantané, puis ajoutez les options
--subnet=SUBNET_NAME
et--zone=ZONE
lorsque vous exécutez la commandegcloud compute instances create
:gcloud compute instances create VM_NAME \ --network=NETWORK_NAME \ --subnet=SUBNET_NAME \ --zone=ZONE
Remplacez les éléments suivants :
VM_NAME
: nom de la VMNETWORK_NAME
: nom du réseau (facultatif)SUBNET_NAME
: nom du sous-réseauPour afficher la liste des sous-réseaux du réseau, exécutez la commande suivante :
gcloud compute networks subnets list
.ZONE
: zone dans laquelle la VM est créée, par exempleeurope-west1-b
La région de la VM est déduite de la zone.
Terraform
Pour créer une VM dans un sous-réseau spécifique, vous pouvez utiliser la ressource google_compute_instance
.
Pour savoir comment appliquer ou supprimer une configuration Terraform, consultez la page Commandes Terraform de base.
Le processus de création d'une VM avec une image partagée dans Terraform est identique à celui consistant à créer une VM à partir d'une image accessible publiquement.
- 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
Suivez les instructions de l'API pour créer une VM à partir d'une image ou d'un instantané, mais spécifiez le champ subnet
dans le corps de la requête. Pour ajouter des disques vides, ne spécifiez pas d'image source. Vous pouvez éventuellement spécifier les propriétés diskSizeGb
, diskType
et labels
.
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", "subnetwork":"regions/REGION/subnetworks/SUBNET_NAME", "accessConfigs":{ "name":"External NAT", "type":"ONE_TO_ONE_NAT" } } ], "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.REGION
: région où le sous-réseau spécifié existeSUBNET_NAME
: nom du sous-réseauENABLE_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 configurée pour la surveillance et la journalisation de l'agent Ops
L'agent Ops collecte des données de télémétrie pour les VM, que vous pouvez ensuite utiliser pour le dépannage et l'optimisation des performances. Vous pouvez installer l'agent Ops lors de la création d'une VM ou sur des VM existantes, comme décrit dans les rubriques suivantes :
Installer l'agent Ops lorsque vous créez une VM à l'aide de la console Google Cloud : Activez l'installation automatique de l'agent Ops en cochant la case Installer l'agent Ops pour Monitoring et Logging sur la page Créer une instance. Cette option active VM Manager en mode de fonctionnalité limitée et crée une attribution de règle d'OS pour installer l'agent Ops sur la VM. Pour en savoir plus, consultez la section Installer l'agent Ops lors de la création d'une VM.
Installer l'agent Ops sur les VM existantes : utilisez la console Google Cloud, gcloud CLI ou un outil d'automatisation pour installer l'agent Ops sur un parc de VM ou sur des VM individuelles. Pour obtenir des instructions, consultez la page Installer l'agent Ops.
Dépannage
Pour connaître les méthodes de résolution des erreurs courantes de création de VM, consultez la section Résoudre les problèmes de création de VM.
Étape suivante
Vérifiez l'état de la VM pour savoir quand elle est prête à être utilisée.
Apprenez à utiliser des instantanés pour sauvegarder vos disques persistants
Découvrez comment créer et associer un disque de stockage non amorçable à votre VM pour stocker vos données séparément du disque de démarrage.
Découvrez comment vous connecter à votre VM.
Découvrez comment effectuer un scaling horizontal de votre VM dans un groupe de VM.
Faites l'essai
Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de Compute Engine en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits offerts pour exécuter, tester et déployer des charges de travail.
Profiter d'un essai gratuit de Compute Engine