Modifica reservas


En este documento, se explica cómo cambiar una reserva existente.

Modificar una reserva es útil cuando, por ejemplo, cambian tus necesidades de capacidad o cuando deseas permitir o denegar que los proyectos consuman una reserva compartida. Si deseas modificar una reserva compartida, solo puedes hacerlo con el proyecto propietario.

Si deseas cambiar una reserva vinculada a un compromiso, consulta Reemplaza las reservas adjuntas a los compromisos.

Antes de comenzar

  • Si aún no lo hiciste, configura la autenticación. La autenticación es el proceso mediante el cual se verifica tu identidad para acceder a los servicios y las API de Google Cloud. Para ejecutar código o muestras 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. Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init
    2. Set a default region and zone.
    3. REST

      Para usar las muestras de la API de REST en esta página en un entorno de desarrollo local, debes usar las credenciales que proporcionas a la CLI de gcloud.

        Install the Google Cloud CLI, then initialize it by running the following command:

        gcloud init

      Si deseas obtener más información, consulta Autentica para usar REST en la documentación de autenticación de Google Cloud.

Roles obligatorios

Si quieres obtener los permisos que necesitas para cambiar reservas, pídele a tu administrador que te otorgue el rol de IAM Administrador de Compute (roles/compute.admin) en el proyecto. Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.

Este rol predefinido contiene los permisos necesarios para cambiar reservas. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:

Permisos necesarios

Se requieren los siguientes permisos para cambiar reservas:

  • Para cambiar la opción de eliminación automática en una reserva o los proyectos de consumidor en una reserva compartida, usa compute.reservations.update en el proyecto.
  • Para cambiar la cantidad de VMs en una reserva, usa compute.reservations.resize en el proyecto.

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

Modifica reservas

Según las propiedades que desees modificar en una reserva, usa uno de los siguientes métodos:

Si deseas cambiar alguna propiedad que no se menciona en esta lista, consulta Cambia otras propiedades en una reserva en este documento.

Modifica la eliminación automática de una reserva

Puedes cambiar cuándo Compute Engine borra de forma automática una reserva existente mediante una de las siguientes acciones:

Para cambiar la eliminación automática de una reserva, elige una de las siguientes opciones:

Console

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

    Ir a Reservas

  2. En la pestaña Reservas según demanda (predeterminada), en la columna Nombre, haz clic en el nombre de la reserva que deseas modificar.

    Se abrirá la página de detalles de la reserva.

  3. En la fila Hora de eliminación automática, haz clic en Cambiar tiempo de eliminación automática.

  4. En el panel Actualizar reserva, realiza una de las siguientes acciones:

    • Para borrar la reserva en una fecha y hora específicas, haz lo siguiente:

      1. Si la opción de eliminación automática aún no está habilitada, haz clic en el botón de activación Habilitar eliminación automática.

      2. En el campo Hora de eliminación automática, escribe una fecha y hora en la que Compute Engine debe borrar la reserva de forma automática.

    • De lo contrario, haz clic en el botón de activación Habilitar eliminación automática a la posición desactivada.

  5. Haz clic en Enviar.

    La modificación de tu reserva puede tomar unos segundos en completarse.

gcloud

Cuando habilitas la opción de eliminación automática en una reserva, puedes especificar una fecha y hora en la que se debe borrar la reserva o especificar una duración después de la cual se debe borrar la reserva.

Para habilitar la opción de eliminación automática o cambiar cuándo se debe borrar la reserva, realiza una de las siguientes acciones:

  • Para borrar la reserva en una fecha y hora específicas, usa el comando gcloud beta compute reservations update con la marca --delete-at-time.

    gcloud beta compute reservations update RESERVATION_NAME \
        --delete-at-time=DELETE_AT_TIME \
        --zone=ZONE
    

    Reemplaza lo siguiente:

    • RESERVATION_NAME: Es el nombre de una reserva existente.

    • DELETE_AT_TIME: Una fecha y una hora con el formato de una marca de tiempo RFC 3339.

    • ZONE: Es la zona en la que se encuentra la reserva.

  • Para borrar la reserva después de una duración específica, usa el comando gcloud beta compute reservations update con la marca --delete-after-duration.

    gcloud beta compute reservations update RESERVATION_NAME \
        --delete-after-duration=DELETE_AFTER_DURATION \
        --zone=ZONE
    

    Reemplaza lo siguiente:

    • RESERVATION_NAME: Es el nombre de una reserva existente.

    • DELETE_AFTER_DURATION: Es una duración en días, horas, minutos o segundos antes de que la reserva se borre de forma automática. Por ejemplo, especifica 30m para 30 minutos o 1d2h3m4s para 1 día, 2 horas, 3 minutos y 4 segundos.

    • ZONE: Es la zona en la que se encuentra la reserva.

