Crear solicitudes de reserva futuras compartidas


En este documento se explica cómo crear solicitudes de reserva futuras compartidas.

Si Google Cloud aprueba tu solicitud de reserva futura compartida, Compute Engine creará automáticamente reservas compartidas entre varios proyectos a la hora de inicio especificada en tu solicitud. Las VMs y las reservas del proyecto que aloja la reserva futura (proyecto propietario) y de los proyectos con los que se comparte la reserva futura (proyectos consumidores) consumen estas reservas compartidas creadas automáticamente. Para obtener más información sobre cómo funcionan y se pueden usar las reservas compartidas creadas automáticamente, consulta el artículo Crear reservas compartidas.

Antes de empezar

  • Si aún no lo has hecho, sigue estos pasos:
  • 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

    1. 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.

    2. Set a default region and zone.

    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. 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.

    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 crear solicitudes de reserva futuras compartidas, pide a tu administrador que te conceda el rol de gestión de identidades y accesos Usuario de reserva futura de Compute (roles/compute.futureReservationUser) 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 crear solicitudes de reserva futuras compartidas. Para ver los permisos exactos que se necesitan, despliega la sección Permisos necesarios:

Permisos obligatorios

Para crear solicitudes de reserva futuras compartidas, se necesitan los siguientes permisos:

  • Para crear una solicitud de reserva futura, sigue estos pasos: compute.futureReservations.create en el proyecto
  • Para permitir que Compute Engine cree automáticamente reservas, haz lo siguiente: compute.reservations.create en el proyecto
  • Para especificar una plantilla de instancia, siga estos pasos: compute.instanceTemplates.useReadOnly en la plantilla de instancia

También puedes obtener estos permisos con roles personalizados u otros roles predefinidos.

Restricciones

Además de las restricciones generales para las reservas futuras, la creación de solicitudes de reserva futuras compartidas tiene las siguientes restricciones:

  • El proyecto que utilices para crear solicitudes de reserva futuras compartidas (el proyecto propietario) debe añadirse a la lista de permitidos de la restricción de la política de organización Shared Reservations Owner Projects (compute.sharedReservationsOwnerProjects) por un administrador de políticas de organización. Para obtener más información, consulta el artículo Permitir y restringir que los proyectos creen y modifiquen reservas compartidas en la documentación de reservas de Compute Engine.

  • Si mueves a otra organización un proyecto que ha creado una solicitud de reserva futura compartida, esta se eliminará. El proyecto no se elimina automáticamente de la restricción de la política de organización Proyectos de propietario de reservas compartidas (compute.sharedReservationsOwnerProjects), pero puedes eliminarlo de esta restricción si quieres.

  • Cada solicitud de reserva futura compartida se puede compartir con un máximo de 100 proyectos de consumidor.

  • En cada organización, puede crear hasta 100 solicitudes de reserva futuras compartidas por cada combinación única de propiedades de VM.

Crear una solicitud de borrador

Cuando crees una solicitud de reserva futura, puedes guardarla como borrador y enviarla más tarde para que se revise a partir del Google Cloud , o bien enviarla directamente para que se revise. Google recomienda crear primero una solicitud de borrador, ya que así puedes determinar el número de máquinas virtuales que Compute Engine aprovisionará para tu solicitud en lugar de estimar este número manualmente. Además, puedes modificar el número de máquinas virtuales reservadas en la solicitud antes de enviarla para que se revise.

Para consumir una reserva creada automáticamente para una reserva futura, una VM debe tener propiedades que coincidan exactamente con esa reserva. Para especificar las propiedades de las VMs que quieres reservar creando una solicitud de reserva futura en borrador, usa uno de los siguientes métodos:

  • Recomendación: especificar una plantilla de instancia

    Puede usar una plantilla de instancia para definir las propiedades de una solicitud de reserva futura en borrador. Si usas una plantilla de instancia, puedes definir las propiedades de una futura solicitud de reserva y las VMs que pueden consumir las reservas creadas automáticamente en el mismo lugar. Sin embargo, como las plantillas son específicas de cada proyecto, no puedes usar la misma plantilla para crear VMs que puedan consumir las reservas creadas automáticamente fuera del proyecto que creó la solicitud de reserva futura. En los proyectos con los que se comparte la reserva futura, debes crear plantillas similares o crear VMs especificando las propiedades directamente.

  • Especificar una VM

    Puede usar una VM que ya tenga para definir las propiedades de una futura solicitud de reserva. Si usas las propiedades de una VM, puedes consumir las reservas creadas automáticamente que se hayan aprovisionado para la reserva futura creando VMs con propiedades que coincidan con la VM de referencia.

  • Especificar propiedades directamente

    Puedes definir directamente las propiedades de una solicitud de reserva futura en borrador. Con este método, debe asegurarse manualmente de que las propiedades de sus máquinas virtuales y las reservas creadas automáticamente coincidan exactamente. Si no coinciden, no se podrán consumir.

Cualquier máquina virtual con propiedades coincidentes puede consumir automáticamente una reserva creada automáticamente para una reserva futura. Si quieres evitar que una VM consuma alguna de estas reservas creadas automáticamente, consulta cómo crear VMs sin consumir reservas.

Especificar una plantilla de instancia

Cuando crees una solicitud de reserva futura compartida especificando una plantilla de instancia, ten en cuenta lo siguiente:

  • Una plantilla de instancia contiene ajustes específicos del proyecto, por lo que solo puedes acceder a ella y usarla en el mismo proyecto. Si creas una solicitud de reserva futura compartida especificando una plantilla de instancia, debes crear plantillas similares para crear VMs o crear VMs especificando propiedades coincidentes directamente para consumir las reservas creadas automáticamente en cada proyecto consumidor.

  • Debes crear tu futura solicitud de reserva en la misma región y zona que los recursos de la plantilla de instancia. Los recursos regionales o de zona que se especifican en una plantilla de instancia (como un tipo de máquina o un disco persistente) restringen el uso de la plantilla a las ubicaciones en las que se encuentran esos recursos. Por ejemplo, si tu plantilla de instancia especifica un disco persistente en la zona us-central1-a, debes crear tu futura solicitud de reserva en la misma zona. De lo contrario, no se podrá crear la solicitud de reserva futura.

    Para comprobar si una plantilla especifica algún recurso que la vincule a una región o zona concretas, consulta los detalles de la plantilla y busca referencias a recursos regionales o zonales en ella.

  • Si quieres adjuntar las reservas creadas automáticamente que se hayan aprovisionado para una reserva futura a un compromiso, debes inhabilitar la opción de eliminación automática. Para obtener más información, consulta Restricciones después de la creación.

Después de crear una solicitud de reserva futura, no puedes modificarla para anular las propiedades de la VM de la plantilla ni especificar otra plantilla. En su lugar, si necesitas cambiar las propiedades de la VM especificadas en la solicitud, debes crear una nueva solicitud de reserva futura.

Para crear una reserva futura compartida especificando una plantilla de instancia, selecciona una de las siguientes opciones:

Consola

  1. En la Google Cloud consola, ve a la página Reservas.

    Ir a Reservas

  2. Haz clic en la pestaña Reservas futuras.

  3. Haz clic en Crear reserva futura.

    Se abrirá la página Crear una reserva futura.

  4. En Name (Nombre), escribe el nombre de tu futura solicitud de reserva.

  5. En Prefix (Prefijo), introduce un prefijo de nombre. El nombre de cada reserva creada automáticamente a partir de esta solicitud de reserva futura empieza por este prefijo.

  6. En Región y Zona, selecciona la región y la zona en las que quieras reservar recursos.

  7. En Hora de inicio, introduce la hora de inicio del periodo de reserva. La hora de inicio no puede ser posterior a un año a partir de la fecha y la hora en las que envíes una solicitud de revisión de una reserva futura. Para tener tiempo suficiente para modificar, cancelar o eliminar la reserva futura antes de que llegue el momento en que no se pueda cambiar, especifica un valor recomendado para la hora de inicio.

  8. En Hora de finalización, introduce la hora de finalización del periodo de reserva. En la sección Resumen de la duración, puedes ver la duración del periodo de reserva. Para aumentar las probabilidades de que Google Cloud apruebe tu solicitud de reserva en el futuro, especifica un valor recomendado para el periodo de reserva.

  9. En la sección Tipo de uso compartido, haz lo siguiente:

    1. Para especificar una solicitud de reserva futura compartida, selecciona Compartida.

    2. Haz clic en Añadir proyectos y, a continuación, selecciona los proyectos de la organización del proyecto actual con los que quieras compartir la solicitud de reserva futura. Puedes seleccionar hasta 100 proyectos.

  10. En Capacidad total necesaria, introduce el recuento total de las máquinas virtuales que quieras reservar durante el periodo, la configuración de las máquinas virtuales y los proyectos especificados en esta solicitud de reserva futura.

  11. En la sección Configuración de la máquina, haga lo siguiente:

    1. Selecciona Usar plantilla de instancia.

    2. En Plantilla de instancia, selecciona la que quieras. Si seleccionas una plantilla de instancia regional, solo podrás reservar recursos en la misma región que la plantilla.

  12. En la sección Eliminación automática de reservas generadas automáticamente, haga una de las siguientes acciones:

    • Para que Compute Engine elimine automáticamente las reservas creadas automáticamente para tu futura solicitud de reserva, haz lo siguiente:

      1. Haz clic en el interruptor Habilitar eliminación automática para activarlo si aún no lo está.

      2. Opcional: En Tiempo de eliminación automática, introduce la fecha y la hora en las que quieres eliminar las reservas creadas automáticamente. La fecha y la hora deben ser posteriores a la hora de finalización del periodo de reserva. Si dejas este campo en blanco, las reservas creadas automáticamente se eliminarán en un plazo de dos horas después de la hora de finalización del periodo de reserva.

    • De lo contrario, haz clic en el interruptor Habilitar eliminación automática para desactivarlo.

  13. Para terminar de crear el borrador de la solicitud de reserva futura, haz clic en Guardar borrador.

Se abrirá la página Reservas. La creación de la solicitud de reserva futura puede tardar hasta un minuto en completarse.

gcloud

Para crear una solicitud de reserva futura compartida especificando una plantilla de instancia, usa el comando gcloud beta compute future-reservations create con las marcas --share-setting=projects y --share-with.

Para crear una solicitud de reserva futura en borrador especificando una plantilla de instancia sin incluir ninguna marca opcional y eliminar automáticamente la reserva creada automáticamente al final del periodo de reserva, ejecuta el siguiente comando:

gcloud beta compute future-reservations create FUTURE_RESERVATION_NAME \
    --auto-delete-auto-created-reservations \
    --share-setting=projects \
    --share-with=CONSUMER_PROJECT_IDS \
    --source-instance-template=projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME \
    --start-time=START_TIME \
    --end-time=END_TIME \
    --total-count=TOTAL_COUNT \
    --zone=ZONE

Haz los cambios siguientes:

  • FUTURE_RESERVATION_NAME: el nombre de la solicitud de reserva futura.

  • MACHINE_TYPE: el tipo de máquina que se va a usar en cada VM reservada.

  • CONSUMER_PROJECT_IDS: una lista separada por comas de los IDs de los proyectos a los que quieres permitir que usen las reservas creadas automáticamente para esta futura solicitud de reserva. Por ejemplo, project-1,project-2. Puede especificar hasta 100 proyectos. Estos proyectos deben pertenecer a la misma organización que el proyecto en el que se cree la futura solicitud de reserva (el proyecto propietario). No especifiques el proyecto propietario. De forma predeterminada, ya se permite consumir las reservas creadas automáticamente para esta solicitud de reserva futura.
  • PROJECT_ID: el ID del proyecto en el que quieres reservar recursos y en el que se encuentra la plantilla de instancia.

  • LOCATION: la ubicación de la plantilla de instancia. Especifica uno de los siguientes valores:

    • En el caso de una plantilla de instancia regional, regions/REGION. Sustituye REGION por la región en la que se encuentra la plantilla de instancia. Si especificas una plantilla de instancia regional, solo podrás crear la solicitud de reserva futura en la misma región que la plantilla.

    • En el caso de una plantilla de instancia global, global.

  • INSTANCE_TEMPLATE_NAME: el nombre de una plantilla de instancia.

  • START_TIME: hora de inicio del periodo de reserva en formato de marca de tiempo RFC 3339, que debe tener el siguiente formato:

    YYYY-MM-DDTHH:MM:SSOFFSET
    

    Haz los cambios siguientes:

    • YYYY-MM-DD: datos con el formato de año de 4 dígitos, mes de 2 dígitos y día del mes de 2 dígitos, separados por guiones (-).

    • HH:MM:SS: hora con formato de hora de 24 horas de dos dígitos, minutos de dos dígitos y segundos de dos dígitos, separados por dos puntos (:).

    • OFFSET: la zona horaria con el formato de una diferencia con respecto al tiempo universal coordinado (UTC). Por ejemplo, para usar la hora estándar del Pacífico (PST), especifica -08:00. También puede especificar Z para no usar ningún desplazamiento.

    La hora de inicio no puede ser posterior a un año a partir de la fecha y la hora en las que envíes una solicitud de revisión de una reserva futura. Para tener tiempo suficiente para cancelar, eliminar o modificar una solicitud de reserva futura después de que se apruebe y antes de que llegue el momento de bloqueo, especifica un valor recomendado para la hora de inicio.

  • END_TIME: hora de finalización del periodo de reserva, con formato de marca de tiempo RFC 3339. Para aumentar las probabilidades de queGoogle Cloud apruebe tu solicitud después de enviarla, especifica un periodo de reserva mínimo. Para especificar una duración en lugar de una hora de finalización, sustituye la marca --end-time por la marca --duration=END_DURATION. Sustituye END_DURATION por una duración en segundos. Por ejemplo, especifica 1209600 para 1.209.600 segundos (14 días).

    Para aumentar las probabilidades de que Google Cloud apruebe una futura solicitud de reserva después de enviarla a revisión, especifica una duración mínima recomendada.

  • TOTAL_COUNT: el recuento total de las VMs que quieres reservar.

  • ZONE: la zona en la que se reservarán los recursos.

Por ejemplo, supongamos que quieres crear una solicitud de reserva futura en borrador llamada fr-02 en la zona us-central1-a con las siguientes propiedades:

  • Un periodo de reserva que empieza a medianoche del 10 de noviembre del 2024 (UTC) y termina a medianoche del 10 de diciembre del 2024 (UTC).

  • Un recuento total de 80 VMs.

  • Una plantilla de instancia regional de la región us-central1.
  • La opción de eliminación automática está habilitada. Las reservas creadas automáticamente se eliminan al final del periodo de reserva.
  • La solicitud de reserva futura se comparte con project-1 y project-2.

Para crear fr-02, ejecuta el siguiente comando:

gcloud beta compute future-reservations create fr-02 \
    --auto-delete-auto-created-reservations \
    --share-setting=projects \
    --share-with=project-1,project-2 \
    --source-instance-template=projects/example-project/regions/us-central1/instanceTemplates/example-template \
    --start-time=2024-11-10T00:00:00Z \
    --end-time=2024-12-10T00:00:00Z \
    --total-count=80 \
    --zone=us-central1-a

