Ce document explique comment créer une réservation à projet unique qui ne peut être utilisée que par des instances de machine virtuelle (VM) dans le même projet. Pour en savoir plus, consultez la section Réservations de ressources zonales Compute Engine.
Pour découvrir d'autres méthodes de création de réservations, consultez les pages suivantes :
Si vous avez des engagements d'un ou de trois ans dans le projet en cours, vos ressources réservées reçoivent automatiquement les remises sur engagement d'utilisation applicables. Vous pouvez également créer et associer une réservation à un engagement lorsque vous souscrivez cet engagement. Pour en savoir plus, consultez la section Associer des réservations à des engagements.
Pour créer une réservation pouvant être utilisée par plusieurs projets, consultez la section Créer une réservation partagée.
Avant de commencer
- Consultez les exigences et restrictions applicables aux réservations.
-
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 en sélectionnant l'une des options suivantes:
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
compute.reservations.create
sur le projet-
Pour spécifier un modèle d'instance :
compute.instanceTemplates.useReadOnly
sur le modèle d'instance Option recommandée : spécifier un modèle d'instance
Cette section explique comment utiliser un modèle d'instance pour définir les propriétés d'une réservation. En utilisant un modèle d'instance, vous pouvez définir les propriétés d'une réservation et les VM pouvant utiliser la réservation au même endroit.
-
Cette section explique comment utiliser une VM existante pour définir les propriétés d'une réservation. En utilisant les propriétés d'une VM existante, vous pouvez utiliser la réservation en créant des VM dont les propriétés correspondent à la VM de référence.
Spécifier les propriétés directement
Cette section explique comment définir directement les propriétés d'une réservation. Cette méthode nécessite de vous assurer manuellement que les propriétés de vos VM et de vos réservations correspondent exactement. Toute propriété non concordante empêche l'utilisation.
Créez une réservation qui ne peut être utilisée que par des VM qui la ciblent spécifiquement, comme expliqué dans les sections suivantes de ce document. Ensuite, configurez les VM pour qu'elles utilisent cette réservation spécifique.
Configurez des VM qui ne peuvent utiliser aucune réservation.
Créez votre réservation dans la même région et la même zone que les ressources du modèle d'instance. Toutes les ressources régionales ou zonales spécifiées dans un modèle d'instance (telles qu'un type de machine ou un volume de disque persistant) limitent l'utilisation du modèle aux emplacements où ces ressources existent. Par exemple, si votre modèle d'instance spécifie un volume de disque persistant existant dans la zone
us-central1-a
, vous ne pouvez créer votre réservation que dans la même zone. Pour vérifier si un modèle existant spécifie des ressources qui l'associent à une région ou à une zone spécifique, affichez les détails du modèle d'instance et recherchez des références à des ressources régionales ou zonales qu'il contient.Si le modèle d'instance spécifie une stratégie d'emplacement compact, assurez-vous qu'il spécifie également un type de machine compatible pour les stratégies d'emplacement compact. Sinon, la création de la réservation échoue.
Dans la console Google Cloud, accédez à la page Réservations.
Dans l'onglet Réservations à la demande (par défaut), cliquez sur
Créer une réservation.La page Créer une réservation s'affiche.
Dans le champ Name, saisissez le nom de votre réservation.
Pour les champs Région et Zone, sélectionnez l'emplacement dans lequel vous souhaitez réserver des ressources.
Dans la section Type de partage, sélectionnez Local si ce n'est pas déjà fait.
Facultatif: Pour permettre à une réservation de VM avec GPU d'être utilisée par des tâches d'entraînement personnalisées ou des tâches de prédiction dans Vertex AI, sélectionnez Partager la réservation dans la section Services Google Cloud.
Dans la section Utiliser avec une instance de VM, sélectionnez l'une des options suivantes :
Pour autoriser les VM correspondantes à utiliser automatiquement cette réservation, sélectionnez l'option Utiliser automatiquement une réservation si elle n'est pas déjà sélectionnée.
Pour n'utiliser les ressources de cette réservation que lors de la création de VM correspondantes qui ciblent spécifiquement cette réservation par son nom, cliquez sur Sélectionner une réservation spécifique.
Pour Nombre d'instances de VM, saisissez le nombre de VM que vous souhaitez réserver.
Dans la section Configuration de la machine, procédez comme suit :
Pour spécifier les propriétés de vos VM à partir d'un modèle d'instance existant, sélectionnez Utiliser un modèle d'instance.
Dans le champ Modèle d'instance, sélectionnez le modèle d'instance de votre choix. Si vous sélectionnez un modèle d'instance régional, vous ne pouvez réserver que des ressources dans la région du modèle d'instance.
Dans la section Suppression automatique, vous pouvez activer l'option de suppression automatique pour permettre à Compute Engine de supprimer automatiquement la réservation à une date et une heure spécifiques. La suppression automatique des réservations peut vous permettre d'éviter des frais inutiles lorsque vous arrêtez de consommer la réservation.
Pour créer la réservation, cliquez sur Créer.
La page Réservations s'affiche. La création de la réservation pour un projet unique peut prendre jusqu'à une minute.
RESERVATION_NAME
: le nom de la réservation à créer.PROJECT_ID
: l'ID du projet dans lequel vous souhaitez réserver des ressources et où le modèle d'instance existe.LOCATION
: emplacement du modèle d'instance. Spécifiez une des valeurs suivantes :Pour un modèle d'instance global :
global
Pour un modèle d'instance régional :
regions/REGION
. RemplacezREGION
par la région dans laquelle se trouve le modèle d'instance. Si vous sélectionnez un modèle d'instance régional, vous ne pouvez réserver que des ressources situées dans la même région que celle du modèle.
INSTANCE_TEMPLATE_NAME
: nom d'un modèle d'instance existant. Si le modèle d'instance spécifie un type de machine A3 ou une stratégie d'emplacement compact, vous devez inclure l'option--require-specific-reservation
. Cela indique que seules les VM qui ciblent spécifiquement cette réservation peuvent l'utiliser. Pour en savoir plus, consultez la section Consommer des VM d'une réservation spécifique.NUMBER_OF_VMS
: nombre de VM à réserver.ZONE
: la zone dans laquelle vous devez réserver des ressources.Pour spécifier que seules les VM qui ciblent spécifiquement cette réservation peuvent l'utiliser, incluez l'option
--require-specific-reservation
.gcloud compute reservations create RESERVATION_NAME \ --source-instance-template=projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME \ --require-specific-reservation \ --vm-count=NUMBER_OF_VMS \ --zone=ZONE
Pour permettre à une réservation de VM avec GPU d'être utilisée par des tâches d'entraînement personnalisées ou des tâches de prédiction dans Vertex AI, exécutez la commande
gcloud beta compute reservations create
avec l'option--reservation-sharing-policy=ALLOW_ALL
.gcloud beta compute reservations create RESERVATION_NAME \ --source-instance-template=projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME \ --reservation-sharing-policy=ALLOW_ALL \ --vm-count=NUMBER_OF_VMS \ --zone=ZONE
Pour permettre à Compute Engine de supprimer automatiquement la réservation, sélectionnez l'une des méthodes suivantes :
Pour supprimer la réservation à une date et une heure spécifiques, utilisez la commande
gcloud beta compute reservations create
avec l'option--delete-at-time
.gcloud beta compute reservations create RESERVATION_NAME \ --delete-at-time=DELETE_AT_TIME \ --source-instance-template=projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME \ --vm-count=NUMBER_OF_VMS \ --zone=ZONE
Remplacez
DELETE_AT_TIME
par une date et une heure au format de code temporel RFC 3339 comme suit :none YYYY-MM-DDTHH:MM:SSOFFSET
Remplacez les éléments suivants :
YYYY-MM-DD
: date respectant la syntaxe année à 4 chiffres, mois à 2 chiffres et jour du mois à 2 chiffres, séparés par des traits d'union (-
).HH:MM:SS
: heure respectant la syntaxe heures à 2 chiffres sur 24 heures, minutes à 2 chiffres et secondes à 2 chiffres, séparés par des signes deux-points (:
).OFFSET
: fuseau horaire mis en forme en tant que décalage par rapport au temps universel coordonné (UTC). Par exemple, pour utiliser l'heure normale du Pacifique (PST), spécifiez-08:00
. Sinon, pour n'utiliser aucun décalage, spécifiezZ
.
Pour supprimer la réservation après une certaine durée, exécutez la commande
gcloud beta compute reservations create
avec l'option--delete-after-duration
.gcloud beta compute reservations create RESERVATION_NAME \ --delete-after-duration=DELETE_AFTER_DURATION \ --source-instance-template=projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME \ --vm-count=NUMBER_OF_VMS \ --zone=ZONE
Remplacez
DELETE_AFTER_DURATION
par une durée en jours, heures, minutes ou secondes. Par exemple, spécifiez30m
pour 30 minutes ou1d2h3m4s
pour 1 jour, 2 heures, 3 minutes et 4 secondes.
PROJECT_ID
: l'ID du projet dans lequel vous souhaitez réserver des ressources et où le modèle d'instance existe.ZONE
: la zone dans laquelle vous devez réserver des ressources.RESERVATION_NAME
: le nom de la réservation à créer.NUMBER_OF_VMS
: nombre de VM à réserver.LOCATION
: emplacement du modèle d'instance. Spécifiez une des valeurs suivantes :Pour un modèle d'instance global :
global
Pour un modèle d'instance régional :
regions/REGION
. RemplacezREGION
par la région dans laquelle se trouve le modèle d'instance. Si vous sélectionnez un modèle d'instance régional, vous ne pouvez réserver que des ressources situées dans la même région que celle du modèle.
INSTANCE_TEMPLATE_NAME
: nom d'un modèle d'instance existant. Si le modèle d'instance spécifie un type de machine A3 ou une stratégie d'emplacement compact, vous devez inclure le champspecificReservationRequired
dans le corps de la requête et le définir surtrue
. Cela indique que seules les VM qui ciblent spécifiquement cette réservation peuvent l'utiliser. Pour en savoir plus, consultez la section Consommer des VM d'une réservation spécifique.Pour spécifier que seules les VM qui ciblent spécifiquement cette réservation peuvent l'utiliser, incluez le champ
specificReservationRequired
dans le corps de la requête et définissez-le surtrue
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations { "name": "RESERVATION_NAME", "specificReservation": { "count": "NUMBER_OF_VMS", "sourceInstanceTemplate": "projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME" }, "specificReservationRequired": true }
Pour permettre à une réservation de VM GPU d'être utilisée par des tâches d'entraînement personnalisées ou des tâches de prédiction dans Vertex AI, envoyez une requête
POST
à la méthodebeta.reservations.insert
. Dans le corps de la requête, incluez le champserviceShareType
et définissez-le surALLOW_ALL
.POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/reservations { "name": "RESERVATION_NAME", "reservationSharingPolicy": { "serviceShareType": "ALLOW_ALL" }, "specificReservation": { "count": "NUMBER_OF_VMS", "sourceInstanceTemplate": "projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME" } }
Pour permettre à Compute Engine de supprimer automatiquement la réservation, sélectionnez l'une des méthodes suivantes :
Pour supprimer la réservation à une date et une heure spécifiques, envoyez une requête
POST
à la méthodebeta.reservations.insert
. Dans le corps de la requête, incluez le champdeleteAtTime
.POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/reservations { "deleteAtTime": "DELETE_AT_TIME", "name": "RESERVATION_NAME", "specificReservation": { "count": "NUMBER_OF_VMS", "sourceInstanceTemplate": "projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME" } }
Remplacez
DELETE_AT_TIME
par une date et une heure au format de code temporel RFC 3339 comme suit :YYYY-MM-DDTHH:MM:SSOFFSET
Remplacez les éléments suivants :
YYYY-MM-DD
: date respectant la syntaxe année à 4 chiffres, mois à 2 chiffres et jour du mois à 2 chiffres, séparés par des traits d'union (-
).HH:MM:SS
: heure respectant la syntaxe heures à 2 chiffres sur 24 heures, minutes à 2 chiffres et secondes à 2 chiffres, séparés par des signes deux-points (:
).OFFSET
: fuseau horaire mis en forme en tant que décalage par rapport au temps universel coordonné (UTC). Par exemple, pour utiliser l'heure normale du Pacifique (PST), spécifiez-08:00
. Sinon, pour n'utiliser aucun décalage, spécifiezZ
.
Pour supprimer la réservation après une certaine durée, envoyez une requête
POST
à la méthodebeta.reservations.insert
. Dans le corps de la requête, incluez le champdeleteAfterDuration
.POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/reservations { "deleteAfterDuration": { "seconds": "DELETE_AFTER_DURATION" }, "name": "RESERVATION_NAME", "specificReservation": { "count": "NUMBER_OF_VMS", "sourceInstanceTemplate": "projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME" } }
Remplacez
DELETE_AFTER_DURATION
par une durée en secondes. Par exemple, spécifiez86400
pour 86 400 secondes (1 jour).
Créez et utilisez un modèle d'instance en procédant comme suit :
Créez un modèle d'instance basé sur la VM de référence, sans remplacer les propriétés de la VM de référence.
Créez des VM à l'aide du modèle que vous venez de créer en effectuant l'une des opérations suivantes, ou les deux :
Créez une VM basée sur la VM de référence en vous assurant que les propriétés de la nouvelle VM et de la VM de référence correspondent exactement.
Dans la console Google Cloud, accédez à la page Réservations.
Cliquez sur
Créer une réservation.La page Créer une réservation s'affiche.
Dans le champ Name, saisissez le nom de votre réservation.
Pour les champs Région et Zone, sélectionnez l'emplacement dans lequel vous souhaitez réserver des ressources.
Dans la section Type de partage, cliquez sur Local si cette option n'est pas déjà sélectionnée.
Dans la section Utiliser avec une instance de VM, sélectionnez l'une des options suivantes :
Pour autoriser les VM correspondantes à utiliser automatiquement cette réservation, sélectionnez l'option Utiliser automatiquement une réservation si elle n'est pas déjà sélectionnée.
Pour n'utiliser les ressources de cette réservation que lors de la création de VM correspondantes qui ciblent spécifiquement cette réservation par son nom, cliquez sur Sélectionner une réservation spécifique.
Pour Nombre d'instances de VM, saisissez le nombre de VM que vous souhaitez réserver.
Dans la section Configuration de la machine, procédez comme suit :
Sélectionnez Utiliser une VM existante.
Pour VM existante, sélectionnez la VM dont vous souhaitez utiliser les propriétés pour créer la réservation.
Facultatif: pour spécifier une stratégie d'emplacement compact pour une réservation qui répond auxexigences, dans la section Stratégie d'emplacement de groupe, cliquez sur la liste Sélectionner ou créer une stratégie d'emplacement de groupe, puis effectuez l'une des opérations suivantes:
Pour créer une stratégie d'emplacement compact à spécifier dans cette réservation, procédez comme suit:
Cliquez sur Créer une stratégie d'emplacement de groupe.
Le volet Créer une stratégie de placement de groupe s'affiche.
Dans Policy name (Nom de la règle), saisissez un nom pour votre règle.
Cliquez sur Créer.
La création de la stratégie d'emplacement compact peut prendre quelques secondes.
Sinon, sélectionnez une stratégie d'emplacement compact existante.
Dans la section Suppression automatique, vous pouvez activer l'option de suppression automatique pour permettre à Compute Engine de supprimer automatiquement la réservation à une date et une heure spécifiques. La suppression automatique des réservations peut vous permettre d'éviter des frais inutiles lorsque vous arrêtez de consommer la réservation.
Pour créer la réservation, cliquez sur Créer.
La page Réservations s'affiche. La création de la réservation peut prendre jusqu'à une minute.
Dans la console Google Cloud, accédez à la page Réservations.
Dans l'onglet Réservations à la demande (par défaut), cliquez sur
Créer une réservation.La page Créer une réservation s'affiche.
Dans le champ Name, saisissez le nom de votre réservation.
Pour les champs Région et Zone, sélectionnez l'emplacement dans lequel vous souhaitez réserver des ressources.
Dans la section Type de partage, cliquez sur Local si ce n'est pas déjà fait.
Facultatif: Pour permettre à une réservation de VM avec GPU d'être utilisée par des tâches d'entraînement personnalisées ou des tâches de prédiction dans Vertex AI, sélectionnez Partager la réservation dans la section Services Google Cloud.
Dans la section Utiliser avec une instance de VM, sélectionnez l'une des options suivantes :
Pour autoriser les VM correspondantes à utiliser automatiquement cette réservation, sélectionnez l'option Utiliser automatiquement une réservation si elle n'est pas déjà sélectionnée.
Pour n'utiliser les ressources de cette réservation que lors de la création de VM correspondantes qui ciblent spécifiquement cette réservation par son nom, cliquez sur Sélectionner une réservation spécifique.
Pour Nombre d'instances de VM, saisissez le nombre de VM que vous souhaitez réserver.
Dans la section Configuration de la machine, sélectionnez Spécifier un type de machine, puis spécifiez les éléments suivants :
Dans les champs Famille de machines, Série et Type de machine, sélectionnez une famille de machines, une série et un type de machine.
Facultatif : pour spécifier une configuration minimale de plate-forme de processeur ou associer des GPU à des VM N1, procédez comme suit :
Développez la section Plate-forme du CPU et GPU en cliquant sur la flèche de développement
.Facultatif: pour spécifier une plate-forme de processeur minimale, sélectionnez une option sous Plate-forme de processeur.
Facultatif : pour associer des GPU à des VM N1, cliquez sur
Ajouter un GPU. Ensuite, pour Type de GPU et Nombre de GPU, sélectionnez le type et le nombre de GPU à associer à chaque VM N1.
Facultatif : pour ajouter des disques SSD locaux, procédez comme suit :
Pour Nombre de disques, sélectionnez le nombre de disques SSD locaux pour chaque VM.
Pour Type d'interface, sélectionnez l'interface des disques SSD locaux.
Facultatif: pour spécifier une stratégie d'emplacement compact pour une réservation qui répond auxexigences, cliquez sur la liste Sélectionner ou créer une stratégie d'emplacement de groupe, puis effectuez l'une des opérations suivantes:
Pour créer une stratégie d'emplacement compact à spécifier dans cette réservation, procédez comme suit :
Cliquez sur Créer une stratégie d'emplacement de groupe.
Le volet Créer une stratégie de placement de groupe s'affiche.
Dans Policy name (Nom de la règle), saisissez un nom pour votre règle.
Cliquez sur Créer.
La création de la stratégie d'emplacement compact peut prendre quelques secondes.
Sinon, sélectionnez une stratégie d'emplacement compact existante.
Facultatif: pour spécifier une stratégie d'emplacement compact pour une réservation qui répond auxexigences, dans la section Stratégie d'emplacement de groupe, cliquez sur la liste Sélectionner ou créer une stratégie d'emplacement de groupe, puis effectuez l'une des opérations suivantes:
Pour créer une stratégie d'emplacement compact à spécifier dans cette réservation, procédez comme suit:
Cliquez sur Créer une stratégie d'emplacement de groupe.
Le volet Créer une stratégie de placement de groupe s'affiche.
Dans Policy name (Nom de la règle), saisissez un nom pour votre règle.
Cliquez sur Créer.
La création de la stratégie d'emplacement compact peut prendre quelques secondes.
Sinon, sélectionnez une stratégie d'emplacement compact existante.
Dans la section Suppression automatique, vous pouvez activer l'option de suppression automatique pour permettre à Compute Engine de supprimer automatiquement la réservation à une date et une heure spécifiques. La suppression automatique des réservations peut vous permettre d'éviter des frais inutiles lorsque vous arrêtez de consommer la réservation.
Pour créer la réservation, cliquez sur Créer.
La page Réservations s'affiche. La création de la réservation pour un projet unique peut prendre jusqu'à une minute.
RESERVATION_NAME
: le nom de la réservation à créer.MACHINE_TYPE
: un type de machine à utiliser pour chaque VM. Si vous spécifiez un type de machine A3, vous devez inclure l'option--require-specific-reservation
. Cela indique que seules les VM qui ciblent spécifiquement cette réservation peuvent l'utiliser. Pour en savoir plus, consultez la section Consommer des VM d'une réservation spécifique.NUMBER_OF_VMS
: nombre de VM à réserver.ZONE
: la zone dans laquelle vous devez réserver des ressources.Pour associer des GPU à vos VM N1 réservées, incluez l'option
--accelerator
.gcloud compute reservations create RESERVATION_NAME \ --accelerator=count=NUMBER_OF_ACCELERATORS,type=ACCELERATOR_TYPE --machine-type=MACHINE_TYPE \ --vm-count=NUMBER_OF_VMS \ --zone=ZONE
Remplacez les éléments suivants :
NUMBER_OF_ACCELERATORS
: nombre de GPU à ajouter par VM réservée.ACCELERATOR_TYPE
: modèle de GPU compatible avec les VM N1. Assurez-vous que le modèle de GPU choisi est disponible dans la zone où vous souhaitez réserver des ressources. Sinon, la création de la réservation échoue.
Pour ajouter un ou plusieurs disques SSD locaux à chaque VM réservée, incluez une ou plusieurs options
--local-ssd
. Vous pouvez spécifier jusqu'à 24 disques SSD locaux. La capacité de chaque disque SSD local est de 375 Go.Par exemple, pour spécifier deux disques SSD locaux lors de la création d'une réservation, incluez deux options
--local-ssd
comme suit:gcloud compute reservations create RESERVATION_NAME \ --local-ssd=size=375,interface=INTERFACE_1 \ --local-ssd=size=375,interface=INTERFACE_2 \ --machine-type=MACHINE_TYPE \ --vm-count=NUMBER_OF_VMS \ --zone=ZONE
Remplacez
INTERFACE_1
etINTERFACE_2
par le type d'interface que chaque disque SSD local doit utiliser. Spécifiez une des valeurs suivantes :Interfaces de disque NVME :
nvme
Interfaces de disque SCSI :
scsi
Assurez-vous que le type de machine que vous spécifiez pour les VM réservées est compatible avec les interfaces de disque choisies. Sinon, la création de la réservation échoue. Pour en savoir plus, découvrez comment choisir une interface de disque.
Pour que les VM réservées utilisent une plate-forme CPU minimale spécifique au lieu de la plate-forme CPU par défaut de la zone, incluez l'option
--min-cpu-platform
.gcloud compute reservations create RESERVATION_NAME \ --machine-type=MACHINE_TYPE \ --min-cpu-platform="MIN_CPU_PLATFORM" \ --vm-count=NUMBER_OF_VMS \ --zone=ZONE
Remplacez
MIN_CPU_PLATFORM
par une plate-forme CPU minimale. Pour vous assurer qu'une plate-forme CPU est disponible dans la zone où vous réservez des ressources, affichez les plates-formes CPU disponibles par zone.Pour spécifier que seules les VM qui ciblent spécifiquement cette réservation peuvent l'utiliser, incluez l'option
--require-specific-reservation
.gcloud compute reservations create RESERVATION_NAME \ --machine-type=MACHINE_TYPE \ --require-specific-reservation \ --vm-count=NUMBER_OF_VMS \ --zone=ZONE
Pour spécifier une stratégie d'emplacement compacte afin de réduire la latence du réseau entre les VM, incluez l'option
--resource-policies=policy
.gcloud compute reservations create RESERVATION_NAME \ --machine-type=MACHINE_TYPE \ --resource-policies=policy=COMPACT_PLACEMENT_POLICY_NAME \ --require-specific-reservation \ --vm-count=NUMBER_OF_VMS \ --zone=ZONE
Remplacez COMPACT_PLACEMENT_POLICY_NAME par le nom d'une d'emplacement compact. En outre, pour éviter les erreurs lors de la création d'une réservation à projet unique qui spécifie une stratégie d'emplacement compact, veillez à spécifier les éléments suivants :
Un type de machine compatible et un nombre maximal de VM pour les stratégies d'emplacement compact.
Zone dans la région où se trouve la stratégie d'emplacement compact.
L'option
--require-specific-reservation
Cela indique que seules les VM qui ciblent spécifiquement cette réservation peuvent l'utiliser.
Pour permettre à une réservation de VM avec GPU d'être utilisée par des tâches d'entraînement personnalisées ou des tâches de prédiction dans Vertex AI, exécutez la commande
gcloud beta compute reservations create
avec l'option--reservation-sharing-policy=ALLOW_ALL
.gcloud beta compute reservations create RESERVATION_NAME \ --machine-type=MACHINE_TYPE \ --reservation-sharing-policy=ALLOW_ALL \ --vm-count=NUMBER_OF_VMS \ --zone=ZONE
Pour permettre à Compute Engine de supprimer automatiquement la réservation, sélectionnez l'une des méthodes suivantes :
Pour supprimer la réservation à une date et une heure spécifiques, utilisez la commande
gcloud beta compute reservations create
avec l'option--delete-at-time
.gcloud beta compute reservations create RESERVATION_NAME \ --delete-at-time=DELETE_AT_TIME \ --machine-type=MACHINE_TYPE \ --vm-count=NUMBER_OF_VMS \ --zone=ZONE
Remplacez
DELETE_AT_TIME
par une date et une heure au format de code temporel RFC 3339 comme suit :YYYY-MM-DDTHH:MM:SSOFFSET
Remplacez les éléments suivants :
YYYY-MM-DD
: date respectant la syntaxe année à 4 chiffres, mois à 2 chiffres et jour du mois à 2 chiffres, séparés par des traits d'union (-
).HH:MM:SS
: heure respectant la syntaxe heures à 2 chiffres sur 24 heures, minutes à 2 chiffres et secondes à 2 chiffres, séparés par des signes deux-points (:
).OFFSET
: fuseau horaire mis en forme en tant que décalage par rapport au temps universel coordonné (UTC). Par exemple, pour utiliser l'heure normale du Pacifique (PST), spécifiez-08:00
. Sinon, pour n'utiliser aucun décalage, spécifiezZ
.
Pour supprimer la réservation après une certaine durée, exécutez la commande
gcloud beta compute reservations create
avec l'option--delete-after-duration
.gcloud beta compute reservations create RESERVATION_NAME \ --delete-after-duration=DELETE_AFTER_DURATION \ --machine-type=MACHINE_TYPE \ --vm-count=NUMBER_OF_VMS \ --zone=ZONE
Remplacez
DELETE_AFTER_DURATION
par une durée en jours, heures, minutes ou secondes. Par exemple, spécifiez30m
pour 30 minutes ou1d2h3m4s
pour 1 jour, 2 heures, 3 minutes et 4 secondes.
PROJECT_ID
: ID du projet dans lequel vous souhaitez réserver des ressources.ZONE
: la zone dans laquelle vous devez réserver des ressources.RESERVATION_NAME
: le nom de la réservation à créer.NUMBER_OF_VMS
: nombre de VM à réserver.MACHINE_TYPE
: un type de machine à utiliser pour chaque VM. Si vous spécifiez un type de machine A3, vous devez inclure le champspecificReservationRequired
dans le corps de la requête et le définir surtrue
. Cela indique que seules les VM qui ciblent spécifiquement cette réservation peuvent l'utiliser. Pour en savoir plus, consultez la section Consommer des VM d'une réservation spécifique.Pour associer des GPU à vos VM N1 réservées, incluez le champ
guestAccelerators
dans le corps de la requête.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations { "name": "RESERVATION_NAME", "specificReservation": { "count": "NUMBER_OF_VMS", "instanceProperties": { "guestAccelerators": [ { "acceleratorCount": NUMBER_OF_ACCELERATORS, "acceleratorType": "ACCELERATOR_TYPE" } ], "machineType": "MACHINE_TYPE" } } }
Remplacez les éléments suivants :
NUMBER_OF_ACCELERATORS
: nombre de GPU à ajouter par VM réservée.ACCELERATOR_TYPE
: modèle de GPU compatible avec les VM N1. Assurez-vous que le modèle de GPU choisi est disponible dans la zone où vous souhaitez réserver des ressources. Sinon, la création de la réservation échoue.
Pour ajouter un ou plusieurs disques SSD locaux à chaque VM réservée, incluez le champ
localSsds
dans le corps de la requête. Vous pouvez spécifier jusqu'à 24 disques SSD locaux. La capacité de chaque disque SSD local est de 375 Go.Par exemple, pour spécifier deux disques SSD locaux lors de la création d'une réservation, envoyez une requête comme suit:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations { "name": "RESERVATION_NAME", "specificReservation": { "count": "NUMBER_OF_VMS", "instanceProperties": { "localSsds": [ { "diskSizeGb": "375", "interface": "INTERFACE_1" }, { "diskSizeGb": "375", "interface": "INTERFACE_2" } ], "machineType": "MACHINE_TYPE" } } }
Remplacez
INTERFACE_1
etINTERFACE_2
par le type d'interface que chaque disque SSD local doit utiliser. Spécifiez une des valeurs suivantes :Interfaces de disque NVME :
NVME
Interfaces de disque SCSI :
SCSI
Assurez-vous que le type de machine que vous spécifiez pour les VM réservées est compatible avec les interfaces de disque choisies. Sinon, la création de la réservation échoue. Pour en savoir plus, découvrez comment choisir une interface de disque.
Pour que les VM réservées utilisent une plate-forme CPU minimale spécifique au lieu de la plate-forme CPU par défaut de la zone, incluez le champ
minCpuPlatform
dans le corps de la requête.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations { "name": "RESERVATION_NAME", "specificReservation": { "count": "NUMBER_OF_VMS", "instanceProperties": { "machineType": "MACHINE_TYPE", "minCpuPlatform": "MIN_CPU_PLATFORM" } } }
Remplacez
MIN_CPU_PLATFORM
par une plate-forme CPU minimale. Pour vous assurer qu'une plate-forme CPU est disponible dans la zone où vous réservez des ressources, affichez les plates-formes CPU disponibles par zone.Pour spécifier une stratégie d'emplacement compacte afin de réduire la latence du réseau entre vos VM réservées, incluez le champ
resourcePolicies
dans le corps de la requête.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations { "name": "RESERVATION_NAME", "resourcePolicies": { "policy" : "projects/example-project/regions/REGION/resourcePolicies/COMPACT_PLACEMENT_POLICY_NAME" }, "specificReservation": { "count": "NUMBER_OF_VMS", "instanceProperties": { "machineType": "MACHINE_TYPE" } }, "specificReservationRequired": true }
Remplacez les éléments suivants :
REGION
: région où se trouve la stratégie d'emplacement compact. Vous ne pouvez créer la réservation que dans la région de la stratégie d'emplacement.COMPACT_PLACEMENT_POLICY_NAME
: nom d'une stratégie d'emplacement de concentration existante.
En outre, pour éviter les erreurs lors de la création d'une réservation à projet unique qui spécifie une stratégie d'emplacement compact, veillez à spécifier les éléments suivants :
Un type de machine compatible pour les stratégies d'emplacement compact.
Le champ
specificReservationRequired
défini surtrue
. Cela indique que seules les VM qui ciblent spécifiquement cette réservation peuvent l'utiliser.
Pour spécifier que seules les VM qui ciblent spécifiquement cette réservation peuvent l'utiliser, incluez le champ
specificReservationRequired
dans le corps de la requête et définissez-le surtrue
.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations { "name": "RESERVATION_NAME", "specificReservation": { "count": "NUMBER_OF_VMS", "instanceProperties": { "machineType": "MACHINE_TYPE" } }, "specificReservationRequired": true }
Pour permettre à une réservation de VM GPU d'être utilisée par des tâches d'entraînement personnalisées ou des tâches de prédiction dans Vertex AI, envoyez une requête
POST
à la méthodebeta.reservations.insert
. Dans le corps de la requête, incluez le champserviceShareType
et définissez-le surALLOW_ALL
.POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/reservations { "name": "RESERVATION_NAME", "reservationSharingPolicy": { "serviceShareType": "ALLOW_ALL" }, "specificReservation": { "count": "NUMBER_OF_VMS", "instanceProperties": { "machineType": "MACHINE_TYPE" } } }
Pour permettre à Compute Engine de supprimer automatiquement la réservation, sélectionnez l'une des méthodes suivantes :
Pour supprimer la réservation à une date et une heure spécifiques, envoyez une requête
POST
à la méthodebeta.reservations.insert
. Dans le corps de la requête, incluez le champdeleteAtTime
.POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/reservations { "deleteAtTime": "DELETE_AT_TIME", "name": "RESERVATION_NAME", "specificReservation": { "count": "NUMBER_OF_VMS", "instanceProperties": { "machineType": "MACHINE_TYPE" } } }
Remplacez
DELETE_AT_TIME
par une date et une heure au format de code temporel RFC 3339 comme suit :YYYY-MM-DDTHH:MM:SSOFFSET
Remplacez les éléments suivants :
YYYY-MM-DD
: date respectant la syntaxe année à 4 chiffres, mois à 2 chiffres et jour du mois à 2 chiffres, séparés par des traits d'union (-
).HH:MM:SS
: heure respectant la syntaxe heures à 2 chiffres sur 24 heures, minutes à 2 chiffres et secondes à 2 chiffres, séparés par des signes deux-points (:
).OFFSET
: fuseau horaire mis en forme en tant que décalage par rapport au temps universel coordonné (UTC). Par exemple, pour utiliser l'heure normale du Pacifique (PST), spécifiez-08:00
. Sinon, pour n'utiliser aucun décalage, spécifiezZ
.
Pour supprimer la réservation après une certaine durée, envoyez une requête
POST
à la méthodebeta.reservations.insert
. Dans le corps de la requête, incluez le champdeleteAfterDuration
.POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/reservations { "deleteAfterDuration": { "seconds": "DELETE_AFTER_DURATION" }, "name": "RESERVATION_NAME", "specificReservation": { "count": "NUMBER_OF_VMS", "instanceProperties": { "machineType": "MACHINE_TYPE" } } }
Remplacez
DELETE_AFTER_DURATION
par une durée en secondes. Par exemple, spécifiez86400
pour 86 400 secondes (1 jour).
Découvrez comment afficher vos réservations.
Découvrez comment associer des réservations à des engagements.
Découvrez comment consommer des réservations.
Découvrez comment surveiller la consommation des réservations.
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.
Pour en savoir plus, consultez Set up authentication for a local development environment.
REST
Pour utiliser les exemples d'API REST de cette page dans un environnement de développement local, vous devez utiliser les identifiants que vous fournissez à gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Pour en savoir plus, consultez la section S'authentifier pour utiliser REST dans la documentation sur l'authentification Google Cloud.
Rôles requis
Pour obtenir les autorisations nécessaires pour créer des réservations à projet unique, demandez à votre administrateur de vous accorder le rôle IAM Administrateur Compute (
roles/compute.admin
) sur le projet. Pour en savoir plus sur l'attribution de rôles, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.Ce rôle prédéfini contient les autorisations requises pour créer des réservations à projet unique. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Les autorisations suivantes sont requises pour créer des réservations à projet unique :
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
Créer une réservation à projet unique
Pour utiliser une réservation, une VM doit avoir des propriétés qui correspondent exactement à cette réservation. Pour spécifier les propriétés des VM que vous souhaitez réserver, accédez à l'une des sections suivantes de ce document :
Par défaut, une réservation peut être automatiquement utilisée par toutes les VM dont les propriétés correspondent. Si vous souhaitez contrôler l'utilisation des réservations, effectuez une ou plusieurs des opérations suivantes :
En outre, vous pouvez spécifier une stratégie d'emplacement compacte lors de la création d'une réservation à projet unique. Une stratégie d'emplacement compact spécifie que les VM doivent être situées le plus près possible les unes des autres pour réduire la latence du réseau.
Spécifier un modèle d'instance
Pour éviter les erreurs lors de la création d'une réservation en spécifiant un modèle d'instance, vérifiez les points suivants:
Pour créer une réservation à projet unique en spécifiant un modèle d'instance, sélectionnez l'une des options suivantes:
Console
gcloud
Pour créer une réservation à projet unique, utilisez la commande
gcloud compute reservations create
.Pour créer une réservation à projet unique en spécifiant un modèle d'instance et sans option facultative, exécutez la commande suivante:
gcloud compute reservations create RESERVATION_NAME \ --source-instance-template=projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME \ --vm-count=NUMBER_OF_VMS \ --zone=ZONE
Remplacez les éléments suivants :
Par exemple, pour créer une réservation pour dix VM dans la zone
us-central1-a
en spécifiant un modèle d'instance global, exécutez la commande suivante :gcloud compute reservations create my-reservation \ --source-instance-template=projects/example-project/global/example-instance-template \ --vm-count=10 \ --zone=us-central1-a
Vous pouvez éventuellement effectuer une ou plusieurs des opérations suivantes :
Go
Java
Node.js
Python
REST
Pour créer une réservation à projet unique, envoyez une requête
POST
à la méthodereservations.insert
.Pour créer une réservation à projet unique en spécifiant un modèle d'instance et sans option facultative, effectuez la requête
POST
suivante:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations { "name": "RESERVATION_NAME", "specificReservation": { "count": "NUMBER_OF_VMS", "sourceInstanceTemplate": "projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME" } }
Remplacez les éléments suivants :
Par exemple, pour créer une réservation pour dix VM dans la zone
us-central1-a
en spécifiant un modèle d'instance global, effectuez la requêtePOST
suivante :POST https://compute.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/reservations { "name": "my-reservation", "specificReservation": { "count": "10", "sourceInstanceTemplate": "projects/example-project/global/instanceTemplates/example-instance-template" } }
Vous pouvez éventuellement effectuer une ou plusieurs des opérations suivantes :
Spécifier une VM existante
Vous ne pouvez créer une réservation que sur la base d'une VM existante, située dans la même zone que la VM.
Une fois la réservation créée, vous pouvez l'utiliser en créant des VM dont les propriétés correspondent à la VM de référence. Pour ce faire :
Pour créer une réservation à projet unique qui utilise les propriétés d'une VM existante, procédez comme suit:
Spécifier les propriétés directement
Pour créer une réservation pour un projet unique en spécifiant directement les propriétés, sélectionnez l'une des options suivantes:
Console
gcloud
Pour créer une réservation à projet unique, utilisez la commande
gcloud compute reservations create
.Pour créer une réservation à projet unique en spécifiant directement les propriétés, sans inclure d'options facultatives, exécutez la commande suivante:
gcloud compute reservations create RESERVATION_NAME \ --machine-type=MACHINE_TYPE \ --vm-count=NUMBER_OF_VMS \ --zone=ZONE
Remplacez les éléments suivants :
Par exemple, pour créer une réservation dans la zone
us-central1-a
pour dix VM utilisant chacune un type de machine prédéfini N2 avec 4 processeurs virtuels, exécutez la commande suivante :gcloud compute reservations create my-reservation \ --machine-type=n2-standard-4 \ --vm-count=10 \ --zone=us-central1-a
Vous pouvez éventuellement effectuer une ou plusieurs des opérations suivantes :
Go
Java
Node.js
Python
Terraform
Pour créer une réservation à projet unique, utilisez la ressource Terraform
google_compute_reservation
.Par exemple, pour créer une réservation à un seul projet pour un type de machine prédéfini N2 avec deux processeurs virtuels, utilisez la ressource suivante:
Pour en savoir plus sur l'utilisation de Terraform, consultez la page Utiliser Terraform avec Google Cloud.
REST
Pour créer une réservation à projet unique, envoyez une requête
POST
à la méthodereservations.insert
.Pour créer une réservation à projet unique en spécifiant directement les propriétés, sans inclure de champs facultatifs, effectuez la requête
POST
suivante:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations { "name": "RESERVATION_NAME", "specificReservation": { "count": "NUMBER_OF_VMS", "instanceProperties": { "machineType": "MACHINE_TYPE" } } }
Remplacez les éléments suivants :
Par exemple, pour créer une réservation dans la zone
us-central1-a
pour dix VM utilisant chacune un type de machine prédéfini N2 avec 4 processeurs virtuels, effectuez la requêtePOST
suivante :POST https://compute.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/reservations { "name": "my-reservation", "specificReservation": { "count": "10", "instanceProperties": { "machineType": "n2-standard-4", } } }
Vous pouvez éventuellement effectuer une ou plusieurs des opérations suivantes :
Dépannage
Découvrez comment résoudre les problèmes de création de réservations.
Étapes suivantes
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2024/12/22 (UTC).
-