Modificar reservas


En este documento se explica cómo modificar las reservas. Para modificar las reservas asociadas a compromisos, consulta el artículo Sustituir reservas asociadas a compromisos.

Modificar una reserva cuando, por ejemplo, cambien tus necesidades de capacidad o quieras cambiar las cargas de trabajo que pueden consumir una reserva.

Limitaciones

Antes de modificar una reserva, ten en cuenta lo siguiente:

  • Solo puedes modificar una reserva compartida en el mismo proyecto en el que la creaste.

  • Solo puedes modificar una reserva creada automáticamente después de lo siguiente:

    • En el caso de las reservas futuras creadas en AI Hypercomputer, solo puedes modificar la reserva después de la hora de inicio.

    • En el caso de una reserva futura creada en Compute Engine, solo puedes modificarla después de la hora de finalización.

  • Solo puedes modificar una reserva creada automáticamente para una reserva futura en AI Hypercomputer para permitir o no que los trabajos de Vertex AI la consuman.

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

    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 modificar reservas, pide a tu administrador que te conceda el rol de gestión de identidades y accesos Administrador de Compute (roles/compute.admin) 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 modificar reservas. Para ver los permisos exactos que se necesitan, despliega la sección Permisos necesarios:

Permisos obligatorios

Para modificar reservas, se necesitan los siguientes permisos:

  • Para modificar la opción de eliminación automática de una reserva, los proyectos consumidores de una reserva compartida o si los trabajos de Vertex AI pueden consumir una reserva de instancias con GPUs conectadas, sigue estos pasos: compute.reservations.update en el proyecto
  • Para modificar el número de instancias de una reserva, sigue estos pasos: compute.reservations.resize en el proyecto

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

Modificar reservas

En función de las propiedades que quiera modificar en una reserva, utilice uno de los siguientes métodos:

Para cambiar las propiedades que no se mencionan en esta lista, debe crear una reserva nueva. Para ver las instrucciones, consulta la sección Cambiar otras propiedades de una reserva de este documento.

Modificar la eliminación automática de una reserva

Puedes modificar el momento en que Compute Engine elimina automáticamente una reserva siguiendo uno de estos pasos:

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

Consola

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

    Ir a Reservas

  2. En la pestaña Reservas bajo demanda (opción predeterminada), en la columna Nombre, haz clic en el nombre de la reserva que quieras modificar.

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

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

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

    • Para eliminar la reserva en una fecha y hora concretas, sigue estos pasos:

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

      2. En el campo Tiempo de eliminación automática, introduce la fecha y la hora en las que Compute Engine eliminará automáticamente la reserva.

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

  5. Haz clic en Enviar.

    Modificar tu reserva puede tardar unos segundos.

gcloud

Cuando habilitas la opción de eliminación automática en una reserva, puedes especificar una fecha y una hora en las que se debe eliminar la reserva o especificar un periodo tras el cual se debe eliminar la reserva.

Para habilitar la opción de eliminación automática o cambiar el momento en el que se debe eliminar la reserva, haz una de las siguientes acciones:

  • Para eliminar la reserva en una fecha y hora concretas, 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
    

    Haz los cambios siguientes:

    • RESERVATION_NAME: el nombre de una reserva.

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

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

  • Para eliminar la reserva después de un periodo específico, 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
    

    Haz los cambios siguientes:

    • RESERVATION_NAME: el nombre de una reserva.

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

    • ZONE: 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

Haz los cambios siguientes:

  • RESERVATION_NAME: el nombre de una reserva.

  • ZONE: 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 una hora en las que se debe eliminar la reserva o especificar un periodo tras el cual se debe eliminar la reserva.

Para habilitar la opción de eliminación automática o cambiar el momento en el que se debe eliminar la reserva, haz una de las siguientes acciones:

  • Para eliminar la reserva en una fecha y hora concretas, haz una solicitud PATCH al método beta.reservations.update. En la URL de la solicitud, incluya el parámetro de consulta paths con el valor 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"
    }
    

    Haz los cambios siguientes:

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

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

    • RESERVATION_NAME: el nombre de una reserva.

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

  • Para eliminar la reserva después de un periodo específico, haz una PATCH solicitud al método beta.reservations.update. En la URL de la solicitud, incluya el parámetro de consulta paths con el valor 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"
      }
    }
    

    Haz los cambios siguientes:

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

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

    • RESERVATION_NAME: el nombre de una reserva.

    • DELETE_AFTER_DURATION: duración en segundos antes de que se elimine automáticamente la reserva. Por ejemplo, especifica 86400 para 86.400 segundos (1 día).

Para inhabilitar la opción de eliminación automática, haz una solicitud PATCH al método beta.reservations.update. En la solicitud, especifica el parámetro de consulta 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