También puede hacer lo siguiente:

  • Para eliminar las reservas creadas automáticamente después de la hora de finalización del periodo de reserva, selecciona uno de los siguientes métodos:

    • Para eliminar las reservas creadas automáticamente en una fecha y hora concretas después de la hora de finalización del periodo de reserva, incluye la marca --auto-created-reservations-delete-time.

      gcloud beta compute future-reservations create FUTURE_RESERVATION_NAME \
          --auto-created-reservations-delete-time=AUTO_CREATED_RESERVATIONS_DELETE_TIME \
          --auto-delete-auto-created-reservations \
          --share-setting=projects \
          --share-with=CONSUMER_PROJECT_IDS \
          --source-instance-template=projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME \
          --start-time=START_TIME \
          --end-time=END_TIME \
          --total-count=TOTAL_COUNT \
          --zone=ZONE
      

      Sustituye AUTO_CREATED_RESERVATIONS_DELETE_TIME por una fecha y una hora con el formato de marca de tiempo RFC 3339.

    • Para eliminar las reservas creadas automáticamente después de un periodo específico tras la hora de finalización del periodo de reserva, incluye la marca --auto-created-reservations-duration.

      gcloud beta compute future-reservations create FUTURE_RESERVATION_NAME \
          --auto-created-reservations-duration=DURATION_BEFORE_DELETE \
          --auto-delete-auto-created-reservations \
          --share-setting=projects \
          --share-with=CONSUMER_PROJECT_IDS \
          --source-instance-template=projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME \
          --start-time=START_TIME \
          --end-time=END_TIME \
          --total-count=TOTAL_COUNT \
          --zone=ZONE
      

      Sustituye DURATION_BEFORE_DELETE por una duración en días, horas, minutos o segundos. Por ejemplo, especifica 30m para 30 minutos o 1d2h3m4s para un día, dos horas, tres minutos y cuatro segundos.

  • Para inhabilitar la opción de eliminación automática de las reservas creadas automáticamente, sustituya la marca --auto-delete-auto-created-reservations por la marca --no-auto-delete-auto-created-reservations.

    gcloud beta compute future-reservations create FUTURE_RESERVATION_NAME \
        --no-auto-delete-auto-created-reservations \
        --share-setting=projects \
        --share-with=CONSUMER_PROJECT_IDS \
        --source-instance-template=projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME \
        --start-time=START_TIME \
        --end-time=END_TIME \
        --total-count=TOTAL_COUNT \
        --zone=ZONE
    
  • Para especificar un prefijo de nombre para las reservas creadas automáticamente, incluya la marca --name-prefix.

    gcloud beta compute future-reservations create FUTURE_RESERVATION_NAME \
        --auto-delete-auto-created-reservations \
        --name-prefix=NAME_PREFIX \
        --share-setting=projects \
        --share-with=CONSUMER_PROJECT_IDS \
        --source-instance-template=projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME \
        --start-time=START_TIME \
        --end-time=END_TIME \
        --total-count=TOTAL_COUNT \
        --zone=ZONE
    

    Sustituye NAME_PREFIX por el prefijo de nombre de cada reserva creada automáticamente. Para ayudarte a identificar las reservas creadas automáticamente para esta solicitud de reserva futura, Google Cloud recomienda especificar un prefijo de nombre único.

REST

Para crear una solicitud de reserva futura compartida especificando una plantilla de instancia, haz una solicitud POST al método beta.futureReservations.insert.

Para crear una solicitud de reserva futura en borrador especificando una plantilla de instancia sin incluir ningún campo opcional, haz una solicitud POST de la siguiente manera:

POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations

{
  "autoDeleteAutoCreatedReservations": AUTO_DELETE_AUTO_CREATED_RESERVATIONS,
  "name": "FUTURE_RESERVATION_NAME",
  "shareSettings": {
    "projects": [
      "CONSUMER_PROJECT_ID_1",
      "CONSUMER_PROJECT_ID_2"
    ],
    "shareType": "SPECIFIC_PROJECTS"
  },
  "specificSkuProperties": { 
    "sourceInstanceTemplate": "projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME",
    "totalCount": TOTAL_COUNT
  },
  "timeWindow": {
    "startTime": "START_TIME",
    "endTime": "END_TIME"
  }
}

Haz los cambios siguientes:

  • PROJECT_ID: el ID del proyecto en el que quieres reservar recursos y donde se encuentra la plantilla de instancia.

  • ZONE: la zona en la que se reservarán los recursos.

  • AUTO_DELETE_AUTO_CREATED_RESERVATIONS: si asignas el valor true a este campo, Compute Engine eliminará automáticamente las reservas creadas automáticamente para esta reserva futura en un plazo de dos horas a partir de la hora de finalización del periodo de reserva. Si quieres adjuntar las reservas creadas automáticamente a un compromiso, asigna el valor false a este campo.

  • CONSUMER_PROJECT_ID_1 y CONSUMER_PROJECT_ID_2: los IDs de los proyectos con los que se puede compartir esta futura solicitud de reserva. Puede especificar hasta 100 proyectos. Estos proyectos deben pertenecer a la misma organización que el proyecto en el que se cree la futura solicitud de reserva (el proyecto propietario). No especifiques el proyecto propietario. De forma predeterminada, ya se permite consumir las reservas creadas automáticamente para esta futura solicitud de reserva.
  • LOCATION: la ubicación de la plantilla de instancia. Especifica uno de los siguientes valores:

    • En el caso de una plantilla de instancia regional, regions/REGION. Sustituye REGION por la región en la que se encuentra la plantilla de instancia. Si especificas una plantilla de instancia regional, solo podrás crear la solicitud de reserva futura en la misma región que la plantilla.

    • En el caso de una plantilla de instancia global, global.

  • INSTANCE_TEMPLATE_NAME: el nombre de una plantilla de instancia.

  • TOTAL_COUNT: el recuento total de las VMs que quieres reservar.

  • START_TIME: hora de inicio del periodo de reserva en formato de marca de tiempo RFC 3339, que debe tener el siguiente formato:

    YYYY-MM-DDTHH:MM:SSOFFSET
    

    Haz los cambios siguientes:

    • YYYY-MM-DD: datos con el formato de año de 4 dígitos, mes de 2 dígitos y día del mes de 2 dígitos, separados por guiones (-).

    • HH:MM:SS: hora con formato de hora de 24 horas de dos dígitos, minutos de dos dígitos y segundos de dos dígitos, separados por dos puntos (:).

    • OFFSET: la zona horaria con el formato de una diferencia con respecto al tiempo universal coordinado (UTC). Por ejemplo, para usar la hora estándar del Pacífico (PST), especifica -08:00. También puede especificar Z para no usar ningún desplazamiento.

    La hora de inicio no puede ser posterior a un año a partir de la fecha y la hora en las que envíes una solicitud de revisión de una reserva futura. Para tener tiempo suficiente para cancelar, eliminar o modificar una solicitud de reserva futura después de que se apruebe y antes de que llegue el momento de bloqueo, especifica un valor recomendado para la hora de inicio.

  • END_TIME: hora de finalización del periodo de reserva, con formato de marca de tiempo RFC 3339. Para aumentar las probabilidades de queGoogle Cloud apruebe tu solicitud después de enviarla, especifica un periodo de reserva mínimo. Para especificar una duración en lugar de una hora de finalización, puedes sustituir el campo endTime por el campo duration:

    "duration": {
      "seconds": END_DURATION
    }
    

    Sustituye END_DURATION por una duración en segundos. Por ejemplo, especifica 1209600 para 1.209.600 segundos (14 días).

Por ejemplo, supongamos que quieres crear una solicitud de reserva futura en borrador llamada fr-02 en la zona us-central1-a con las siguientes propiedades:

  • Un periodo de reserva que empieza a medianoche del 10 de noviembre del 2024 (UTC) y termina a medianoche del 10 de diciembre del 2024 (UTC).

  • Un recuento total de 80 VMs.

  • Una plantilla de instancia regional de la región us-central1.
  • La opción de eliminación automática está habilitada. Las reservas creadas automáticamente se eliminan al final del periodo de reserva.
  • La solicitud de reserva futura se comparte con project-1 y project-2.

Para crear un fr-02, POST, haz una solicitud POST de la siguiente manera:

POST https://compute.googleapis.com/compute/beta/projects/example-project/zones/us-central1-a/futureReservations

