En este documento, se describe cómo crear un grupo de instancias administrado (MIG) con VMs de GPU. Se describe cómo agregar VMs de GPU de una sola vez al grupo mediante solicitudes de cambio de tamaño.
El uso de una solicitud de cambio de tamaño mejora la capacidad de obtención de las VMs de GPU en un MIG. En la solicitud, especifica la cantidad de VMs de GPU y la duración para la que deseas ejecutar esas VMs. Un mecanismo de programador subyacente controla todas las solicitudes de cambio de tamaño en Compute Engine y programa de manera eficiente las solicitudes en función de las duraciones y la disponibilidad de las VMs. Cuando los recursos están disponibles, el MIG crea las VMs de forma automática.
Si el trabajo que se ejecuta en estas VMs finaliza antes de la duración solicitada, puedes borrar esas VMs. De lo contrario, el MIG borra de forma automática las VMs cuando finaliza la duración.
También puedes leer sobre otras situaciones básicas para crear un MIG.
Antes de comenzar
- A fin de asegurarte de que tienes suficiente cuota de GPU para los recursos que solicitas, verifica tu cuota de GPU.
-
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 un código o muestras desde un entorno de desarrollo local, puedes autenticarte en Compute Engine de la siguiente manera.
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
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
Crea una plantilla de instancias, que es necesaria para crear un MIG. El MIG crea cada VM en el grupo según la plantilla de instancias. En la plantilla, especifica la configuración para las VMs de GPU y las opciones de configuración adicionales necesarias a fin de usar solicitudes de cambio de tamaño.
Para obtener más información sobre las plantillas de instancias, consulta Acerca de las plantillas de instancias.
Crea un MIG y una solicitud de cambio de tamaño para agregar VMs de GPU de una sola vez.
Ve a la página Plantillas de instancias.
Haz clic en Crear plantilla de instancias.
En el campo Nombre, ingresa un nombre para la plantilla de instancias.
En la sección Configuración de la máquina, haz lo siguiente:
- Haz clic en la pestaña GPU.
- En la lista Tipo de GPU, selecciona el tipo de GPU.
- En la lista Cantidad de GPU, elige la cantidad.
- En la sección Tipo de máquina, selecciona un tipo de máquina.
Expande la sección Opciones avanzadas y sigue estos pasos:
- Expande la sección Administración.
- En la lista Reservas, selecciona No usar.
Haz clic en Crear.
INSTANCE_TEMPLATE_NAME
: el nombre de la plantilla de instancias.MACHINE_TYPE
: un tipo de máquina que admite GPU. Si especificas un tipo de máquina N1, incluye la marca--accelerator
para especificar la cantidad y el tipo de GPU que conectarás a las VMs.PROJECT_ID
: Es el ID del proyecto en el que deseas crear el MIG.INSTANCE_TEMPLATE_NAME
: el nombre de la plantilla de instancias.MACHINE_TYPE
: un tipo de máquina que admite GPU. Si especificas un tipo de máquina N1, incluye el campoguestAccelerators
para especificar la cantidad y el tipo de GPU que conectarás a las VMs.Crea un MIG zonal con el comando
instance-groups managed create
en fase beta.gcloud beta compute instance-groups managed create INSTANCE_GROUP_NAME \ --template=INSTANCE_TEMPLATE_NAME \ --size=0 \ --zone=ZONE \ --default-action-on-vm-failure=do_nothing
En el MIG, crea una solicitud de cambio de tamaño con el comando
instance-groups managed resize-requests create
beta. Especifica la cantidad de VM de GPU que deseas y la duración de la ejecución de esas VMs.gcloud beta compute instance-groups managed resize-requests create INSTANCE_GROUP_NAME \ --resize-request=RESIZE_REQUEST_NAME \ --resize-by=COUNT \ --requested-run-duration=RUN_DURATION\ --zone=ZONE
INSTANCE_GROUP_NAME
: Es el nombre del MIG.INSTANCE_TEMPLATE_NAME
: el nombre de la plantilla de instancias para las VMs de GPU.ZONE
: Una de las zonas disponibles para Compute Engine.RESIZE_REQUEST_NAME
: el nombre de la solicitud de cambio de tamaño.COUNT
: la cantidad de VMs que se agregarán a la vez en el grupo.RUN_DURATION
: la duración que deseas que se ejecuten las VMs solicitadas. El valor debe tener el formato de la cantidad de días, horas, minutos o segundos, seguidos ded
,h
,m
ys
, respectivamente. Por ejemplo, especifica30m
para 30 minutos o1d2h3m4s
para 1 día, 2 horas, 3 minutos y 4 segundos. El valor debe ser de entre 10 minutos y 7 días.Crea un MIG zonal mediante una solicitud
POST
al métodoinstanceGroupManagers.insert
beta.POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers { "versions": [ { "instanceTemplate": "global/instanceTemplates/INSTANCE_TEMPLATE_NAME" } ], "name": "INSTANCE_GROUP_NAME", "targetSize": 0, "instanceLifecyclePolicy": { "defaultActionOnFailure": "DO_NOTHING" } }
En el MIG, crea una solicitud de cambio de tamaño mediante una solicitud
POST
al métodoinstanceGroupManagerResizeRequests.insert
beta. En el cuerpo de la solicitud, especifica la cantidad de VM de GPU que deseas crear a la vez y la duración por la que deseas ejecutar esas VMs.POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/INSTANCE_GROUP_NAME/resizeRequests { "name": "RESIZE_REQUEST_NAME", "resizeBy": COUNT, "requestedRunDuration": { "seconds": "RUN_DURATION" } }
PROJECT_ID
: Es el ID del proyecto en el que deseas crear el MIG.INSTANCE_GROUP_NAME
: Es el nombre del MIG.INSTANCE_TEMPLATE_NAME
: el nombre de la plantilla de instancias para las VMs de GPU.ZONE
: Una de las zonas disponibles para Compute Engine.RESIZE_REQUEST_NAME
: el nombre de la solicitud de cambio de tamaño.COUNT
: la cantidad de VMs que se agregarán a la vez en el grupo.RUN_DURATION
: el tiempo, en segundos, por el que deseas que se ejecuten las VMs solicitadas antes de que el MIG las borre de forma automática. El valor debe estar entre600
, que es 600 segundos (10 minutos), y604800
, que es 604,800 segundos (7 días).- Obtén información para cambiar el tamaño de las solicitudes en un MIG.
- Obtén información para ver, cancelar o borrar solicitudes de cambio de tamaño en un MIG.
- Obtén información para ver información sobre los MIG y las VMs administradas.
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.
Limitaciones
Revisa las limitaciones para crear una solicitud de cambio de tamaño en un MIG.
Crea un MIG y agrega las VMs de GPU de una sola vez
Para crear un MIG y agregar las VMs de GPU de una sola vez en el grupo, haz lo siguiente:
Crea una plantilla de instancias
Crea una plantilla de instancias como se describe en esta sección y, luego, úsala para crear un MIG.
Console
gcloud
Crea una plantilla de instancias con el comando
instance-templates create
.El siguiente comando crea una plantilla de instancias global.
gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \ --machine-type=MACHINE_TYPE \ --maintenance-policy=TERMINATE \ --reservation-affinity=none
Reemplaza lo siguiente:
REST
Crea una plantilla de instancias mediante una solicitud
POST
al métodoinstanceTemplates.insert
.En la siguiente solicitud, se crea una plantilla de instancias global:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/instanceTemplates { "name": "INSTANCE_TEMPLATE_NAME", "properties": { "disks": [ { "boot": true, "mode": "READ_WRITE", "type": "PERSISTENT", "initializeParams": { "sourceImage": "projects/debian-cloud/global/images/family/debian-10" } } ], "machineType": "MACHINE_TYPE", "networkInterfaces": [ { "accessConfigs": [ { "name": "external-IP", "type": "ONE_TO_ONE_NAT" } ], "network": "global/networks/default" } ], "reservationAffinity": { "consumeReservationType": "NO_RESERVATION" }, "scheduling": { "onHostMaintenance": "TERMINATE" } } }
Reemplaza lo siguiente:
Crea un MIG y agrega las VMs de GPU de una sola vez
Crea un MIG con reparaciones desactivadas como se describe en esta sección. Para usar la solicitud de cambio de tamaño en el MIG, no debes configurar el ajuste de escala automático en el grupo.
gcloud
Reemplaza lo siguiente:
REST
Reemplaza lo siguiente:
La solicitud de cambio de tamaño que creas permanece en el estado
ACCEPTED
hasta que el MIG crea todas las VMs de GPU solicitadas. Después de crear todas las VMs de GPU en el grupo, el estado de la solicitud cambia aSUCCEEDED
.¿Qué sigue?
Salvo que se indique lo contrario, el contenido de esta página está sujeto a la licencia Atribución 4.0 de Creative Commons, y los ejemplos de código están sujetos a la licencia Apache 2.0. Para obtener más información, consulta las políticas del sitio de Google Developers. Java es una marca registrada de Oracle o sus afiliados.
Última actualización: 2024-09-03 (UTC)
-