Usar reservas con instancias de Vertex AI Workbench
En este documento se explica cómo usar las reservas de Compute Engine para asegurarte de que tus instancias de Vertex AI Workbench tengan suficientes recursos de máquina virtual (VM) para ejecutarse.
Las reservas son una función de Compute Engine. Te ayudan a asegurarte de que tienes los recursos disponibles para crear máquinas virtuales con el mismo hardware (memoria y vCPUs) y recursos opcionales (GPUs y discos SSD locales) cuando los necesites.
Cuando creas una reserva, Compute Engine verifica que la capacidad solicitada esté disponible en la zona especificada. Si es así, Compute Engine reserva los recursos, crea la reserva y ocurre lo siguiente:
Los recursos reservados estarán disponibles de inmediato para que los uses y seguirán estando disponibles hasta que elimines la reserva.
Se te cobrarán los recursos reservados al mismo precio bajo demanda que las máquinas virtuales en ejecución, incluidos los descuentos aplicables, hasta que se elimine la reserva. Cuando una VM consume una reserva, no se le aplican cargos duplicados por los recursos, ya que la reserva ya se factura por el coste de los recursos reservados. Para obtener más información, consulta el artículo sobre la reserva de recursos de zona de Compute Engine.
Limitaciones y requisitos
Se aplican todas las limitaciones de las reservas de Compute Engine cuando las instancias de Vertex AI Workbench consumen reservas. Consulta cómo funcionan las reservas.
Además, cuando se usan reservas con instancias de Vertex AI Workbench, se aplican las siguientes limitaciones y requisitos:
Tu reserva debe ser una de las siguientes:
- En el mismo proyecto que tu instancia de Vertex AI Workbench.
- Se comparte con el mismo proyecto que tu instancia de Vertex AI Workbench.
Las propiedades de la VM de una reserva deben coincidir exactamente con las de tu instancia de Vertex AI Workbench para poder consumir la reserva. Por ejemplo, si una reserva especifica el tipo de máquina
e2-standard-8
, la instancia de Vertex AI Workbench solo podrá usar la reserva si también usa el tipo de máquinae2-standard-8
. Consulta los requisitos.
Antes de empezar
- Consulta los requisitos y las restricciones de las reservas.
- Consulte los requisitos de cuota y las restricciones de las reservas compartidas.
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Enable the Compute Engine and Notebooks APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles. -
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Enable the Compute Engine and Notebooks APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles. -
Administrador de Compute (
roles/compute.admin
) -
Administrador de cuadernos (
roles/notebooks.admin
) En la consola, ve a la página Instancias. Google Cloud
Haz clic en
Crear.En el cuadro de diálogo Nueva instancia, haz clic en Opciones avanzadas.
En el cuadro de diálogo Crear instancia, en la sección Tipo de máquina, selecciona el tipo de máquina y la configuración de GPU que coincidan con tu reserva.
En Plataforma de CPU y GPU, en el menú Reservas, selecciona la reserva que quieras usar.
Haz clic en Crear.
Vertex AI Workbench crea una instancia y la inicia automáticamente. Cuando la instancia esté lista para usarse, Vertex AI Workbench activará el enlace Abrir JupyterLab.
PROJECT_ID
: tu ID de proyectoLOCATION
: la zona en la que se encuentra tu instanciaINSTANCE_NAME
: el nombre de tu instanciaMACHINE_TYPE
: el tipo de máquina de tu instanciaRESERVATION_TYPE
: el tipo de reserva. Debe serRESERVATION_ANY
oRESERVATION_SPECIFIC
.RESERVATION_NAME
: el nombre de la reserva cuando se usa el tipoRESERVATION_SPECIFIC
- En el caso de las reservas del mismo proyecto, puedes usar el ID de reserva.
- Para las reservas de otro proyecto, debes usar la ruta completa de la reserva. Por ejemplo:
projects/PROJECT_ID/reservations/RESERVATION_NAME
. Los recursos de Compute Engine, incluidos los descuentos por compromiso de uso (CUDs) aplicables, a los precios de Compute Engine. Estos cargos tienen la etiqueta
goog-vertex-ai-product: workbench-instances
en el SKU. Consulta los precios de Compute Engine.Tarifas de gestión de Vertex AI Workbench, además del uso de la infraestructura. Consulta los precios de Vertex AI Workbench.
- Para obtener más información sobre las reservas de Compute Engine, consulta el artículo sobre la reserva de recursos de zona de Compute Engine.
Roles obligatorios
Para obtener los permisos que necesitas para usar reservas con instancias de Vertex AI Workbench, pide a tu administrador que te conceda los siguientes roles de gestión de identidades y accesos 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.
También puedes conseguir los permisos necesarios a través de roles personalizados u otros roles predefinidos.
Crear una reserva
Crea una reserva de Compute Engine. Puede ser una reserva de un solo proyecto o una reserva compartida. La reserva puede ser bajo demanda o para más adelante. Para obtener más información, consulta Elegir un tipo de reserva.
Usar una reserva con una instancia nueva
Para crear una instancia de Vertex AI Workbench que consuma una reserva, puedes usar la Google Cloud consola o la API REST.
Consola
Para crear una instancia de Vertex AI Workbench que consuma una reserva, sigue estos pasos:
REST
Antes de usar los datos de la solicitud, haz las siguientes sustituciones:
Método HTTP y URL:
POST https://notebooks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/instances?instanceId=INSTANCE_NAME
Cuerpo JSON de la solicitud:
{ "gce_setup": { "machine_type": "MACHINE_TYPE", "reservation_affinity": { "consume_reservation_type": "RESERVATION_TYPE", "key": "compute.googleapis.com/reservation-name", "values": ["RESERVATION_NAME"] } } }
Para enviar tu solicitud, elige una de estas opciones:
curl
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://notebooks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/instances?instanceId=INSTANCE_NAME"
PowerShell
Guarda el cuerpo de la solicitud en un archivo llamado request.json
y ejecuta el siguiente comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://notebooks.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/instances?instanceId=INSTANCE_NAME" | Select-Object -Expand Content
Para obtener más información, consulta la documentación de la API REST projects.locations.instances.create
.
Dejar de usar tu reserva
Para dejar de usar tu reserva, puedes eliminarla.
Si quieres seguir usando tu reserva con otros recursos, pero no quieres que la use tu instancia de Vertex AI Workbench, debes eliminar la instancia.
Facturación
Cuando consumes una reserva de Compute Engine, se te cobra por lo siguiente:
Solucionar problemas
Para encontrar métodos para diagnosticar y resolver errores relacionados con el uso de reservas con instancias de Vertex AI Workbench, consulta Solucionar problemas de instancias de Vertex AI Workbench.