{
  "autoDeleteAutoCreatedReservations": true,
  "name": "fr-02",
  "specificSkuProperties": { 
    "sourceInstanceTemplate": "projects/example-project/regions/us-central1/instanceTemplates/example-template",
    "totalCount": 80
  },
  "shareSettings": {
    "projects": [
      "project-1",
      "project-2"
    ],
    "shareType": "SPECIFIC_PROJECTS"
  },
  "timeWindow": {
    "startTime": "2024-11-10T00:00:00Z",
    "endTime": "2024-12-10T00:00:00Z"
  }
}

También puede hacer lo siguiente:

  • Para especificar un prefijo de nombre para las reservas creadas automáticamente, incluye el campo namePrefix.

    POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations
    
    {
      "autoDeleteAutoCreatedReservations": AUTO_DELETE_AUTO_CREATED_RESERVATIONS,
      "name": "FUTURE_RESERVATION_NAME",
      "namePrefix": "NAME_PREFIX",
      "shareSettings": {
        "projects": [
          "CONSUMER_PROJECT_ID_1",
          "CONSUMER_PROJECT_ID_2"
        ],
        "shareType": "SPECIFIC_PROJECTS"
      },
      "specificSkuProperties": { 
        "sourceInstanceTemplate": "projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME",
        "totalCount": TOTAL_COUNT
      },
      "timeWindow": {
        "startTime": "START_TIME",
        "endTime": "END_TIME"
      }
    }
    

    Sustituye NAME_PREFIX por el prefijo de nombre de cada reserva creada automáticamente. Para ayudarte a identificar las reservas creadas automáticamente para esta solicitud de reserva futura, Google Cloud recomienda especificar un prefijo de nombre único.

  • Para eliminar las reservas creadas automáticamente después de la hora de finalización del periodo de reserva, selecciona uno de los siguientes métodos:

    • Para eliminar las reservas creadas automáticamente después de un tiempo específico tras el final del periodo de reserva, asigna el valor true al campo autoDeleteAutoCreatedReservations e incluye el campo autoCreatedReservationsDeleteTime.

      POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations
      
      {
        "autoCreatedReservationsDeleteTime": "DELETE_TIME",
        "autoDeleteAutoCreatedReservations": true,
        "name": "FUTURE_RESERVATION_NAME",
        "shareSettings": {
          "projects": [
            "CONSUMER_PROJECT_ID_1",
            "CONSUMER_PROJECT_ID_2"
          ],
          "shareType": "SPECIFIC_PROJECTS"
        },
        "specificSkuProperties": { 
          "sourceInstanceTemplate": "projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME",
          "totalCount": TOTAL_COUNT
        },
        "timeWindow": {
          "startTime": "START_TIME",
          "endTime": "END_TIME"
        }
      }
      

      Sustituye DELETE_TIME por la fecha y la hora en las que Compute Engine eliminará las reservas creadas automáticamente. La fecha y la hora deben tener el formato de marca de tiempo RFC 3339.

    • Para eliminar las reservas creadas automáticamente después de un periodo específico a partir de la hora de inicio del periodo de reserva, asigna el valor true al campo autoDeleteAutoCreatedReservations e incluye el campo autoCreatedReservationsDuration.

      POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations
      
      {
        "autoCreatedReservationsDuration": {
          "seconds": "DURATION_BEFORE_DELETE"
        },
        "autoDeleteAutoCreatedReservations": true,
        "name": "FUTURE_RESERVATION_NAME",
        "shareSettings": {
          "projects": [
            "CONSUMER_PROJECT_ID_1",
            "CONSUMER_PROJECT_ID_2"
          ],
          "shareType": "SPECIFIC_PROJECTS"
        },
        "specificSkuProperties": { 
          "sourceInstanceTemplate": "projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME",
          "totalCount": TOTAL_COUNT
        },
        "timeWindow": {
          "startTime": "START_TIME",
          "endTime": "END_TIME"
        }
      }
      

      Sustituye DURATION_BEFORE_DELETE por una duración en segundos. Por ejemplo, especifica 604800 para 604.800 segundos (7 días).

Después de crear una solicitud de reserva futura en borrador, puedes determinar el número de VMs que Compute Engine aprovisionará para la solicitud.

Especificar una VM

Solo puedes crear una solicitud de reserva futura en borrador basada en una VM que ya tengas en el mismo proyecto y zona que la VM.

Una vez que Google Cloud apruebe la solicitud de reserva futura y esta entre en su periodo de reserva, podrás usar las reservas creadas automáticamente creando VMs con propiedades que coincidan con la VM de referencia. Para ello, tiene las siguientes opciones:

  • Crea y usa una plantilla de instancia de la siguiente manera:

    1. Crea una plantilla de instancia basada en la VM de referencia sin anular las propiedades de la VM de referencia.

    2. Crea VMs con la plantilla que acabas de crear de una de las siguientes formas:

  • Crea una VM con propiedades que coincidan exactamente con la VM de referencia de la siguiente manera:

    • En el proyecto propietario, crea una VM basada en la VM de referencia sin cambiar las propiedades de la VM que estás creando.

    • En los proyectos de consumidor, crea una VM y asegúrate manualmente de que sus propiedades coincidan con las de la VM de referencia.

Para crear una solicitud de reserva futura compartida que use las propiedades de una VM, haz lo siguiente:

  1. En la Google Cloud consola, ve a la página Reservas.

    Ir a Reservas

  2. Haz clic en la pestaña Reservas futuras.

  3. Haz clic en Crear reserva futura.

    Se abrirá la página Crear una reserva futura.

  4. En Name (Nombre), escribe el nombre de tu futura solicitud de reserva.

  5. En Prefix (Prefijo), introduce un prefijo de nombre. El nombre de cada reserva creada automáticamente a partir de esta solicitud de reserva futura empieza por este prefijo.

  6. En Región y Zona, selecciona la región y la zona en las que quieras reservar recursos.

  7. En Hora de inicio, introduce la hora de inicio del periodo de reserva. La hora de inicio no puede ser posterior a un año a partir de la fecha y la hora en las que envíes una solicitud de revisión de una reserva futura. Para tener tiempo suficiente para modificar, cancelar o eliminar la reserva futura antes de que llegue el momento en que no se pueda cambiar, especifica un valor recomendado para la hora de inicio.

  8. En Hora de finalización, introduce la hora de finalización del periodo de reserva. En la sección Resumen de la duración, puedes ver la duración del periodo de reserva. Para aumentar las probabilidades de que Google Cloud apruebe tu solicitud de reserva en el futuro, especifica un valor recomendado para el periodo de reserva.

  9. En la sección Tipo de uso compartido, haz lo siguiente:

    1. Para especificar una solicitud de reserva futura compartida, selecciona Compartida.

    2. Haz clic en Añadir proyectos y, a continuación, selecciona los proyectos de la organización del proyecto actual con los que quieras compartir la solicitud de reserva futura. Puedes seleccionar hasta 100 proyectos.

  10. En Capacidad total necesaria, introduce el recuento total de las máquinas virtuales que quieras reservar durante el periodo, la configuración de las máquinas virtuales y los proyectos especificados en esta solicitud de reserva futura.

  11. En la sección Configuración de la máquina, haga lo siguiente:

    1. Selecciona Usar una máquina virtual disponible.

    2. En VM existente, seleccione la VM cuyas propiedades quiera usar para crear la reserva.

  12. En la sección Eliminación automática de reservas generadas automáticamente, haga una de las siguientes acciones:

    • Para que Compute Engine elimine automáticamente las reservas creadas automáticamente para tu futura solicitud de reserva, haz lo siguiente:

      1. Haz clic en el interruptor Habilitar eliminación automática para activarlo si aún no lo está.

      2. Opcional: En Tiempo de eliminación automática, introduce la fecha y la hora en las que quieres eliminar las reservas creadas automáticamente. La fecha y la hora deben ser posteriores a la hora de finalización del periodo de reserva. Si dejas este campo en blanco, las reservas creadas automáticamente se eliminarán en un plazo de dos horas después de la hora de finalización del periodo de reserva.

    • De lo contrario, haz clic en el interruptor Habilitar eliminación automática para desactivarlo.

  13. Para terminar de crear el borrador de la solicitud de reserva futura, haz clic en Guardar borrador.