Haz los cambios siguientes:

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

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

  • RESERVATION_NAME: el nombre de una reserva.

Modificar los proyectos del consumidor en una reserva compartida

Para evitar errores al modificar los proyectos de consumidor de una reserva compartida, ten en cuenta lo siguiente:

  • Eliminación de proyectos: solo puedes impedir que los proyectos de consumidor utilicen una reserva compartida si ninguna instancia de proceso de esos proyectos utiliza la reserva. Para evitar que las instancias consuman una reserva, detenlas o elimínalas.

  • Adición de proyectos: puedes permitir que los proyectos de consumidor utilicen una reserva compartida solo si estos proyectos están en la misma organización que el proyecto propietario. Para migrar un proyecto a la organización del proyecto propietario, consulta el artículo Migrar proyectos entre recursos de organización de la documentación de Resource Manager.

Después de modificar los proyectos de consumidor de una reserva compartida, el consumo de la reserva puede cambiar. Por ejemplo, si has configurado la reserva para que la puedan usar todas las instancias coincidentes (la configuración predeterminada), es posible que los proyectos de consumidor que se añadan empiecen a usarla inmediatamente. Para obtener más información sobre qué proyectos de reservas coincidentes se consumen primero, consulta el orden de consumo de reservas.

Para modificar los proyectos de consumidor que pueden usar una reserva compartida, selecciona una de las siguientes opciones:

Consola

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

    Ir a Reservas

  2. En la pestaña Reservas bajo demanda (opción predeterminada), en la columna Nombre, haga clic en el nombre de la reserva que quiera describir.

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

  3. Haz clic en Editar.

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

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

    • Para empezar a compartir la reserva con uno o varios proyectos específicos, sigue estos pasos:

      1. Haz clic en Añadir proyectos.

      2. Marca la casilla de cada proyecto de la organización del proyecto propietario con el que quieras compartir la reserva. Puedes compartir una reserva compartida con hasta 100 proyectos de consumidor.

      3. Haz clic en Seleccionar.

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

    Modificar tu reserva puede tardar unos segundos.

gcloud

Cuando modifiques los proyectos de consumidor de una reserva compartida, debes especificar una lista de IDs de proyectos separados por comas a los que quieras permitir o dejar de permitir que consuman la reserva compartida. Estos proyectos deben estar en la misma organización que el proyecto propietario. No especifiques el proyecto propietario en la lista. De forma predeterminada, ya se permite consumir la reserva compartida.

Para modificar los proyectos del consumidor de una reserva compartida, haz lo siguiente:

  • Para permitir que uno o varios 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
    

    Haz los cambios siguientes:

    • RESERVATION_NAME: el nombre de una reserva compartida.

    • CONSUMER_PROJECT_IDS: lista separada por comas de los IDs de los proyectos con los que compartir la reserva. Por ejemplo, project-1,project-2. Puedes compartir una reserva compartida con hasta 100 proyectos de consumidor.

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

  • Para dejar de permitir que uno o varios 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
    

    Haz los cambios siguientes:

    • RESERVATION_NAME: el nombre de una reserva compartida.

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

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

  • Para sustituir la lista de proyectos que pueden usar 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
    

    Haz los cambios siguientes:

    • RESERVATION_NAME: el nombre de una reserva compartida.

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

    • CONSUMER_PROJECT_IDS: lista separada por comas de los IDs de los proyectos con los que compartir la reserva. Por ejemplo, project-1,project-2. Puedes compartir una reserva compartida con hasta 100 proyectos de consumidor.

REST

Cuando modifiques los proyectos de consumidor de una reserva compartida, debes especificar los IDs de los proyectos a los que quieras permitir o dejar de permitir que consuman la reserva compartida. Estos proyectos deben pertenecer a la misma organización que el proyecto propietario. No especifiques el proyecto propietario. De forma predeterminada, ya se permite consumir la reserva compartida.

Para modificar los proyectos del consumidor de una reserva compartida, haz lo siguiente:

  • Para permitir que uno o varios proyectos usen una reserva compartida, haz una solicitud PATCH al método reservations.update. En la URL de la solicitud, incluya el parámetro de consulta paths=shareSettings.projectMap.PROJECT_ID por cada proyecto con el que quiera compartir la reserva.

    Por ejemplo, para permitir que dos proyectos usen una reserva compartida, haz una solicitud PATCH de la siguiente manera. Puedes compartir una reserva compartida con hasta 100 proyectos de consumidor.

    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"
          }
        }
      }
    }
    

    Haz los cambios siguientes:

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

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

    • RESERVATION_NAME: el nombre de una reserva compartida.

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

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

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

    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"
    }
    

    Haz los cambios siguientes:

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

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

    • RESERVATION_NAME: el nombre de una reserva compartida.

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