Para inhabilitar la opción de eliminación automática, usa el comando gcloud beta compute reservations update con la marca --disable-auto-delete.

gcloud beta compute reservations update RESERVATION_NAME \
    --disable-auto-delete \
    --zone=ZONE

Reemplaza lo siguiente:

  • RESERVATION_NAME: Es el nombre de una reserva existente.

  • ZONE: Es la zona en la que se encuentra la reserva.

REST

Cuando habilitas la opción de eliminación automática en una reserva, puedes especificar una fecha y hora en la que se debe borrar la reserva o especificar una duración después de la cual se debe borrar la reserva.

Para habilitar la opción de eliminación automática o cambiar cuándo se debe borrar la reserva, realiza una de las siguientes acciones:

  • Para borrar la reserva en una fecha y hora específicas, realiza una solicitud PATCH al método beta.reservations.update. En la URL de la solicitud, incluye el parámetro de consulta paths configurado como deleteAtTime.

    PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME?paths=deleteAtTime
    
    {
      "name": "RESERVATION_NAME",
      "deleteAtTime": "DELETE_AT_TIME"
    }
    

    Reemplaza lo siguiente:

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

    • ZONE: Es la zona en la que se encuentra la reserva.

    • RESERVATION_NAME: Es el nombre de una reserva existente.

    • DELETE_AT_TIME: Una fecha y una hora con el formato de una marca de tiempo RFC 3339.

  • Para borrar la reserva después de una duración específica, haz una solicitud PATCH al método beta.reservations.update. En la URL de la solicitud, incluye el parámetro de consulta paths configurado como deleteAfterDuration.seconds.

    PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME?paths=deleteAfterDuration.seconds
    
    {
      "name": "RESERVATION_NAME",
      "deleteAfterDuration": {
        "seconds": "DELETE_AFTER_DURATION"
      }
    }
    

    Reemplaza lo siguiente:

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

    • ZONE: Es la zona en la que se encuentra la reserva.

    • RESERVATION_NAME: Es el nombre de una reserva existente.

    • DELETE_AFTER_DURATION: Es una duración en segundos antes de que la reserva se borre de forma automática. Por ejemplo, especifica 86400 para 86,400 segundos (1 día).

Para inhabilitar la opción de eliminación automática, realiza una solicitud PATCH al método beta.reservations.update. En la solicitud, especifica el parámetro de búsqueda paths=deleteAtTime&paths=deleteAfterDuration y omite el cuerpo de la solicitud.

PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME?paths=deleteAtTime&paths=deleteAfterDuration

Reemplaza lo siguiente:

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

  • ZONE: Es la zona en la que se encuentra la reserva.

  • RESERVATION_NAME: Es el nombre de una reserva existente.

Modifica los proyectos de consumidor en una reserva compartida

Solo puedes permitir que los proyectos consuman una reserva compartida si estos proyectos se encuentran en la misma organización que el proyecto propietario. Si deseas obtener información para migrar un proyecto a la organización del proyecto de propietario, consulta Migra proyectos entre recursos de la organización en la documentación de Resource Manager.

Después de cambiar qué proyectos de consumidor pueden consumir una reserva compartida, el consumo de la reserva puede cambiar. Por ejemplo, cualquier proyecto de consumidor que se quitó dejó de consumir recursos de la reserva. Además, si la reserva se configuró para que la consuma automáticamente cualquier VM que coincida con las propiedades de la reserva (el comportamiento predeterminado), cualquier proyecto de consumidor agregado podría empezar a consumir recursos de la reserva. Si deseas supervisar el consumo de una reserva, consulta cómo verificar el consumo de las reservas.

Para cambiar los proyectos de consumidor que pueden consumir una reserva compartida, elige una de las siguientes opciones:

Console

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

    Ir a Reservas

  2. En la pestaña Reservas según demanda (predeterminada), en la columna Nombre, haz clic en el nombre de la reserva que deseas describir.

    Se abrirá la página de detalles de la reserva.

  3. Haz clic en  Cambiar.

  4. En la sección Proyectos seleccionados, realiza una de las siguientes acciones:

    • Para dejar de compartir la reserva con un proyecto de consumidor específico, haz clic en Borrar.

    • Para empezar a compartir la reserva con uno o más proyectos específicos, haz lo siguiente:

      1. Haz clic en Agregar proyectos.

      2. Selecciona la casilla de verificación de cada proyecto de la organización del proyecto propietario con el que deseas compartir la reserva.

      3. Haz clic en Seleccionar.

  5. Para confirmar los cambios, haz clic en Guardar.

    La modificación de tu reserva puede tomar unos segundos en completarse.

gcloud

Cuando modificas los proyectos de consumidor para una reserva compartida, debes especificar una lista separada por comas de los IDs de proyectos a los que que deseas permitirles, o dejar de permitirles, el consumo de la reserva compartida. Estos proyectos deben estar en la misma organización que el proyecto de propietario. No especifiques el proyecto propietario en la lista. De forma predeterminada, ya tiene permitido consumir la reserva compartida.

Para cambiar los proyectos de consumidor de una reserva compartida, elige uno de los siguientes métodos:

  • Para que uno o más proyectos consuman una reserva compartida, usa el comando gcloud compute reservations update con la marca --add-share-with.

    gcloud compute reservations update RESERVATION_NAME \
        --add-share-with=CONSUMER_PROJECT_IDS \
        --zone=ZONE
    

    Reemplaza lo siguiente:

    • RESERVATION_NAME: el nombre de una reserva compartida existente.

    • CONSUMER_PROJECT_IDS: una lista separada por comas de IDs de proyectos con los que se debe compartir la reserva. Por ejemplo, especifica project-1,project-2.

    • ZONE: Es la zona en la que se encuentra la reserva.

  • Para dejar de permitir que uno o más proyectos consuman una reserva compartida, usa el comando gcloud compute reservations update con la marca --remove-share-with.

    gcloud compute reservations update RESERVATION_NAME \
        --remove-share-with=CONSUMER_PROJECT_IDS \
        --zone=ZONE
    

    Reemplaza lo siguiente:

    • RESERVATION_NAME: el nombre de una reserva compartida existente.

    • CONSUMER_PROJECT_IDS: una lista separada por comas de los IDs de los proyectos con los que deseas dejar de compartir la reserva. Por ejemplo, especifica project-1,project-2.

    • ZONE: Es la zona en la que se encuentra la reserva.

  • Para reemplazar la lista de proyectos que pueden consumir una reserva compartida, usa el comando gcloud beta compute reservations update con la marca --share-with.

    gcloud beta compute reservations update RESERVATION_NAME \
        --share-with=CONSUMER_PROJECT_IDS \
        --zone=ZONE
    

    Reemplaza lo siguiente:

    • RESERVATION_NAME: el nombre de una reserva compartida existente.

    • ZONE: Es la zona en la que se encuentra la reserva.

    • CONSUMER_PROJECT_IDS: una lista separada por comas de IDs de proyectos con los que se debe compartir la reserva. Por ejemplo, especifica project-1,project-2.

REST

Cuando modificas los proyectos de consumidor destinados a una reserva compartida, debes especificar los IDs de los proyectos que deseas o no permitir que consuman la reserva compartida. Estos proyectos deben estar en la misma organización que el proyecto de propietario. No especifiques el proyecto de propietario. De forma predeterminada, ya tiene permitido consumir la reserva compartida.