Se abrirá la página Reservas. La creación de la solicitud de reserva futura puede tardar hasta un minuto en completarse.

Después de crear una solicitud de reserva futura en borrador, puedes determinar el número de VMs que Compute Engine aprovisionará para la solicitud.

Especificar propiedades directamente

Si quieres adjuntar las reservas creadas automáticamente que se hayan aprovisionado para una reserva futura a un compromiso, debes inhabilitar la opción de eliminación automática. Para obtener más información, consulta Restricciones después de la creación.

Para crear una solicitud de reserva futura compartida especificando las propiedades directamente, selecciona una de las siguientes opciones:

Consola

  1. En la Google Cloud consola, ve a la página Reservas.

    Ir a Reservas

  2. Haz clic en la pestaña Reservas futuras.

  3. Haz clic en Crear reserva futura.

    Se abrirá la página Crear una reserva futura.

  4. En Name (Nombre), escribe el nombre de tu futura solicitud de reserva.

  5. En Prefix (Prefijo), introduce un prefijo de nombre. El nombre de cada reserva creada automáticamente a partir de esta solicitud de reserva futura empieza por este prefijo.

  6. En Región y Zona, selecciona la región y la zona en las que quieras reservar recursos.

  7. En Hora de inicio, introduce la hora de inicio del periodo de reserva. La hora de inicio no puede ser posterior a un año a partir de la fecha y la hora en las que envíes una solicitud de revisión de una reserva futura. Para tener tiempo suficiente para modificar, cancelar o eliminar la reserva futura antes de que llegue el momento en que no se pueda cambiar, especifica un valor recomendado para la hora de inicio.

  8. En Hora de finalización, introduce la hora de finalización del periodo de reserva. En la sección Resumen de la duración, puedes ver la duración del periodo de reserva. Para aumentar las probabilidades de que Google Cloud apruebe tu solicitud de reserva en el futuro, especifica un valor recomendado para el periodo de reserva.

  9. En la sección Tipo de uso compartido, haz lo siguiente:

    1. Para especificar una solicitud de reserva futura compartida, selecciona Compartida.

    2. Haz clic en Añadir proyectos y, a continuación, selecciona los proyectos de la organización del proyecto actual con los que quieras compartir la solicitud de reserva futura. Puedes seleccionar hasta 100 proyectos.

  10. En Capacidad total necesaria, introduce el recuento total de las máquinas virtuales que quieras reservar durante el periodo, la configuración de las máquinas virtuales y los proyectos especificados en esta solicitud de reserva futura.

  11. En la sección Configuración de la máquina, haga lo siguiente:

    1. Seleccione Especificar tipo de máquina si aún no lo ha hecho.

    2. Especifica el tipo de máquina que se va a usar en las VMs reservadas.

  12. En la sección Eliminación automática de reservas generadas automáticamente, haga una de las siguientes acciones:

    • Para que Compute Engine elimine automáticamente las reservas creadas automáticamente para tu futura solicitud de reserva, haz lo siguiente:

      1. Haz clic en el interruptor Habilitar eliminación automática para activarlo si aún no lo está.

      2. Opcional: En Tiempo de eliminación automática, introduce la fecha y la hora en las que quieres eliminar las reservas creadas automáticamente. La fecha y la hora deben ser posteriores a la hora de finalización del periodo de reserva. Si dejas este campo en blanco, las reservas creadas automáticamente se eliminarán en un plazo de dos horas después de la hora de finalización del periodo de reserva.

    • De lo contrario, haz clic en el interruptor Habilitar eliminación automática para desactivarlo.

  13. Para terminar de crear el borrador de la solicitud de reserva futura, haz clic en Guardar borrador.

Se abrirá la página Reservas. La creación de la solicitud de reserva futura puede tardar hasta un minuto en completarse.

gcloud

Para crear una solicitud de reserva futura compartida especificando propiedades directamente, usa el comando gcloud beta compute future-reservations create con las marcas --share-setting=projects y --share-with.

Para crear una solicitud de reserva futura en borrador especificando las propiedades directamente sin incluir ninguna marca opcional y eliminar automáticamente la reserva creada automáticamente al final del periodo de reserva, ejecuta el siguiente comando:

gcloud beta compute future-reservations create FUTURE_RESERVATION_NAME \
    --auto-delete-auto-created-reservations \
    --machine-type=MACHINE_TYPE \
    --share-setting=projects \
    --share-with=CONSUMER_PROJECT_IDS \
    --start-time=START_TIME \
    --end-time=END_TIME \
    --total-count=TOTAL_COUNT \
    --zone=ZONE

Haz los cambios siguientes:

  • FUTURE_RESERVATION_NAME: el nombre de la solicitud de reserva futura.

  • MACHINE_TYPE: el tipo de máquina que se va a usar en cada VM reservada.

  • CONSUMER_PROJECT_IDS: una lista separada por comas de los IDs de los proyectos a los que quieres permitir que usen las reservas creadas automáticamente para esta futura solicitud de reserva. Por ejemplo, project-1,project-2. Puede especificar hasta 100 proyectos. Estos proyectos deben pertenecer a la misma organización que el proyecto en el que se cree la futura solicitud de reserva (el proyecto propietario). No especifiques el proyecto propietario. De forma predeterminada, ya se permite consumir las reservas creadas automáticamente para esta solicitud de reserva futura.
  • START_TIME: hora de inicio del periodo de reserva en formato de marca de tiempo RFC 3339, que debe tener el siguiente formato:

    YYYY-MM-DDTHH:MM:SSOFFSET
    

    Haz los cambios siguientes:

    • YYYY-MM-DD: datos con el formato de año de 4 dígitos, mes de 2 dígitos y día del mes de 2 dígitos, separados por guiones (-).

    • HH:MM:SS: hora con formato de hora de 24 horas de dos dígitos, minutos de dos dígitos y segundos de dos dígitos, separados por dos puntos (:).

    • OFFSET: la zona horaria con el formato de una diferencia con respecto al tiempo universal coordinado (UTC). Por ejemplo, para usar la hora estándar del Pacífico (PST), especifica -08:00. También puede especificar Z para no usar ningún desplazamiento.

    La hora de inicio no puede ser posterior a un año a partir de la fecha y la hora en las que envíes una solicitud de revisión de una reserva futura. Para tener tiempo suficiente para cancelar, eliminar o modificar una solicitud de reserva futura después de que se apruebe y antes de que llegue el momento de bloqueo, especifica un valor recomendado para la hora de inicio.

  • END_TIME: hora de finalización del periodo de reserva, con formato de marca de tiempo RFC 3339. Para aumentar las probabilidades de queGoogle Cloud apruebe tu solicitud después de enviarla, especifica un periodo de reserva mínimo. Para especificar una duración en lugar de una hora de finalización, sustituye la marca --end-time por la marca --duration=END_DURATION. Sustituye END_DURATION por una duración en segundos. Por ejemplo, especifica 1209600 para 1.209.600 segundos (14 días).

    Para aumentar las probabilidades de que Google Cloud apruebe una futura solicitud de reserva después de enviarla a revisión, especifica una duración mínima recomendada.

  • TOTAL_COUNT: el recuento total de las VMs que quieres reservar.

  • ZONE: la zona en la que se reservarán los recursos.

Por ejemplo, supongamos que quieres crear una solicitud de reserva futura en borrador llamada fr-02 en la zona us-central1-a con las siguientes propiedades:

  • Un periodo de reserva que empieza a medianoche del 10 de noviembre del 2024 (UTC) y termina a medianoche del 10 de diciembre del 2024 (UTC).

  • Un recuento total de 80 VMs.

  • Un tipo de máquina predefinido N2 con 4 vCPUs.
  • La opción de eliminación automática está habilitada. Las reservas creadas automáticamente se eliminan al final del periodo de reserva.
  • La solicitud de reserva futura se comparte con project-1 y project-2.