Modificar el número de instancias reservadas de una reserva

Puedes aumentar o reducir el número de instancias de computación reservadas en una reserva. Sin embargo, antes de modificar el número de instancias, tenga en cuenta lo siguiente para evitar errores:

  • Para aumentar el número de instancias de cualquier reserva, asegúrate de que se cumplan los siguientes requisitos:

  • Para reducir el número de instancias de una reserva específica, asegúrate de que el número de instancias que consumen la reserva no supere el nuevo número, que es inferior. Si es así, haz una de las siguientes acciones con las instancias que superen el nuevo número:

    • Eliminar instancias

    • Detener o suspender las instancias

Para modificar el número de instancias reservadas en una reserva, selecciona una de las siguientes opciones:

Consola

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

    Ir a Reservas

  2. En la pestaña Reservas bajo demanda (opción predeterminada), en la columna Nombre, haga clic en el nombre de la reserva que quiera modificar.

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

  3. Haz clic en Editar.

  4. En el campo Número de instancias de VM, introduce el número actualizado de instancias que quieres reservar.

  5. Para confirmar la acción, haz clic en Guardar.

    Modificar tu reserva puede tardar unos segundos.

gcloud

Para modificar el número de instancias reservadas de una reserva, usa el comando gcloud compute reservations update.

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

Haz los cambios siguientes:

  • RESERVATION_NAME: el nombre de una reserva.

  • NUMBER_OF_VMS: el nuevo número de instancias que se van a reservar.

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

REST

Para modificar el número de instancias reservadas en una reserva, haz 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"
}

Haz los cambios siguientes:

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

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

  • RESERVATION_NAME: el nombre de una reserva.

  • NUMBER_OF_VMS: el nuevo número de instancias que se van a reservar.

Modificar la política de uso compartido de una reserva

Cuando modificas la política de uso compartido de una reserva de instancias de computación con GPU, controlas si las tareas de entrenamiento o predicción de Vertex AI consumen la reserva.

Antes de inhabilitar el uso de una reserva por parte de las tareas de Vertex AI, detén las tareas de Vertex AI que la utilicen. De lo contrario, se producirán errores.

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

Consola

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

    Ir a Reservas

  2. En la pestaña Reservas bajo demanda (predeterminada), en la columna Nombre, haga clic en el nombre de la reserva de instancias de GPU que quiera modificar. Aparecerá una página con los detalles de la reserva.

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

  4. En el panel Compartir reserva, haga una de las siguientes acciones:

    • Para permitir que las tareas de Vertex AI usen la reserva, selecciona Compartir reserva.

    • Para evitar que las tareas de Vertex AI consuman la reserva, selecciona No compartir reserva.

  5. Haz clic en Guardar.

    Modificar tu reserva puede tardar unos segundos.

gcloud

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

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

Haz los cambios siguientes:

  • RESERVATION_NAME: el nombre de una reserva.

  • SHARING_POLICY: la política de uso compartido de la reserva. Se debe utilizar uno de los valores indicados a continuación.

    • Para permitir que las tareas de Vertex AI usen la reserva, haz lo siguiente: ALLOW_ALL

    • Para no permitir que las tareas de Vertex AI consuman la reserva, haz lo siguiente: DISALLOW_ALL

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

REST

Para modificar la política de uso compartido de una reserva de instancias de GPU, haz una solicitud PATCH al método reservations.update. En la URL de la solicitud, incluya el parámetro de consulta paths con el valor reservationSharingPolicy.serviceShareType.

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

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

Haz los cambios siguientes:

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

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

  • RESERVATION_NAME: el nombre de una reserva.

  • SHARING_POLICY: la política de uso compartido de la reserva. Se debe utilizar uno de los valores indicados a continuación.

    • Para permitir que las tareas de Vertex AI usen la reserva, haz lo siguiente: ALLOW_ALL

    • Para no permitir que las tareas de Vertex AI consuman la reserva, haz lo siguiente: DISALLOW_ALL

Cambiar otras propiedades de una reserva

Si quieres modificar una propiedad que no se menciona en la sección Modificar reservas, debes crear una reserva de sustitución.

Para sustituir una reserva sin correr el riesgo de que se reduzca la capacidad reservada por error, haz lo siguiente:

  1. Crea una reserva de un solo proyecto o una reserva compartida con las propiedades actualizadas.

  2. Si ya no necesitas la reserva original, elimínala.

Solucionar problemas

Consulta cómo solucionar problemas con las actualizaciones de reservas.

Siguientes pasos