Para cambiar los proyectos de consumidor de una reserva compartida, elige uno de los siguientes métodos:

  • Para permitir que uno o más proyectos consuman una reserva compartida, debes llevar a cabo una solicitud PATCH al método reservations.update. En la URL de la solicitud, incluye el parámetro de búsqueda paths=shareSettings.projectMap.PROJECT_ID para cada proyecto con el que desees compartir la reserva.

    Por ejemplo, para permitir que dos proyectos consuman una reserva compartida, debes hacer la siguiente solicitud PATCH:

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME?paths=shareSettings.projectMap.CONSUMER_PROJECT_ID_1&paths=shareSettings.projectMap.CONSUMER_PROJECT_ID_2
    
    {
      "name": "RESERVATION_NAME",
      "shareSetting": {
        "projectMap": {
          "CONSUMER_PROJECT_ID_1": {
            "projectId": "CONSUMER_PROJECT_ID_1"
          },
          "CONSUMER_PROJECT_ID_2": {
            "projectId": "CONSUMER_PROJECT_ID_2"
          }
        }
      }
    }
    

    Reemplaza lo siguiente:

    • PROJECT_ID: el ID del proyecto propietario, que es el proyecto que se usa para crear la reserva compartida.

    • ZONE: Es la zona en la que se encuentra la reserva.

    • RESERVATION_NAME: el nombre de una reserva compartida existente.

    • CONSUMER_PROJECT_ID_1 y CONSUMER_PROJECT_ID_2: Son los IDs de dos proyectos con los que deseas compartir la reserva.

  • Para dejar de permitir que uno o más proyectos consuman una reserva compartida, debes hacer una solicitud PATCH al método reservations.update. En la URL de la solicitud, incluye el parámetro de consulta paths=shareSettings.projectMap.PROJECT_ID para cada proyecto con el que deseas dejar de compartir la reserva. Además, debes omitir el campo shareSetting en el cuerpo de la solicitud.

    Por ejemplo, para dejar de permitir que dos proyectos consuman una reserva compartida, debes hacer la siguiente solicitud PATCH:

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME?paths=shareSettings.projectMap.CONSUMER_PROJECT_ID_1&paths=shareSettings.projectMap.CONSUMER_PROJECT_ID_2
    
    {
      "name": "RESERVATION_NAME"
    }
    

    Reemplaza lo siguiente:

    • PROJECT_ID: el ID del proyecto propietario, que es el proyecto que se usa para crear la reserva compartida.

    • ZONE: Es la zona en la que se encuentra la reserva.

    • RESERVATION_NAME: el nombre de una reserva compartida existente.

    • CONSUMER_PROJECT_ID_1 y CONSUMER_PROJECT_ID_2: Son los IDs de dos proyectos con los que deseas dejar de compartir la reserva.

Modifica la cantidad de VMs reservadas en una reserva

Puedes cambiar una reserva existente para aumentar o disminuir la cantidad de VMs reservadas.

Antes de modificar la cantidad de VMs reservadas en una reserva, asegúrate de que se cumplan las siguientes condiciones:

  • Si deseas aumentar la cantidad de VMs reservadas en una reserva, asegúrate de lo siguiente:

    • Debe haber suficientes recursos en la zona en la que se encuentra la reserva.

    • Debes tener una cuota suficiente, es decir, cuota de CPU y cuota de GPU, para los recursos adicionales que reservas. Para aumentar la cuota, consulta Visualiza y administra cuotas en la documentación de Cuotas de Cloud.

  • Si el tipo de consumo de tu reserva es específico y deseas disminuir la cantidad de VMs reservadas, asegúrate de que la cantidad de VMs que consume la reserva no exceda el tamaño de la reserva que deseas. Puedes hacerlo con los siguientes métodos:

Para cambiar la cantidad de VMs reservadas en una reserva, elige una de las siguientes opciones:

Console

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

    Ir a Reservas

  2. En la pestaña Reservas según demanda (predeterminada), en la columna Nombre, haz clic en el nombre de la reserva que deseas modificar.

    Se abrirá la página de detalles de la reserva.

  3. Haz clic en  Cambiar.

  4. En el campo Cantidad de instancias de VMs, escribe la cantidad actualizada de VM que se reservarán.

  5. Para confirmar, haz clic en Guardar.

    La modificación de tu reserva puede tomar unos segundos en completarse.

gcloud

Para cambiar la cantidad de VMs reservadas en una reserva, usa el comando gcloud compute reservations update.

gcloud compute reservations update RESERVATION_NAME \
    --vm-count=NUMBER_OF_VMS \
    --zone=ZONE

Reemplaza lo siguiente:

  • RESERVATION_NAME: Es el nombre de una reserva existente.

  • NUMBER_OF_VMS: La nueva cantidad de VMs que se reservarán.

  • ZONE: Es la zona en la que se encuentra la reserva.