Para crear fr-02, ejecuta el siguiente comando:

gcloud beta compute future-reservations create fr-02 \
    --auto-delete-auto-created-reservations \
    --machine-type=n2-standard-4 \
    --share-setting=projects \
    --share-with=project-1,project-2 \
    --start-time=2024-11-10T00:00:00Z \
    --end-time=2024-12-10T00:00:00Z \
    --total-count=80 \
    --zone=us-central1-a

También puede hacer lo siguiente:

  • Para asociar GPUs a tus VMs N1 reservadas, incluye la marca --accelerator.

    gcloud beta compute future-reservations create FUTURE_RESERVATION_NAME \
        --accelerator=NUMBER_OF_ACCELERATORS,type=ACCELERATOR_TYPE \
        --auto-delete-auto-created-reservations \
        --machine-type=MACHINE_TYPE \
        --share-setting=projects \
        --share-with=CONSUMER_PROJECT_IDS \
        --start-time=START_TIME \
        --end-time=END_TIME \
        --total-count=TOTAL_COUNT \
        --zone=ZONE
    

    Haz los cambios siguientes:

    • NUMBER_OF_ACCELERATORS: número de GPUs que se van a añadir por cada VM reservada.

    • ACCELERATOR_TYPE: un modelo de GPU compatible con máquinas virtuales N1. Para evitar errores, comprueba que el modelo de GPU que has elegido esté disponible en la zona en la que vas a crear la solicitud de reserva.

  • Para eliminar las reservas creadas automáticamente después de la hora de finalización del periodo de reserva, selecciona uno de los siguientes métodos:

    • Para eliminar las reservas creadas automáticamente en una fecha y hora concretas después de la hora de finalización del periodo de reserva, incluye la marca --auto-created-reservations-delete-time.

      gcloud beta compute future-reservations create FUTURE_RESERVATION_NAME \
          --auto-created-reservations-delete-time=AUTO_CREATED_RESERVATIONS_DELETE_TIME \
          --auto-delete-auto-created-reservations \
          --machine-type=MACHINE_TYPE \
          --share-setting=projects \
          --share-with=CONSUMER_PROJECT_IDS \
          --start-time=START_TIME \
          --end-time=END_TIME \
          --total-count=TOTAL_COUNT \
          --zone=ZONE
      

      Sustituye AUTO_CREATED_RESERVATIONS_DELETE_TIME por una fecha y una hora con el formato de marca de tiempo RFC 3339.

    • Para eliminar las reservas creadas automáticamente después de un periodo específico tras la hora de finalización del periodo de reserva, incluye la marca --auto-created-reservations-duration.

      gcloud beta compute future-reservations create FUTURE_RESERVATION_NAME \
          --auto-created-reservations-duration=DURATION_BEFORE_DELETE \
          --auto-delete-auto-created-reservations \
          --machine-type=MACHINE_TYPE \
          --share-setting=projects \
          --share-with=CONSUMER_PROJECT_IDS \
          --start-time=START_TIME \
          --end-time=END_TIME \
          --total-count=TOTAL_COUNT \
          --zone=ZONE
      

      Sustituye DURATION_BEFORE_DELETE por una duración en días, horas, minutos o segundos. Por ejemplo, especifica 30m para 30 minutos o 1d2h3m4s para un día, dos horas, tres minutos y cuatro segundos.

  • Para inhabilitar la opción de eliminación automática de las reservas creadas automáticamente, sustituya la marca --auto-delete-auto-created-reservations por la marca --no-auto-delete-auto-created-reservations.

    gcloud beta compute future-reservations create FUTURE_RESERVATION_NAME \
        --no-auto-delete-auto-created-reservations \
        --machine-type=MACHINE_TYPE \
        --share-setting=projects \
        --share-with=CONSUMER_PROJECT_IDS \
        --start-time=START_TIME \
        --end-time=END_TIME \
        --total-count=TOTAL_COUNT \
        --zone=ZONE
    
  • Para conectar discos SSD locales a un tipo de máquina que no incluya discos SSD locales de forma predeterminada, incluye la marca --local-ssd. Solo puedes conectar discos SSD locales de 375 GB.

    gcloud beta compute future-reservations create FUTURE_RESERVATION_NAME \
        --auto-delete-auto-created-reservations \
        --local-ssd=count=NUMBER_OF_LOCAL_SSD_DISKS,size=375,interface=INTERFACE_TYPE \
        --machine-type=MACHINE_TYPE \
        --share-setting=projects \
        --share-with=CONSUMER_PROJECT_IDS \
        --start-time=START_TIME \
        --end-time=END_TIME \
        --total-count=TOTAL_COUNT \
        --zone=ZONE
    

    Haz los cambios siguientes:

    • NUMBER_OF_LOCAL_SSD_DISKS: número de discos SSD locales que se van a adjuntar.

    • INTERFACE_TYPE: el tipo de interfaz de disco que quieres que usen los discos SSD locales y que admita el tipo de máquina que has especificado. Se debe utilizar uno de los valores indicados a continuación.

      • Para la interfaz de disco NVMe: nvme

      • Para la interfaz de disco SCSI: scsi

  • Para que las VMs reservadas usen una plataforma de CPU mínima específica en lugar de la plataforma de CPU predeterminada de la zona, incluye la marca --min-cpu-platform.

    gcloud beta compute future-reservations create FUTURE_RESERVATION_NAME \
        --auto-delete-auto-created-reservations \
        --machine-type=MACHINE_TYPE \
        --min-cpu-platform="MIN_CPU_PLATFORM" \
        --share-setting=projects \
        --share-with=CONSUMER_PROJECT_IDS \
        --start-time=START_TIME \
        --end-time=END_TIME \
        --total-count=TOTAL_COUNT \
        --zone=ZONE
    

    Sustituye MIN_CPU_PLATFORM por una plataforma de CPU mínima. Para asegurarte de que una plataforma de CPU está disponible en la zona en la que vas a reservar recursos, consulta las plataformas de CPU disponibles por zona.

  • Para especificar un prefijo de nombre para las reservas creadas automáticamente, incluya la marca --name-prefix.

    gcloud beta compute future-reservations create FUTURE_RESERVATION_NAME \
        --auto-delete-auto-created-reservations \
        --machine-type=MACHINE_TYPE \
        --name-prefix=NAME_PREFIX \
        --share-setting=projects \
        --share-with=CONSUMER_PROJECT_IDS \
        --start-time=START_TIME \
        --end-time=END_TIME \
        --total-count=TOTAL_COUNT \
        --zone=ZONE
    

    Sustituye NAME_PREFIX por el prefijo de nombre de cada reserva creada automáticamente. Para ayudarte a identificar las reservas creadas automáticamente para esta solicitud de reserva futura, Google Cloud recomienda especificar un prefijo de nombre único.

REST

Para crear una solicitud de reserva futura compartida especificando propiedades directamente, haz una solicitud POST al método beta.futureReservations.insert.

Para crear un borrador de solicitud de reserva futura especificando las propiedades directamente sin incluir ningún campo opcional, haz una solicitud POST de la siguiente manera:

POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations

{
  "autoDeleteAutoCreatedReservations": AUTO_DELETE_AUTO_CREATED_RESERVATIONS,
  "name": "FUTURE_RESERVATION_NAME",
  "shareSettings": {
    "projects": [
      "CONSUMER_PROJECT_ID_1",
      "CONSUMER_PROJECT_ID_2"
    ],
    "shareType": "SPECIFIC_PROJECTS"
  },
  "specificSkuProperties": { 
    "instanceProperties": {
      "machineType": "MACHINE_TYPE"
    },
    "totalCount": TOTAL_COUNT
  },
  "timeWindow": {
    "startTime": "START_TIME",
    "endTime": "END_TIME"
  }
}

