En este documento se explica cómo usar las reservas en Compute Engine. Para saber cómo usar reservas en otros productos de Google Cloud , consulta la siguiente documentación:
- Batch
- Dataflow
- Dataproc
- Google Kubernetes Engine
- TPU de Cloud
- Vertex AI:
Después de crear una reserva o de que Compute Engine cree automáticamente una reserva para que puedas cumplir una reserva futura, Compute Engine retiene los recursos reservados. Después, puedes usar esos recursos reservados para crear instancias de Compute Engine que coincidan con las propiedades de la reserva. Esta acción se conoce como consumir una reserva. Puedes usar la capacidad reservada para crear instancias hasta que la reserva se consuma por completo.
Limitaciones
No puedes usar una reserva para crear los siguientes recursos de Compute Engine:
Máquinas virtuales de acceso puntual o instancias interrumpibles
Nodos de único cliente
Antes de empezar
-
Si aún no lo has hecho, configura la autenticación.
La autenticación verifica tu identidad para acceder a Google Cloud servicios y APIs. Para ejecutar código o ejemplos desde un entorno de desarrollo local, puedes autenticarte en Compute Engine seleccionando una de las siguientes opciones:
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
-
Instala Google Cloud CLI. Después de la instalación, inicializa la CLI de Google Cloud ejecutando el siguiente comando:
gcloud init
Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.
- Set a default region and zone.
Go
Para usar las Go muestras de esta página en un entorno de desarrollo local, instala e inicializa la CLI de gcloud y, a continuación, configura las credenciales predeterminadas de la aplicación con tus credenciales de usuario.
Instala Google Cloud CLI.
Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.
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.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Para obtener más información, consulta Set up authentication for a local development environment.
Java
Para usar las Java muestras de esta página en un entorno de desarrollo local, instala e inicializa la CLI de gcloud y, a continuación, configura las credenciales predeterminadas de la aplicación con tus credenciales de usuario.
Instala Google Cloud CLI.
Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.
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.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Para obtener más información, consulta Set up authentication for a local development environment.
Node.js
Para usar las Node.js muestras de esta página en un entorno de desarrollo local, instala e inicializa la CLI de gcloud y, a continuación, configura las credenciales predeterminadas de la aplicación con tus credenciales de usuario.
Instala Google Cloud CLI.
Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.
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.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Para obtener más información, consulta Set up authentication for a local development environment.
Python
Para usar las Python muestras de esta página en un entorno de desarrollo local, instala e inicializa la CLI de gcloud y, a continuación, configura las credenciales predeterminadas de la aplicación con tus credenciales de usuario.
Instala Google Cloud CLI.
Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.
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.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Para obtener más información, consulta Set up authentication for a local development environment.
REST
Para usar las muestras de la API REST de esta página en un entorno de desarrollo local, debes usar las credenciales que proporciones a la CLI de gcloud.
Instala Google Cloud CLI.
Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.
Para obtener más información, consulta el artículo Autenticarse para usar REST de la documentación sobre autenticación de Google Cloud .
Roles obligatorios
Para obtener los permisos que necesitas para usar las reservas, pide a tu administrador que te conceda el rol de gestión de identidades y accesos Administrador de instancias de Compute (v. 1) (
roles/compute.instanceAdmin.v1
) en el proyecto. Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar el acceso a proyectos, carpetas y organizaciones.Este rol predefinido contiene los permisos necesarios para usar las reservas. Para ver los permisos exactos que se necesitan, despliega la sección Permisos necesarios:
Permisos obligatorios
Para usar las reservas, se necesitan los siguientes permisos:
-
Para crear reservas, sigue estos pasos:
compute.reservations.create
en el proyecto -
Para crear instancias, sigue estos pasos:
compute.instances.create
en el proyecto- Para usar una imagen personalizada para crear la VM, haz clic en
compute.images.useReadOnly
en la imagen. - Para usar una captura para crear la VM,
compute.snapshots.useReadOnly
en la captura - Para usar una plantilla de instancia para crear la VM, haz clic en
compute.instanceTemplates.useReadOnly
en la plantilla de instancia. - Para asignar una red antigua a la VM, haz lo siguiente:
compute.networks.use
en el proyecto - Para especificar una dirección IP estática para la máquina virtual,
compute.addresses.use
en el proyecto - Para asignar una dirección IP externa a la VM cuando se usa una red antigua, haz lo siguiente:
compute.networks.useExternalIp
en el proyecto - Para especificar una subred para la VM,
compute.subnetworks.use
en el proyecto o en la subred elegida. - Para asignar una dirección IP externa a la VM cuando se usa una red de VPC,
compute.subnetworks.useExternalIp
en el proyecto o en la subred elegida. - Para definir los metadatos de la instancia de VM de la VM:
compute.instances.setMetadata
en el proyecto, - Para definir etiquetas en la máquina virtual,
compute.instances.setTags
en la máquina virtual - Para definir etiquetas de la VM,
compute.instances.setLabels
en la VM - Para definir una cuenta de servicio que use la VM, haz lo siguiente en la VM:
compute.instances.setServiceAccount
- Para crear un disco para la VM
compute.disks.create
del proyecto, sigue estos pasos: - Para adjuntar un disco en modo de solo lectura o de lectura y escritura, haz lo siguiente:
compute.disks.use
en el disco - Para adjuntar un disco en modo de solo lectura,
compute.disks.useReadOnly
en el disco.
-
Para crear plantillas de instancia, sigue estos pasos:
compute.instanceTemplates.create
en el proyecto
También puedes obtener estos permisos con roles personalizados u otros roles predefinidos.
Consumir una reserva
En los ejemplos de las siguientes secciones se muestra cómo consumir una reserva creando una sola instancia de VM. También puede consumir reservas creando instancias que coincidan con las propiedades de las reservas mediante otra opción de implementación o actualizando las propiedades de las instancias que ya tenga para que coincidan con las reservas consumidas automáticamente.
Para consumir una reserva, utilice uno de los siguientes métodos:
Para crear una instancia que consuma una reserva automática, independientemente de cómo se haya creado, consulta Consumir una reserva consumida automáticamente.
Para crear una instancia que consuma una reserva específica que hayas creado, consulta Consumir una reserva específica.
Para crear una instancia que consuma una reserva específica que haya creado automáticamente Compute Engine (en este caso, para cumplir una reserva futura en modo Calendario), consulta Consumir una reserva creada automáticamente para una solicitud en modo Calendario.
Consumir una reserva que se consume automáticamente
Las reservas consumidas automáticamente permiten que cualquier instancia de proceso que coincida con las propiedades de la reserva la consuma automáticamente. Este comportamiento de consumo se aplica a las instancias nuevas y a las que ya están en ejecución. Este tipo de reserva es el predeterminado cuando creas reservas o cuando Compute Engine crea automáticamente una reserva para cumplir una futura.
Si las propiedades de una reserva automática de un solo proyecto y de una reserva automática compartida coinciden, las instancias de tu proyecto consumirán primero la reserva de un solo proyecto y, después, la reserva compartida. Para obtener más información, consulta el orden de consumo de las reservas.
Para crear y usar una reserva automática de ejemplo, selecciona una de las siguientes opciones:
Consola
En el siguiente ejemplo se muestra cómo crear una reserva automática en la zona
us-central1-a
para tres instancias N2 con 32 vCPUs y la plataforma de CPU Intel Cascade Lake como mínimo. También se muestra cómo crear una sola instancia para consumir la reserva.Para crear la reserva automática de ejemplo y consumirla, haz lo siguiente:
Para crear una reserva de ejemplo, sigue estos pasos:
En la Google Cloud consola, ve a la página Reservas.
Los pasos restantes aparecerán automáticamente en la consolaGoogle Cloud .
En la pestaña Reserva bajo demanda (opción predeterminada), haz clic en
Crear reserva. Aparecerá la página Crear una reserva.En el campo Nombre, introduce un nombre para la reserva. Por ejemplo, introduce
reservation-01
.Selecciona la región y la zona donde quieras reservar los recursos. Por ejemplo, selecciona us-central1 y us-central1-a respectivamente.
En la sección Tipo de uso compartido, haga una de las siguientes acciones:
Para crear una reserva de un solo proyecto, selecciona Local.
Para crear una reserva compartida, selecciona Compartido y, a continuación, especifica los proyectos con los que quieras compartir la reserva.
En la sección Usar con instancia de VM, seleccione Usar reserva automáticamente, si aún no lo ha hecho.
En el campo Número de instancias de VM, introduce
3
.En la pestaña Uso general, selecciona N2.
En la sección Tipo de máquina, en la pestaña Predefinido (opción predeterminada), selecciona n2-standard-32.
Amplía Plataforma de CPU y GPU y, a continuación, en el campo Plataforma de CPU, selecciona Intel Cascade Lake o versiones posteriores.
Haz clic en Crear.
Para crear una instancia que consuma la reserva de ejemplo, sigue estos pasos:
En la Google Cloud consola, ve a la página Crear una instancia.
Aparecerá la página Crear una instancia y se mostrará el panel Configuración de la máquina.
En el panel Configuración del equipo, haga lo siguiente:
En el campo Name (Nombre), introduce un nombre para la instancia. En este ejemplo, escribe
instance-01
.Especifica la región y la zona en las que quieres reservar los recursos. En este ejemplo, selecciona us-central1 y us-central1-a respectivamente.
En la pestaña Uso general, selecciona N2.
En la sección Tipo de máquina, en la pestaña Predefinido (opción predeterminada), selecciona n2-standard-32.
Despliega la sección Opciones avanzadas y, en el campo Plataforma de CPU, selecciona Intel Cascade Lake o posterior.
Opcional: la opción predeterminada es consumir automáticamente una reserva coincidente. Sin embargo, si quieres especificar este ajuste, haz lo siguiente:
En el menú de navegación, haz clic en Opciones avanzadas. Aparecerá el panel Avanzado.
En la sección Reservas, selecciona Usar selección automática.
Haz clic en Crear.
gcloud
En el siguiente ejemplo se muestra cómo crear una reserva automática en la zona
us-central1-a
para tres instancias N2 con 32 vCPUs y la plataforma de CPU Intel Cascade Lake como mínimo. También se muestra cómo crear una sola instancia para consumir la reserva.Para crear la reserva automática de ejemplo y consumirla, haz lo siguiente:
Para crear la reserva de ejemplo, usa el comando
gcloud compute reservations create
:gcloud compute reservations create reservation-01 \ --machine-type=n2-standard-32 \ --min-cpu-platform="Intel Cascade Lake" \ --vm-count=3 \ --zone=us-central1-a
Para crear una instancia que consuma la reserva de ejemplo, usa el comando
gcloud compute instances create
con la marca--reservation-affinity
definida comoany
. Comoany
es la configuración predeterminada, también puedes omitir esta marca.gcloud compute instances create instance-01 \ --machine-type=n2-standard-32 \ --min-cpu-platform="Intel Cascade Lake" \ --reservation-affinity=any \ --zone=us-central1-a
Go
Para crear la reserva automática de ejemplo con una plantilla de instancia y crear una instancia para consumir la reserva con la misma plantilla, usa el siguiente código de ejemplo:
Java
En el siguiente ejemplo se muestra cómo crear una instancia N1 con cuatro vCPUs y la plataforma de CPU mínima Intel Skylake en la zona
us-central1-a
. La instancia consume automáticamente una reserva coincidente.Para crear la instancia de ejemplo, usa el siguiente código de muestra:
Node.js
En el siguiente ejemplo se muestra cómo crear una instancia N1 con cuatro vCPUs y la plataforma de CPU mínima Intel Skylake en la zona
us-central1-a
. La instancia consume automáticamente una reserva coincidente.Para crear la instancia de ejemplo, usa el siguiente código de muestra:
Python
En el siguiente ejemplo se muestra cómo crear una reserva automática en la zona
us-central1-a
para tres instancias N1 con una vCPU y la plataforma de CPU mínima Intel Ivy. También se muestra cómo crear una sola instancia para consumir la reserva.Para crear la reserva automática de ejemplo y consumirla, haz lo siguiente:
REST
En el siguiente ejemplo se muestra cómo crear una reserva automática en la zona
us-central1-a
para tres instancias N2 con 32 vCPUs y la plataforma de CPU Intel Cascade Lake como mínimo. También se muestra cómo crear una sola instancia para consumir la reserva.Para crear la reserva automática de ejemplo y consumirla, haz lo siguiente:
Para crear la reserva de ejemplo, haz una solicitud
POST
al métodoreservations.insert
:POST https://compute.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/reservations { "name": "reservation-01", "specificReservation": { "count": "3", "instanceProperties": { "machineType": "n2-standard-32", "minCpuPlatform": "Intel Cascade Lake", } } }
Para crear una instancia que consuma la reserva de ejemplo, haz una solicitud
POST
al métodoinstances.insert
. En el cuerpo de la solicitud, incluye el campoconsumeReservationType
con el valorANY_RESERVATION
. Sin embargo, comoANY_RESERVATION
es la configuración predeterminada, también puedes omitir el campo.POST https://compute.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/instances { "name": "instance-01", "machineType": "zones/us-central1-a/machineTypes/n2-standard-32", "minCpuPlatform": "Intel Cascade Lake", "disks": [ { "boot": true, "initializeParams": { "sourceImage": "projects/debian-cloud/global/images/family/debian-12" } } ], "networkInterfaces": [ { "network": "global/networks/default" } ], "reservationAffinity": { "consumeReservationType": "ANY_RESERVATION" } }
Consumir una reserva segmentada específicamente
Las reservas específicas permiten que las nuevas instancias de cálculo que coincidan con las propiedades de la reserva y que se dirijan a ella la consuman. Las instancias solo se crean correctamente si sus propiedades coinciden con las de la reserva. De lo contrario, se producirán errores.
En función del método de creación que quieras usar, crea reservas e instancias específicas que se dirijan a ellas de la siguiente manera:
Método de creación Cuando creas una reserva Cuando creas instancias Google Cloud consola En la sección Usar con instancia de VM, selecciona Seleccionar reserva específica. En el panel Avanzado, en la sección Reservas, selecciona Elegir una reserva. A continuación, sigue las instrucciones para seleccionar una reserva. Google Cloud CLI Incluye la marca --require-specific-reservation
.Incluye las siguientes marcas:
- La marca
--reservation-affinity
se ha definido enspecific
. - La marca
--reservation
se ha definido en la URL de la reserva.
Go Incluya el campo SpecificReservationRequired
con el valortrue
.En el campo ReservationAffinity
, incluya los siguientes campos:- El campo
ConsumeReservationType
tiene el valorSPECIFIC_RESERVATION
. - El campo
Key
tiene el valorcompute.googleapis.com/reservation-name
. - El campo
Values
se ha definido en la URL de la reserva.
Java Incluya el campo setSpecificReservationRequired
con el valortrue
.En el campo ReservationAffinity
, incluya los siguientes campos:- El campo
setConsumeReservationType
tiene el valorSPECIFIC_RESERVATION
. - El campo
setKey
tiene el valorcompute.googleapis.com/reservation-name
. - El campo
addValues
se ha definido en la URL de la reserva.
Node.js y la API REST Incluya el campo specificReservationRequired
con el valortrue
.En el campo reservationAffinity
, incluya los siguientes campos:- El campo
consumeReservationType
tiene el valorSPECIFIC_RESERVATION
. - El campo
key
tiene el valorcompute.googleapis.com/reservation-name
. - El campo
values
se ha definido en la URL de la reserva.
Python y Terraform Incluya el campo specific_reservation_required
con el valortrue
.En el campo reservation_affinity
, incluya los siguientes campos:- El campo
consume_reservation_type
tiene el valorSPECIFIC_RESERVATION
. - El campo
key
tiene el valorcompute.googleapis.com/reservation-name
. - El campo
values
se ha definido en la URL de la reserva.
Para crear una reserva específica de ejemplo y una instancia para consumirla, selecciona una de las siguientes opciones:
Consola
En el siguiente ejemplo se muestra cómo crear una reserva específica en la zona
us-central1-a
para tres instancias N2 con 32 vCPUs y la plataforma de CPU mínima Intel Cascade Lake. También se muestra cómo crear una sola instancia para consumir la reserva.Para crear la reserva específica del ejemplo y consumirla, haz lo siguiente:
Para crear una reserva de ejemplo, sigue estos pasos:
En la Google Cloud consola, ve a la página Reservas.
Los pasos restantes aparecerán automáticamente en la consolaGoogle Cloud .
En la pestaña Reserva bajo demanda (opción predeterminada), haz clic en
Crear reserva. Aparecerá la página Crear una reserva.En el campo Nombre, introduce un nombre para la reserva. Por ejemplo, introduce
reservation-02
.Especifica la región y la zona en las que quieres reservar los recursos. En este ejemplo, selecciona us-central1 y us-central1-a, respectivamente.
En la sección Tipo de uso compartido, haga una de las siguientes acciones:
Para crear una reserva de un solo proyecto, selecciona Local.
Para crear una reserva compartida, selecciona Compartido y, a continuación, especifica los proyectos con los que quieras compartir la reserva.
En la sección Usar con instancia de VM, selecciona Seleccionar reserva específica.
En el campo Número de instancias de VM, introduce
3
.En la pestaña Uso general, selecciona N2.
En la sección Tipo de máquina, en la pestaña Predefinido (opción predeterminada), selecciona n2-standard-32.
Amplía Plataforma de CPU y GPU y, a continuación, en el campo Plataforma de CPU, selecciona Intel Cascade Lake o versiones posteriores.
Haz clic en Crear.
Para crear una instancia que consuma la reserva de ejemplo, sigue estos pasos:
En la Google Cloud consola, ve a la página Crear una instancia.
Aparecerá la página Crear una instancia y se mostrará el panel Configuración de la máquina.
En el panel Configuración del equipo, haga lo siguiente:
En el campo Name (Nombre), introduce un nombre para la instancia. En este ejemplo, escribe
instance-02
.Especifica la región y la zona en las que quieres reservar los recursos. En este ejemplo, selecciona us-central1 y us-central1-a, respectivamente.
En la pestaña Uso general, selecciona N2.
En la sección Tipo de máquina, en la pestaña Predefinido (opción predeterminada), selecciona n2-standard-32.
Despliega la sección Opciones avanzadas y, en el campo Plataforma de CPU, selecciona Intel Cascade Lake o posterior.
En el menú de navegación, haz clic en Opciones avanzadas. Aparecerá el panel Avanzado.
En la sección Reservas, selecciona Elegir una reserva y, a continuación, haz clic en Elegir reserva.
En el panel Elige una reserva que aparece, haz lo siguiente:
Selecciona la reserva específica que has creado en los pasos anteriores. Si quieres usar una reserva compartida que se encuentre en otro proyecto, selecciona el proyecto en el que se encuentra la reserva en la lista Proyecto.
Haz clic en Elegir.
Haz clic en Crear.
gcloud
En el siguiente ejemplo se muestra cómo crear una reserva específica en la zona
us-central1-a
para tres instancias N2 con 32 vCPUs y la plataforma de CPU mínima Intel Cascade Lake. También se muestra cómo crear una sola instancia para consumir la reserva.Para crear la reserva específica del ejemplo y consumirla, haz lo siguiente:
Para crear la reserva de ejemplo, usa el comando
gcloud compute reservations create
con la marca--require-specific-reservation
:gcloud compute reservations create reservation-02 \ --machine-type=n2-standard-32 \ --min-cpu-platform="Intel Cascade Lake" \ --require-specific-reservation \ --vm-count=3 \ --zone=us-central1-a
Para crear una instancia que consuma la reserva de ejemplo, usa el comando
gcloud compute instances create
con las marcas--reservation
y--reservation-affinity=specific
:gcloud compute instances create instance-02 \ --machine-type=n2-standard-32 \ --min-cpu-platform="Intel Cascade Lake" \ --reservation-affinity=specific \ --reservation=RESERVATION_URL \ --zone=us-central1-a
Sustituye
RESERVATION_URL
por la URL de la reserva. Se debe utilizar uno de los valores indicados a continuación.Si has creado la reserva en el mismo proyecto:
reservation-02
Si la reserva está en otro proyecto, haz lo siguiente:
projects/PROJECT_ID/reservations/reservation-02
Go
En los siguientes ejemplos se muestra cómo crear una instancia N2 con 32 vCPUs e Intel Cascade Lake como plataforma de CPU mínima en la zona
us-central1-a
para consumir una reserva específica que coincida:Para crear la instancia de ejemplo que consuma una reserva específica de un solo proyecto, usa el siguiente código de ejemplo:
Para crear la instancia de ejemplo que consuma una reserva compartida específica, usa el siguiente código de muestra:
Java
En los siguientes ejemplos se muestra cómo crear una instancia N1 con cuatro vCPUs e Intel Skylake como plataforma de CPU mínima en la zona
us-central1-a
para consumir una reserva específica coincidente:Para crear una reserva de ejemplo como reserva de un solo proyecto y crear una instancia para consumirla, usa el siguiente código de ejemplo:
Para crear una reserva de ejemplo como reserva compartida y crear una instancia para consumirla, usa el siguiente código de ejemplo:
Node.js
En los siguientes ejemplos se muestra cómo crear una instancia N1 con 4 vCPUs y la plataforma de CPU mínima Intel Skylake en la zona
us-central1-a
para consumir una reserva específica que coincida:Python
En los siguientes ejemplos se muestra cómo crear una instancia N2 con 32 vCPUs e Intel Cascade Lake como plataforma de CPU mínima en la zona
us-central1-a
para consumir una reserva específica que coincida:Para crear la reserva específica del ejemplo y consumirla, haz lo siguiente:
Para crear y consumir la reserva de ejemplo como una reserva de un solo proyecto, usa el siguiente código de ejemplo:
Para crear y consumir la reserva de ejemplo como reserva compartida, usa el siguiente fragmento de código:
REST
En el siguiente ejemplo se muestra cómo crear una reserva específica en la zona
us-central1-a
para tres instancias N2 con 32 vCPUs y la plataforma de CPU mínima Intel Cascade Lake. También se muestra cómo crear una sola instancia para consumir la reserva.Para crear la reserva específica del ejemplo y consumirla, haz lo siguiente:
Para crear la reserva de ejemplo, envía una solicitud
POST
al métodoinstances.insert
. En el cuerpo de la solicitud, incluye el campospecificReservationRequired
con el valortrue
:POST https://compute.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/reservations { "name": "reservation-02", "specificReservation": { "count": "3", "instanceProperties": { "machineType": "n2-standard-32", "minCpuPlatform": "Intel Cascade Lake", } }, "specificReservationRequired": true }
Para crear una instancia que consuma la reserva de ejemplo, haz una solicitud
POST
al métodoinstances.insert
. En el cuerpo de la solicitud, en el camporeservationAffinity
, incluye lo siguiente:El campo
consumeReservationType
se ha definido comoSPECIFIC_RESERVATION
.El campo
key
se ha definido comocompute.googleapis.com/reservation-name
.El campo
values
se ha definido en la URL de la reserva.
La solicitud es similar a la siguiente:
POST https://compute.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/instances { "name": "instance-02", "machineType": "zones/us-central1-a/machineTypes/n2-standard-32", "minCpuPlatform": "Intel Cascade Lake", "disks": [ { "boot": true, "initializeParams": { "sourceImage": "projects/debian-cloud/global/images/family/debian-12" } } ], "networkInterfaces": [ { "network": "global/networks/default" } ], "reservationAffinity": { "consumeReservationType": "SPECIFIC_RESERVATION", "key": "compute.googleapis.com/reservation-name", "values": [ "RESERVATION_URL" ] } }
Sustituye
RESERVATION_URL
por la URL de la reserva. Se debe utilizar uno de los valores indicados a continuación.Si has creado la reserva en el mismo proyecto:
reservation-02
Si la reserva está en otro proyecto, haz lo siguiente:
projects/PROJECT_ID/reservations/reservation-02
Usar una reserva creada automáticamente para una solicitud en el modo Calendario
Este tipo de reserva permite que las nuevas instancias de proceso consuman una reserva que Compute Engine crea automáticamente para cumplir una reserva futura en modo calendario.
Para consumir este tipo de reserva, debes crear una instancia de la siguiente manera:
La instancia debe orientarse específicamente a la reserva.
La instancia debe detenerse o eliminarse a la hora de finalización de la reserva.
La instancia debe usar el modelo de aprovisionamiento vinculado a la reserva. Cuando crees una instancia, puedes especificar este modelo de la siguiente manera:
En la Google Cloud consola, si especificas un tipo de máquina compatible para las reservas futuras en el modo de calendario, se seleccionará automáticamente el modelo vinculado a la reserva.
En gcloud CLI, incluye la marca
--provisioning-model
con el valorreservation-bound
.En la API REST, incluya el campo
provisioningModel
con el valorRESERVATION_BOUND
.
En el siguiente ejemplo se crea una solicitud de reserva futura en modo de calendario para instancias A3 Ultra. En el ejemplo también se muestran los campos que se deben especificar al crear una instancia de A3 Ultra independiente para consumir la reserva creada automáticamente para la solicitud.
Para consumir la reserva creada automáticamente de ejemplo, selecciona una de las siguientes opciones:
Consola
Crea una solicitud de ejemplo de cinco instancias A3 Ultra y envíala para que se revise:
En la Google Cloud consola, ve a la página Reservas.
Haz clic en la pestaña Reservas futuras.
Haz clic en
Crear reserva futura. Se abrirá la página Crear una reserva futura.En la sección Configuración de hardware, selecciona Especificar tipo de máquina y, a continuación, especifica una instancia A3 Ultra.
En la sección Método de obtención, sigue estos pasos:
Selecciona Buscar capacidad durante un máximo de 90 días.
En las listas Región y Zona, especifica la región y la zona en las que quieres reservar recursos. En este ejemplo, selecciona us-central1 y us-central1-a respectivamente.
En el campo Capacidad total necesaria, introduce
5
.En la sección Periodo de reserva, especifica el periodo de reserva.
Especifica los campos restantes y haz clic en Enviar.
A la hora de inicio de la solicitud, para crear una instancia A3 Ultra que consuma la reserva creada automáticamente de ejemplo, haz lo siguiente:
En la Google Cloud consola, ve a la página Crear una instancia.
En el campo Name (Nombre), introduce un nombre para la instancia. En este ejemplo, escribe
example-instance
.Especifica la región y la zona en las que quieras reservar recursos. En este ejemplo, selecciona us-central1 y us-central1-a respectivamente.
Haz clic en la pestaña GPUs (GPUs) y, a continuación, en la lista GPU type (Tipo de GPU), selecciona NVIDIA H200 141GB. Esta acción especifica una instancia A3 Ultra y define el modelo de aprovisionamiento como vinculado a reserva.
En el menú de navegación, haz clic en Opciones avanzadas.
En la sección Reservas, selecciona Elegir una reserva y, a continuación, haz clic en Elegir una reserva.
En el panel Elige una reserva, haz lo siguiente:
Selecciona una reserva específica. Si quieres usar una reserva compartida que esté en otro proyecto, selecciona el proyecto en el que se encuentre la reserva en la lista Proyecto.
Haz clic en Elegir.
En la sección Modelo de aprovisionamiento, despliega la sección Configuración avanzada del modelo de aprovisionamiento de VMs.
En la lista Al finalizar la VM, selecciona Detener (opción predeterminada) o Eliminar.
Haz clic en Crear.
gcloud
Para crear una solicitud de ejemplo de cinco máquinas virtuales A3 Ultra y enviarla para que se revise, usa el comando
gcloud beta compute future-reservations create
:gcloud beta compute future-reservations create example-fr \ --auto-delete-auto-created-reservations \ --deployment-type=DENSE \ --planning-status=SUBMITTED \ --require-specific-reservation \ --reservation-mode=CALENDAR \ --reservation-name=example-reservation \ --share-type=local \ --start-time=2025-10-05T00:00:00Z \ --end-time=2025-10-19T00:00:00Z \ --machine-type=a3-ultragpu-8g \ --total-count=5 \ --zone=us-central1-a
Supongamos que Google Cloud aprueba la solicitud y que Compute Engine crea automáticamente una reserva vacía. A la hora de inicio de la solicitud, el 5 de octubre del 2025, Compute Engine aumenta el número de VMs con GPU reservadas en la reserva. Después, puedes usar la reserva.
A la hora de inicio de la solicitud, para crear una instancia A3 Ultra que consuma la reserva creada automáticamente de ejemplo, usa el comando
gcloud compute instances create
con las siguientes marcas:La bandera de
--instance-termination-action
.La marca
--provisioning-model
se ha definido comoRESERVATION_BOUND
.La bandera de
--reservation
.La marca
--reservation-affinity
se ha definido comospecific
.
El comando es similar al siguiente. Para ver todos los requisitos para crear una instancia de A3 Ultra, consulta el artículo Crear una instancia de A3 Ultra o A4.
gcloud compute instance create example-instance \ --machine-type=a3-ultragpu-8g \ --instance-termination-action=TERMINATION_ACTION \ --provisioning-model=RESERVATION_BOUND \ --reservation-affinity=specific \ --reservation=RESERVATION_URL \ --zone=us-central1-a \ ...
El comando incluye los siguientes valores:
TERMINATION_ACTION
: indica si Compute Engine detiene (STOP
) o elimina (DELETE
) la VM al final del periodo de reserva.RESERVATION_URL
: la URL de la reserva, que tiene el siguiente formato:Si la reserva creada automáticamente existe en tu proyecto, haz lo siguiente:
example-reservation
.Si la reserva creada automáticamente está en otro proyecto:
projects/PROJECT_ID/reservations/example-reservation
.
REST
Para crear una solicitud de ejemplo de cinco instancias A3 Ultra y enviarla a revisión, haz una solicitud
POST
al método betafutureReservations.insert
:POST https://compute.googleapis.com/compute/beta/projects/example-project/zones/us-central1-a/futureReservations { "name": "example-request-calendar-mode", "autoDeleteAutoCreatedReservations": true, "deploymentType": "DENSE", "planningStatus": "SUBMITTED", "reservationMode": "CALENDAR", "reservationName": "example-reservation", "shareSettings": { "shareType": "LOCAL" }, "specificReservationRequired": true, "specificSkuProperties": { "machineType": "a3-ultragpu-8g", "totalCount": 5 }, "timeWindow": { "startTime": "2025-10-05T00:00:00Z", "endTime": "2025-10-19T00:00:00Z" } }
Supongamos que Google Cloud aprueba la solicitud y que Compute Engine crea automáticamente una reserva vacía. A la hora de inicio de la solicitud, el 5 de octubre del 2025, Compute Engine aumenta el número de VMs con GPU reservadas en la reserva. Después, puedes usar la reserva.
A la hora de inicio de la solicitud, para crear una instancia A3 Ultra que consuma la reserva creada automáticamente de ejemplo, haz una solicitud
POST
al métodoinstances.insert
. En el cuerpo de la solicitud, incluye los siguientes campos:El campo
reservationAffinity.consumeReservationType
tiene el valorSPECIFIC_RESERVATION
.El campo
reservationAffinity.key
tiene el valorcompute.googleapis.com/reservation-name
.El campo
reservationAffinity.values
se ha definido en la URL de la reserva.El campo
scheduling.instanceTerminationAction
.El campo
scheduling.provisioningModel
se ha definido comoRESERVATION_BOUND
.
La solicitud es similar a la siguiente. Para ver todos los requisitos para crear una instancia de A3 Ultra, consulta el artículo Crear una instancia de A3 Ultra o A4.
POST https://compute.googleapis.com/compute/beta/projects/example-project/zones/us-central1-a/ { { "machineType": "projects/example-project/zones/us-central1-a/machineTypes/a3-ultragpu-8g", "name": "example-instance", "reservationAffinity": { "consumeReservationType": "SPECIFIC_RESERVATION", "key": "compute.googleapis.com/reservation-name", "values":[ "RESERVATION_URL" ], }, "scheduling": { "instanceTerminationAction": "TERMINATION_ACTION", "provisioningModel": "RESERVATION_BOUND" }, ... } }
El cuerpo de la solicitud incluye los siguientes valores:
RESERVATION_URL
: la URL de la reserva, que tiene el siguiente formato:Si la reserva creada automáticamente existe en tu proyecto, haz lo siguiente:
example-reservation
.Si la reserva creada automáticamente está en otro proyecto:
projects/PROJECT_ID/reservations/example-reservation
.
TERMINATION_ACTION
: indica si Compute Engine detiene (STOP
) o elimina (DELETE
) la VM al final del periodo de reserva.
Comprobar que las propiedades de la instancia coinciden con una reserva consumida automáticamente
Para comprobar si las propiedades de una instancia de proceso coinciden con una reserva consumida automáticamente, haz lo siguiente:
Crea una copia de la reserva como reserva específica para una sola instancia.
Crea una instancia de prueba para consumir la reserva.
Si puede crear la instancia de prueba, sus propiedades coincidirán con las de la reserva de prueba. De lo contrario, se producirán errores.
Después de confirmar que las propiedades de la instancia de prueba y de la reserva de prueba coinciden, elimina la reserva y la instancia de prueba.
Verificar el consumo de reservas
Para verificar el consumo de reservas, puedes hacer una o varias de las siguientes acciones:
Para ver el número actual de instancias de proceso que están consumiendo tus reservas y cuántas instancias más pueden consumirlas, consulta las reservas.
Para monitorizar los datos de consumo de reservas, que se actualizan cada 30 minutos, y recibir alertas cuando se consuman o no se consuman reservas, monitoriza el consumo de reservas.
Para ver los datos de consumo de reservas, que se actualizan cada 24 horas, haga una de las siguientes acciones:
- Para recibir informes de consumo en un segmento de Cloud Storage y analizar las tendencias de consumo e identificar las reservas no consumidas, consulta el informe de uso de las reservas.
- Para ver el consumo de reservas pasadas y previstas, analizar las tendencias de consumo y planificar las necesidades de capacidad futuras, utilice Planificador de capacidad.
Siguientes pasos
A menos que se indique lo contrario, el contenido de esta página está sujeto a la licencia Reconocimiento 4.0 de Creative Commons y las muestras de código están sujetas a la licencia Apache 2.0. Para obtener más información, consulta las políticas del sitio web de Google Developers. Java es una marca registrada de Oracle o sus afiliados.
Última actualización: 2025-09-11 (UTC).
-