REST

Para cambiar la cantidad de VMs reservadas en una reserva, realiza una solicitud POST al método reservations.resize.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME/resize

{
  "specificSkuCount": "NUMBER_OF_VMS"
}

Reemplaza lo siguiente:

  • PROJECT_ID: El ID del proyecto en el que se encuentra la reserva.

  • ZONE: Es la zona en la que se encuentra la reserva.

  • RESERVATION_NAME: Es el nombre de una reserva existente.

  • NUMBER_OF_VMS: La nueva cantidad de VMs que se reservarán.

Modifica la política de uso compartido de una reserva

Si modificas la política de uso compartido de una reserva de VMs con GPU, puedes permitir o denegar que los trabajos de entrenamiento o predicción personalizados en Vertex AI consuman la reserva.

Si quieres impedir que Vertex AI consuma una reserva, antes de modificarla, asegúrate de que no haya trabajos de entrenamiento ni de predicción personalizados que la consuman. De lo contrario, tendrás errores.

Para modificar la política de uso compartido de una reserva de VMs con GPU, selecciona una de las siguientes opciones:

Console

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

    Ir a Reservas

  2. En la pestaña Reservas según demanda (predeterminada), en la columna Nombre, haz clic en el nombre de la reserva de las VMs con GPU que deseas modificar.

    Se abrirá la página de detalles de la reserva.

  3. En la fila Compartir con otros servicios de Google Cloud, haz clic en Editar configuración de uso compartido de servicios.

  4. En el panel Uso compartido de reservas, realiza una de las siguientes acciones:

    • Para permitir que Vertex AI consuma la reserva, selecciona Compartir reserva.

    • Para no permitir que Vertex AI consuma la reserva, selecciona No compartir reserva.

  5. Haz clic en Guardar.

    La modificación de tu reserva puede tomar unos segundos en completarse.

gcloud

Para modificar la política de uso compartido de una reserva de VMs de GPU, usa el comando gcloud beta compute reservations update con la marca --reservation-sharing-policy.

gcloud beta compute reservations update RESERVATION_NAME \
    --reservation-sharing-policy=SHARING_POLICY \
    --zone=ZONE

Reemplaza lo siguiente:

  • RESERVATION_NAME: Es el nombre de una reserva existente.

  • SHARING_POLICY: Es la política de uso compartido de la reserva. Especifica uno de los siguientes valores:

    • Para permitir que Vertex AI consuma la reserva, haz lo siguiente: ALLOW_ALL

    • Para no permitir que Vertex AI consuma la reserva, haz lo siguiente: DISALLOW_ALL

  • ZONE: Es la zona en la que se encuentra la reserva.

REST

Para modificar la política de uso compartido de una reserva de VMs de GPU, realiza una solicitud PATCH al método beta.reservations.update. En la URL de la solicitud, incluye el parámetro de consulta paths configurado como reservationSharingPolicy.serviceShareType.

PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/reservations/RESERVATION_NAME?paths=reservationSharingPolicy.serviceShareType

{
  "name": "RESERVATION_NAME",
  "reservationSharingPolicy": {
    "serviceShareType": "SHARING_POLICY"
  }
}

Reemplaza lo siguiente:

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

  • ZONE: Es la zona en la que se encuentra la reserva.

  • RESERVATION_NAME: Es el nombre de una reserva existente.

  • SHARING_POLICY: Es la política de uso compartido de la reserva. Especifica uno de los siguientes valores:

    • Para permitir que Vertex AI consuma la reserva, haz lo siguiente: ALLOW_ALL

    • Para no permitir que Vertex AI consuma la reserva, haz lo siguiente: DISALLOW_ALL

Cambia otras propiedades en una reserva

Si deseas modificar una propiedad que no se menciona en la sección Modifica reservas, debes crear una reserva de reemplazo.

Para reemplazar una reserva sin correr el riesgo de una reducción no deseada en tu capacidad reservada, haz lo siguiente:

  1. Crea un proyecto único o una reserva compartida con propiedades actualizadas.

  2. Si ya no necesitas la reserva original, borra la reserva.

Solucionar problemas

Obtén más información sobre cómo solucionar problemas con las actualizaciones de reservas.

¿Qué sigue?