Haz los cambios siguientes:

  • PROJECT_ID: el ID del proyecto en el que quieres reservar recursos.

  • ZONE: la zona en la que se reservarán los recursos.

  • AUTO_DELETE_AUTO_CREATED_RESERVATIONS: si asignas el valor true a este campo, Compute Engine eliminará automáticamente las reservas creadas automáticamente para esta reserva futura en un plazo de dos horas a partir de la hora de finalización del periodo de reserva. Si quieres adjuntar las reservas creadas automáticamente a un compromiso, asigna el valor false a este campo.

  • CONSUMER_PROJECT_ID_1 y CONSUMER_PROJECT_ID_2: los IDs de los proyectos con los que se puede compartir esta futura solicitud de reserva. Puede especificar hasta 100 proyectos. Estos proyectos deben pertenecer a la misma organización que el proyecto en el que se cree la futura solicitud de reserva (el proyecto propietario). No especifiques el proyecto propietario. De forma predeterminada, ya se permite consumir las reservas creadas automáticamente para esta futura solicitud de reserva.
  • TOTAL_COUNT: el recuento total de las VMs que quieres reservar.

  • START_TIME: hora de inicio del periodo de reserva en formato de marca de tiempo RFC 3339, que debe tener el siguiente formato:

    YYYY-MM-DDTHH:MM:SSOFFSET
    

    Haz los cambios siguientes:

    • YYYY-MM-DD: datos con el formato de año de 4 dígitos, mes de 2 dígitos y día del mes de 2 dígitos, separados por guiones (-).

    • HH:MM:SS: hora con formato de hora de 24 horas de dos dígitos, minutos de dos dígitos y segundos de dos dígitos, separados por dos puntos (:).

    • OFFSET: la zona horaria con el formato de una diferencia con respecto al tiempo universal coordinado (UTC). Por ejemplo, para usar la hora estándar del Pacífico (PST), especifica -08:00. También puede especificar Z para no usar ningún desplazamiento.

    La hora de inicio no puede ser posterior a un año a partir de la fecha y la hora en las que envíes una solicitud de revisión de una reserva futura. Para tener tiempo suficiente para cancelar, eliminar o modificar una solicitud de reserva futura después de que se apruebe y antes de que llegue el momento de bloqueo, especifica un valor recomendado para la hora de inicio.

  • END_TIME: hora de finalización del periodo de reserva, con formato de marca de tiempo RFC 3339. Para aumentar las probabilidades de queGoogle Cloud apruebe tu solicitud después de enviarla, especifica un periodo de reserva mínimo. Para especificar una duración en lugar de una hora de finalización, puedes sustituir el campo endTime por el campo duration:

    "duration": {
      "seconds": END_DURATION
    }
    

    Sustituye END_DURATION por una duración en segundos. Por ejemplo, especifica 1209600 para 1.209.600 segundos (14 días).

Por ejemplo, supongamos que quieres crear una solicitud de reserva futura en borrador llamada fr-02 en la zona us-central1-a con las siguientes propiedades:

  • Un periodo de reserva que empieza a medianoche del 10 de noviembre del 2024 (UTC) y termina a medianoche del 10 de diciembre del 2024 (UTC).

  • Un recuento total de 80 VMs.

  • Un tipo de máquina predefinido N2 con 4 vCPUs.
  • La opción de eliminación automática está habilitada. Las reservas creadas automáticamente se eliminan al final del periodo de reserva.
  • La solicitud de reserva futura se comparte con project-1 y project-2.

Para crear un fr-02, POST, haz una solicitud POST de la siguiente manera:

POST https://compute.googleapis.com/compute/beta/projects/example-project/zones/us-central1-a/futureReservations

{
  "autoDeleteAutoCreatedReservations": true,
  "name": "fr-02",
  "specificSkuProperties": { 
    "instanceProperties": {
      "machineType": "n2-standard-4"
    },
    "totalCount": 80
  },
  "shareSettings": {
    "projects": [
      "project-1",
      "project-2"
    ],
    "shareType": "SPECIFIC_PROJECTS"
  },
  "timeWindow": {
    "startTime": "2024-11-10T00:00:00Z",
    "endTime": "2024-12-10T00:00:00Z"
  }
}

