Puedes crear un grupo de máquinas virtuales (VM) que tengan unidades de procesamiento gráfico (GPU) conectadas mediante el proceso de creación masiva. Con el proceso de creación masiva, obtienes una validación por adelantado en la que la solicitud falla rápido si no es factible. Además, si usas la marca de región, la API de creación masiva elige de forma automática la zona que tiene la capacidad de completar la solicitud.
Para obtener más información sobre la creación masiva, consulta Acerca de la creación masiva de VMs. Para obtener más información sobre cómo crear VMs con GPU conectadas, consulta Descripción general para crear una instancia con GPU conectadas.
Antes de comenzar
- Para revisar las limitaciones y los pasos de requisitos previos adicionales para crear instancias con GPUs conectadas, como seleccionar una imagen de SO y verificar la cuota de GPU, consulta Descripción general para crear una instancia con GPUs conectadas.
- Para revisar las limitaciones de la creación masiva, consulta Acerca de la creación masiva de VMs.
-
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 APIs 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:
gcloud
-
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
- Set a default region and zone.
-
compute.instances.create
en el proyecto -
Si deseas usar una imagen personalizada para crear la VM, sigue estos pasos:
compute.images.useReadOnly
en la imagen -
Para usar una instantánea a fin de crear la VM, haz lo siguiente:
compute.snapshots.useReadOnly
en la instantánea -
Si quieres usar una plantilla de instancias para crear la VM, sigue estos pasos:
compute.instanceTemplates.useReadOnly
en la plantilla de instancias -
Para asignar una red heredada a la VM, ejecuta
compute.networks.use
en el proyecto. -
Si deseas especificar una dirección IP estática para la VM:
compute.addresses.use
en el proyecto -
Para asignar una dirección IP externa a la VM cuando se usa una red heredada, ejecuta
compute.networks.useExternalIp
en el proyecto -
A fin de especificar una subred para tu VM:
compute.subnetworks.use
en el proyecto o en la subred elegida -
Para asignar una dirección IP externa a la VM cuando se usa una red de VPC,
compute.subnetworks.useExternalIp
en el proyecto o en la subred elegida. -
Para configurar los metadatos de la instancia de VM para la VM,
compute.instances.setMetadata
en el proyecto. -
Para configurar etiquetas en la VM, haz lo siguiente:
compute.instances.setTags
en la VM -
Para configurar etiquetas en la VM, haz lo siguiente:
compute.instances.setLabels
en la VM -
A fin de configurar una cuenta de servicio para que la VM use:
compute.instances.setServiceAccount
en la VM -
Crear un disco nuevo para la VM:
compute.disks.create
en el proyecto -
Para conectar un disco existente en modo de solo lectura o de lectura y escritura, usa
compute.disks.use
en el disco. -
Para conectar un disco existente en modo de solo lectura, haz lo siguiente:
compute.disks.useReadOnly
en el disco - En los tipos de máquinas optimizados para aceleradores A4, se conectan las GPUs NVIDIA B200.
- En los tipos de máquinas optimizadas para aceleradores A3, se conectan GPUs NVIDIA H100 de 80 GB o NVIDIA H200 de 141 GB. Están disponibles en las siguientes opciones:
- A3 Ultra: Estos tipos de máquinas tienen GPUs H200 de 141 GB conectadas
- A3 Mega: Estos tipos de máquinas tienen GPUs H100 de 80 GB conectadas.
- A3 High: Estos tipos de máquinas tienen GPUs H100 de 80 GB conectadas.
- A3 Edge: Estos tipos de máquinas tienen GPUs H100 de 80 GB conectadas.
- En los tipos de máquinas optimizados para aceleradores A2, se conectan las GPU NVIDIA A100. Están disponibles en las siguientes opciones:
- A2 Ultra: Estos tipos de máquinas tienen GPU A100 de 80 GB conectadas.
- A2 estándar: Estos tipos de máquinas tienen GPU A100 de 40 GB conectadas.
- En los tipos de máquinas optimizados para aceleradores G2, se conectan las GPU NVIDIA L4.
--provisioning-model=SPOT
es una marca opcional que configura tus VMs como VMs Spot. Si tu carga de trabajo es tolerante a errores y puede admitir una posible interrupciónde la VM, considera usar VMs Spot para reducir el costo de tus VMs y las GPUs adjuntas. Para obtener más información, consulta GPU en VMs Spot. En el caso de las VMs Spot, las marcas de las opciones de reinicio automático y mantenimiento del host están inhabilitadas.La marca
--accelerator
para especificar una estación de trabajo virtual. Las estaciones de trabajo virtuales (vWS) NVIDIA RTX solo son compatibles con las VMs de G2.- Nombres de las VM:
my-test-vm-1
,my-test-vm-2
- Cada VM tiene dos GPU conectadas, especificadas mediante el tipo de máquina optimizado para aceleradores adecuado
REGION
: la región para las VMs. Esta región debe ser compatible con el modelo de GPU seleccionado.MACHINE_TYPE
: el tipo de máquina que seleccionaste. Elige una de las siguientes opciones:- Un tipo de máquina A3
- Un tipo de máquina A2
- Un tipo de máquina G2. Los tipos de máquinas G2 también admiten memoria personalizada. La memoria debe ser un múltiplo de 1,024 MB y debe estar dentro del rango de memoria admitido. Por ejemplo, para crear una VM con 4 CPU virtuales y 19 GB de memoria, especifica
--machine-type=g2-custom-4-19456
.
IMAGE
: una imagen del sistema operativo que admite GPU.Si deseas usar la imagen más reciente en una familia de imágenes, reemplaza la marca
--image
por la marca--image-family
y configura su valor en una familia de imágenes que admita GPU. Por ejemplo:--image-family=rocky-linux-8-optimized-gcp
También puedes especificar una imagen personalizada o una Deep Learning VM Image.
IMAGE_PROJECT
: el proyecto de imagen de Compute Engine al que pertenece la imagen de SO. Si usas una imagen personalizada o una Deep Learning VM Image, especifica el proyecto al que pertenecen esas imágenes.VWS_ACCELERATOR_COUNT
es la cantidad de GPUs virtuales que necesitas.- Nombres de las VM:
my-test-vm-1
,my-test-vm-2
Cada VM tiene dos GPU conectadas, especificadas mediante el tipo de máquina optimizado para aceleradores adecuado
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instances/bulkInsert { "namePattern":"my-test-vm-#", "count":"2", "instanceProperties": { "machineType":MACHINE_TYPE, "disks":[ { "type":"PERSISTENT", "initializeParams":{ "diskSizeGb":"200", "sourceImage":SOURCE_IMAGE_URI }, "boot":true } ], "name": "default", "networkInterfaces": [ { "network": "projects/PROJECT_ID/global/networks/default" } ], "scheduling":{ "onHostMaintenance":"TERMINATE", ["automaticRestart":true] } } }
PROJECT_ID
: El ID de tu proyectoREGION
: la región para las VMs. Esta región debe ser compatible con el modelo de GPU seleccionado.MACHINE_TYPE
: el tipo de máquina que seleccionaste. Elige una de las siguientes opciones:- Un tipo de máquina A2
- Un tipo de máquina G2. Los tipos de máquinas G2 también admiten memoria personalizada. La memoria debe ser un múltiplo de 1,024 MB y debe estar dentro del rango de memoria admitido. Por ejemplo, para crear una VM
con 4 CPU virtuales y 19 GB de memoria, especifica
--machine-type=g2-custom-4-19456
.
SOURCE_IMAGE_URI
: el URI de la imagen o familia de imágenes específicas que deseas usar.Por ejemplo:
- Imagen específica:
"sourceImage": "projects/rocky-linux-cloud/global/images/rocky-linux-8-optimized-gcp-v20220719"
- Familia de imágenes:
"sourceImage": "projects/rocky-linux-cloud/global/images/family/rocky-linux-8-optimized-gcp"
.
Cuando especificas una familia de imágenes, Compute Engine crea una VM a partir de la imagen de SO no obsoleta más reciente de esa familia. Para obtener más información sobre el balanceo de cargas, consulta Prácticas recomendadas para las familias de imágenes.
- Imagen específica:
Si tu carga de trabajo es tolerante a errores y puede admitir una posible interrupciónde la VM, considera usar VMs Spot para reducir el costo de tus VMs y las GPUs adjuntas. Para obtener más información, consulta GPU en VMs Spot. Para usar una VM Spot, agrega la opción
"provisioningModel": "SPOT
a tu solicitud. En el caso de las VMs Spot, las marcas de las opciones de reinicio automático y mantenimiento del host están inhabilitadas."scheduling": { "provisioningModel": "SPOT" }
Para las VM G2, se admiten estaciones de trabajo virtuales (vWS) de NVIDIA RTX. Para especificar una estación de trabajo virtual, agrega la opción
guestAccelerators
a tu solicitud. ReemplazaVWS_ACCELERATOR_COUNT
por la cantidad de GPU virtuales que necesitas."guestAccelerators": [ { "acceleratorCount": VWS_ACCELERATOR_COUNT, "acceleratorType": "projects/PROJECT_ID/zones/ZONEacceleratorTypes/nvidia-l4-vws" } ]
- NVIDIA T4:
nvidia-tesla-t4
- NVIDIA P4:
nvidia-tesla-p4
- NVIDIA P100:
nvidia-tesla-p100
- NVIDIA V100:
nvidia-tesla-v100
- Estación de trabajo virtual NVIDIA T4:
nvidia-tesla-t4-vws
- Estación de trabajo virtual NVIDIA P4:
nvidia-tesla-p4-vws
Estación de trabajo virtual NVIDIA P100:
nvidia-tesla-p100-vws
Para estas estaciones de trabajo virtuales, se agrega de forma automática una licencia de NVIDIA RTX Virtual Workstation (vWS) a tu VM.
- Nombres de las VM:
my-test-vm-1
,my-test-vm-2
- VM creadas en cualquier zona de
us-central1
que admita GPU - Cada VM tiene dos GPU T4 conectadas, especificadas mediante el tipo de acelerador y las marcas de recuento de aceleradores.
- Cada VM tiene instalados controladores de GPU
- Cada VM usa Deep Learning VM Image
pytorch-latest-gpu-v20211028-debian-10
- Nombres de las VM:
my-test-vm-1
,my-test-vm-2
- VM creadas en cualquier zona de
us-central1
que admita GPU - Cada VM tiene dos GPU T4 conectadas, especificadas mediante el tipo de acelerador y las marcas de recuento de aceleradores.
- Cada VM tiene instalados controladores de GPU
- Cada VM usa Deep Learning VM Image
pytorch-latest-gpu-v20211028-debian-10
Aprende a controlar el rendimiento de la GPU.
Obtén más información para usar un ancho de banda de red más alto.
Obtén información para controlar los eventos de mantenimiento del host de GPU.
- Obtén información para ver el uso real y previsto de tus VMs y GPUs.
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.
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
Para obtener más información, consulta Autentica para usar REST en la documentación de autenticación de Google Cloud .
Roles obligatorios
Para obtener los permisos que necesitas para crear VMs, pídele a tu administrador que te otorgue el rol de IAM Administrador de instancias de Compute (v1) (
roles/compute.instanceAdmin.v1
) 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 crear VM. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:
Permisos necesarios
Se requieren los siguientes permisos para crear VM:
También puedes obtener estos permisos con roles personalizados o con otros roles predefinidos.
Descripción general
Cuando creas VMs con GPU conectadas mediante el método de creación masiva, puedes elegir crear VMs en una región (como
us-central1
) o en una zona específica, como (us-central1-a
).Si eliges especificar una región, Compute Engine coloca las VMs en cualquier zona dentro de la región que admite las GPU.
Tipos de máquina
La familia de máquinas optimizadas para aceleradores contiene varios tipos de máquinas.
Cada tipo de máquina optimizada para acelerador tiene un modelo específico de GPU de NVIDIA conectada.
Crea grupos de VMs A3, A2 y G2
En esta sección, se explica que puedes crear instancias masivas para las series de máquinas A3 High, A3 Mega, A3 Edge, A2 y G2 con Google Cloud CLI o REST.
gcloud
Para crear un grupo de VMs, usa el comando
gcloud compute instances bulk create
. Para obtener más información sobre los parámetros y cómo usar este comando, consulta Crea VMs de forma masiva.Las siguientes marcas opcionales se muestran en el comando de muestra:
Ejemplo
En este ejemplo, se crean dos VMs que tienen GPUs conectadas mediante las siguientes especificaciones:
gcloud compute instances bulk create \ --name-pattern="my-test-vm-#" \ --region=REGION \ --count=2 \ --machine-type=MACHINE_TYPE \ --boot-disk-size=200 \ --image=IMAGE \ --image-project=IMAGE_PROJECT \ --on-host-maintenance=TERMINATE \ [--provisioning-model=SPOT] \ [--accelerator=type=nvidia-l4-vws,count=VWS_ACCELERATOR_COUNT]
Reemplaza lo siguiente:
Si se ejecuta de forma correcta, el resultado es similar al siguiente:
NAME ZONE my-test-vm-1 us-central1-b my-test-vm-2 us-central1-b Bulk create request finished with status message: [VM instances created: 2, failed: 0.]
REST
Usa el método
instances.bulkInsert
con los parámetros necesarios para crear varias VM en una región. Para obtener más información sobre los parámetros y cómo usar este comando, consulta Crea VMs de forma masiva.Ejemplo
En este ejemplo, se crean dos VMs que tienen GPUs conectadas mediante las siguientes especificaciones:
Reemplaza lo siguiente:
Configuración adicional:
Crear grupos de VMs de uso general N1
Puedes crear un grupo de VMs con GPU conectadas mediante Google Cloud CLI o REST.
En esta sección, se describe cómo crear varias VM con los siguientes tipos de GPU:
GPU de NVIDIA:
NVIDIA RTX Virtual Workstation (vWS) (antes conocida como NVIDIA GRID):
gcloud
Para crear un grupo de VMs, usa el comando
gcloud compute instances bulk create
. Para obtener más información sobre los parámetros y cómo usar este comando, consulta Crea VMs de forma masiva.Ejemplo
En el siguiente ejemplo, se crean dos VMs con GPU conectadas mediante las siguientes especificaciones:
gcloud compute instances bulk create \ --name-pattern="my-test-vm-#" \ --count=2 \ --region=us-central1 \ --machine-type=n1-standard-2 \ --accelerator type=nvidia-tesla-t4,count=2 \ --boot-disk-size=200 \ --metadata="install-nvidia-driver=True" \ --scopes="https://www.googleapis.com/auth/cloud-platform" \ --image=pytorch-latest-gpu-v20211028-debian-10 \ --image-project=deeplearning-platform-release \ --on-host-maintenance=TERMINATE --restart-on-failure
Si se ejecuta de forma correcta, el resultado es similar al siguiente:
NAME ZONE my-test-vm-1 us-central1-b my-test-vm-2 us-central1-b Bulk create request finished with status message: [VM instances created: 2, failed: 0.]
REST
Usa el método
instances.bulkInsert
con los parámetros necesarios para crear varias VM en una región. Para obtener más información sobre los parámetros y cómo usar este comando, consulta Crea VMs de forma masiva.Ejemplo
En el siguiente ejemplo, se crean dos VMs con GPU conectadas mediante las siguientes especificaciones:
Reemplaza
PROJECT_ID
con el ID del proyecto.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/region/us-central1/instances/bulkInsert { "namePattern":"my-test-vm-#", "count":"2", "instanceProperties": { "machineType":"n1-standard-2", "disks":[ { "type":"PERSISTENT", "initializeParams":{ "diskSizeGb":"200", "sourceImage":"projects/deeplearning-platform-release/global/images/pytorch-latest-gpu-v20211028-debian-10" }, "boot":true } ], "name": "default", "networkInterfaces": [ { "network": "projects/PROJECT_ID/global/networks/default" } ], "guestAccelerators": [ { "acceleratorCount": 2, "acceleratorType": "nvidia-tesla-t4" } ], "scheduling":{ "onHostMaintenance":"TERMINATE", "automaticRestart":true }, "metadata":{ "items":[ { "key":"install-nvidia-driver", "value":"True" } ] } } }
Próximos pasos
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: 2025-04-02 (UTC)
-