También puede hacer lo siguiente:

  • Para especificar un prefijo de nombre para las reservas creadas automáticamente, incluye el campo namePrefix.

    POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations
    
    {
      "autoDeleteAutoCreatedReservations": AUTO_DELETE_AUTO_CREATED_RESERVATIONS,
      "name": "FUTURE_RESERVATION_NAME",
      "namePrefix": "NAME_PREFIX",
      "shareSettings": {
        "projects": [
          "CONSUMER_PROJECT_ID_1",
          "CONSUMER_PROJECT_ID_2"
        ],
        "shareType": "SPECIFIC_PROJECTS"
      },
      "specificSkuProperties": { 
        "instanceProperties": {
          "machineType": "MACHINE_TYPE"
        },
        "totalCount": TOTAL_COUNT
      },
      "timeWindow": {
        "startTime": "START_TIME",
        "endTime": "END_TIME"
      }
    }
    

    Sustituye NAME_PREFIX por el prefijo de nombre de cada reserva creada automáticamente. Para ayudarte a identificar las reservas creadas automáticamente para esta solicitud de reserva futura, Google Cloud recomienda especificar un prefijo de nombre único.

  • Para adjuntar GPUs a tus VMs N1 reservadas, incluye el campo guestAccelerators.

    POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations
    
    {
      "autoDeleteAutoCreatedReservations": AUTO_DELETE_AUTO_CREATED_RESERVATIONS,
      "name": "FUTURE_RESERVATION_NAME",
      "shareSettings": {
        "projects": [
          "CONSUMER_PROJECT_ID_1",
          "CONSUMER_PROJECT_ID_2"
        ],
        "shareType": "SPECIFIC_PROJECTS"
      },
      "specificSkuProperties": {
        "instanceProperties": {
          "guestAccelerators": [
            {
              "acceleratorCount": NUMBER_OF_ACCELERATORS,
              "acceleratorType": "ACCELERATOR_TYPE"
            }
          ],
          "machineType": "MACHINE_TYPE"
        },
        "totalCount": TOTAL_COUNT
      },
      "timeWindow": {
        "startTime": "START_TIME",
        "endTime": "END_TIME"
      }
    }
    

    Haz los cambios siguientes:

    • NUMBER_OF_ACCELERATORS: número de GPUs que se van a añadir por cada VM reservada.

    • ACCELERATOR_TYPE: un modelo de GPU compatible con máquinas virtuales N1. Para evitar errores, comprueba que el modelo de GPU que has elegido esté disponible en la zona en la que vas a crear la solicitud de reserva.

  • Para asociar discos SSD locales a un tipo de máquina que no incluya discos SSD locales de forma predeterminada, incluye el campo localSsds en el cuerpo de la solicitud. Solo puedes conectar discos SSD locales de 375 GB.

    Por ejemplo, para especificar dos discos SSD locales al crear una solicitud de reserva futura en borrador, haz una solicitud POST de la siguiente manera:

    POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations
    
    {
      "autoDeleteAutoCreatedReservations": AUTO_DELETE_AUTO_CREATED_RESERVATIONS,
      "name": "FUTURE_RESERVATION_NAME",
      "shareSettings": {
        "projects": [
          "CONSUMER_PROJECT_ID_1",
          "CONSUMER_PROJECT_ID_2"
        ],
        "shareType": "SPECIFIC_PROJECTS"
      },
      "specificSkuProperties": {
        "instanceProperties": {
          "localSsds": [
            {
              "diskSizeGb": "375",
              "interface": "INTERFACE_TYPE"
            },
            {
              "diskSizeGb": "375",
              "interface": "INTERFACE_TYPE"
            }
          ],
          "machineType": "MACHINE_TYPE"
        },
        "totalCount": TOTAL_COUNT
      },
      "timeWindow": {
        "startTime": "START_TIME",
        "endTime": "END_TIME"
      }
    }
    

    Sustituye INTERFACE_TYPE por el tipo de interfaz de disco que quieres que usen los discos SSD locales y que admita el tipo de máquina que has especificado. Se debe utilizar uno de los valores indicados a continuación.

    • Para la interfaz de disco NVMe: NVME

    • Para la interfaz de disco SCSI: SCSI

  • Para que las VMs reservadas usen una plataforma de CPU mínima específica en lugar de la plataforma de CPU predeterminada de la zona, incluye minCpuPlatform.

    POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations
    
    {
      "autoDeleteAutoCreatedReservations": AUTO_DELETE_AUTO_CREATED_RESERVATIONS,
      "name": "FUTURE_RESERVATION_NAME",
      "shareSettings": {
        "projects": [
          "CONSUMER_PROJECT_ID_1",
          "CONSUMER_PROJECT_ID_2"
        ],
        "shareType": "SPECIFIC_PROJECTS"
      },
      "specificSkuProperties": {
        "instanceProperties": {
          "machineType": "MACHINE_TYPE",
          "minCpuPlatform": "MINIMUM_CPU_PLATFORM"
        },
        "totalCount": TOTAL_COUNT
      },
      "timeWindow": {
        "startTime": "START_TIME",
        "endTime": "END_TIME"
      }
    }
    

    Sustituye MIN_CPU_PLATFORM por una plataforma de CPU mínima. Para comprobar que una plataforma de CPU está disponible en la zona en la que vas a reservar recursos, consulta las plataformas de CPU disponibles por zona.

  • Para eliminar las reservas creadas automáticamente después de la hora de finalización del periodo de reserva, selecciona uno de los siguientes métodos:

    • Para eliminar las reservas creadas automáticamente después de un tiempo específico tras el final del periodo de reserva, asigna el valor true al campo autoDeleteAutoCreatedReservations e incluye el campo autoCreatedReservationsDeleteTime.

      POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations
      
      {
        "autoCreatedReservationsDeleteTime": "DELETE_TIME",
        "autoDeleteAutoCreatedReservations": true,
        "name": "FUTURE_RESERVATION_NAME",
        "shareSettings": {
          "projects": [
            "CONSUMER_PROJECT_ID_1",
            "CONSUMER_PROJECT_ID_2"
          ],
          "shareType": "SPECIFIC_PROJECTS"
        },
        "specificSkuProperties": { 
          "instanceProperties": {
            "machineType": "MACHINE_TYPE"
          },
          "totalCount": TOTAL_COUNT
        },
        "timeWindow": {
          "startTime": "START_TIME",
          "endTime": "END_TIME"
        }
      }
      

      Sustituye DELETE_TIME por la fecha y la hora en las que Compute Engine eliminará las reservas creadas automáticamente. La fecha y la hora deben tener el formato de marca de tiempo RFC 3339.

    • Para eliminar las reservas creadas automáticamente después de un periodo específico a partir de la hora de inicio del periodo de reserva, asigna el valor true al campo autoDeleteAutoCreatedReservations e incluye el campo autoCreatedReservationsDuration.

      POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations
      
      {
        "autoCreatedReservationsDuration": {
          "seconds": "DURATION_BEFORE_DELETE"
        },
        "autoDeleteAutoCreatedReservations": true,
        "name": "FUTURE_RESERVATION_NAME",
        "shareSettings": {
          "projects": [
            "CONSUMER_PROJECT_ID_1",
            "CONSUMER_PROJECT_ID_2"
          ],
          "shareType": "SPECIFIC_PROJECTS"
        },
        "specificSkuProperties": { 
          "instanceProperties": {
            "machineType": "MACHINE_TYPE"
          },
          "totalCount": TOTAL_COUNT
        },
        "timeWindow": {
          "startTime": "START_TIME",
          "endTime": "END_TIME"
        }
      }
      

      Sustituye DURATION_BEFORE_DELETE por una duración en segundos. Por ejemplo, especifica 604800 para 604.800 segundos (7 días).

Después de crear una solicitud de reserva futura en borrador, puedes determinar el número de VMs que Compute Engine aprovisionará para la solicitud.

Enviar una solicitud de borrador

Una vez que se haya enviado una solicitud de reserva futura, Google Cloudla haya aprobado y haya pasado el tiempo de bloqueo, solo podrás eliminar la reserva futura y las reservas creadas automáticamente después de que finalice el periodo de reserva de la reserva futura. Eliminar una reserva futura es útil si necesitas crear otra reserva futura con las mismas propiedades. Por lo tanto, antes de crear una solicitud de reserva futura, asegúrate de lo siguiente:

  • Las reservas actuales o futuras de un proyecto restringen los ajustes de uso compartido de las solicitudes de reserva futuras que puedes crear. Para asegurarte de que puedes crear una solicitud de reserva futura correctamente y de que tu solicitud no cause problemas en otros proyectos con los que compartas solicitudes de reserva o reservas futuras, consulta las restricciones.

  • Debes comprometerte a pagar los recursos reservados que Compute Engine aprovisione durante todo el periodo de reserva, independientemente de si se consumen o no las reservas creadas automáticamente. Para obtener más información, consulta el apartado Facturación.

Si quiere modificar una o varias propiedades al enviar la solicitud de reserva futura en borrador para que se revise, consulte el artículo Modificar solicitudes de reserva futuras.

Para enviar una solicitud de reserva futura en borrador a Google Cloud para que la revise, selecciona una de las siguientes opciones:

Consola

  1. En la Google Cloud consola, ve a la página Reservas.

    Ir a Reservas

  2. Haz clic en la pestaña Reservas futuras.

  3. En la columna Nombre, haga clic en el nombre de la solicitud de reserva futura con el estado de aprovisionamiento Borrador.

    Se abrirá la página Reservas futuras con los detalles de la solicitud de reserva futura.

  4. Haz clic en Editar borrador.

    Se abrirá la página para actualizar la solicitud de reserva futura en borrador.

  5. Para enviar la solicitud de reserva futura en borrador a revisión, haz clic en Enviar.

Se abrirá la página Reserva. En la columna Estado de la solicitud de reserva futura que acabas de enviar, el estado de la compra es Pendiente de aprobación.

gcloud

Para enviar una solicitud de reserva futura en borrador para que se revise, usa el comando gcloud beta compute future-reservations update con la marca --planning-status definida como SUBMITTED.

gcloud beta compute future-reservations update FUTURE_RESERVATION_NAME \
    --planning-status=SUBMITTED \
    --zone=ZONE

Haz los cambios siguientes:

  • FUTURE_RESERVATION_NAME: el nombre de una solicitud de reserva futura en borrador.

  • ZONE: la zona en la que se encuentra la futura solicitud de reserva.

REST

Para enviar una solicitud de reserva futura en borrador para que se revise, haz una solicitud PATCH al método beta.futureReservations.update. En el cuerpo de la solicitud, incluye el campo planningStatus y asigna el valor SUBMITTED.

PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/futureReservations/FUTURE_RESERVATION_NAME?updateMask=planningStatus

{
  "name": "FUTURE_RESERVATION_NAME",
  "planningStatus": "SUBMITTED"
}

Haz los cambios siguientes:

  • PROJECT_ID: el ID del proyecto en el que se encuentra la futura solicitud de reserva.

  • ZONE: la zona en la que se encuentra la futura solicitud de reserva.

  • FUTURE_RESERVATION_NAME: el nombre de una solicitud de reserva futura en borrador.

Una vez que hayas enviado una solicitud de reserva futura en borrador para que se revise, podrás hacer lo siguiente:

Solucionar problemas

Si tienes problemas al crear una solicitud de reserva futura, consulta cómo solucionar problemas con solicitudes de reserva futuras.

Si sigues teniendo problemas después de haberlos solucionado, ponte en contacto con el equipo de tu cuenta o con el equipo de Ventas.

Siguientes pasos