En este documento, se describen los pasos para crear instancias de máquina virtual (VM) independientes que usan tipos de máquinas A4X. Para obtener más información sobre este tipo de máquina, consulta A4X.
Para obtener información sobre otras formas de crear VMs o clústeres, consulta la Descripción general de las opciones de implementación.
Limitaciones
Cuando creas una VM de A4X independiente, se aplican las siguientes limitaciones:
- No recibirás descuentos por uso continuo ni descuentos por compromiso de uso flexible para las instancias que usen este tipo de máquina.
- Solo puedes crear instancias en ciertas regiones y zonas.
- No puedes usar Persistent Disk (regional o zonal). Solo puedes usar Google Cloud Hyperdisk.
- Este tipo de máquina solo está disponible en la plataforma NVIDIA Grace.
- Los cambios de tipo de máquina no son compatibles con A4X. Para cambiar a este tipo de máquina o dejar de usarlo, debes crear una instancia nueva.
- No puedes ejecutar sistemas operativos Windows en este tipo de máquina. Para obtener una lista de los sistemas operativos de Linux compatibles, consulta los sistemas operativos compatibles con las instancias de GPU.
- En el caso de las instancias A4X, cuando usas
ethtool -Spara supervisar la conexión en red de la GPU, no se actualizan los contadores de puertos físicos que terminan en_phy. Este es el comportamiento esperado para las instancias que usan la arquitectura de función virtual (VF) de MRDMA. Para obtener más información, consulta Funciones de MRDMA y herramientas de supervisión de redes. - Las instancias A4X no admiten lo siguiente:
- No puedes conectar discos Hyperdisk ML creados antes del 4 de febrero de 2026 a tipos de máquinas A4X.
Antes de comenzar
Antes de crear VMs, si aún no lo hiciste, completa los siguientes pasos:
- Elige una opción de consumo: La opción de consumo que elijas determinará cómo obtendrás
y usarás los recursos de GPU.
Para obtener más información, consulta Elige una opción de consumo.
- Obtén capacidad: El proceso para obtener capacidad difiere para cada opción de consumo.
Para obtener información sobre el proceso para obtener capacidad para la opción de consumo que elegiste, consulta la Descripción general de la capacidad.
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
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
REST
Para usar las muestras de la API de REST incluidas en esta página en un entorno de desarrollo local, debes usar las credenciales que proporciones a la gcloud CLI.
Install the Google Cloud CLI. After installation, initialize the Google Cloud CLI by running the following command:
gcloud initIf 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 Autentícate 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:
-
compute.instances.createen el proyecto -
Si deseas usar una imagen personalizada para crear la VM, sigue estos pasos:
compute.images.useReadOnlyen la imagen -
Para usar una instantánea a fin de crear la VM, haz lo siguiente:
compute.snapshots.useReadOnlyen la instantánea -
Si quieres usar una plantilla de instancias para crear la VM, sigue estos pasos:
compute.instanceTemplates.useReadOnlyen la plantilla de instancias -
A fin de especificar una subred para tu VM:
compute.subnetworks.useen el proyecto o en la subred elegida -
Si deseas especificar una dirección IP estática para la VM:
compute.addresses.useen el proyecto -
Para asignar una dirección IP externa a la VM cuando se usa una red de VPC,
compute.subnetworks.useExternalIpen el proyecto o en la subred elegida. -
Para asignar una red heredada a la VM, ejecuta
compute.networks.useen el proyecto. -
Para asignar una dirección IP externa a la VM cuando se usa una red heredada, ejecuta
compute.networks.useExternalIpen el proyecto -
Para configurar los metadatos de la instancia de VM para la VM,
compute.instances.setMetadataen el proyecto. -
Para configurar etiquetas en la VM, haz lo siguiente:
compute.instances.setTagsen la VM -
Para configurar etiquetas en la VM, haz lo siguiente:
compute.instances.setLabelsen la VM -
A fin de configurar una cuenta de servicio para que la VM use:
compute.instances.setServiceAccounten la VM -
Crear un disco nuevo para la VM:
compute.disks.createen el proyecto -
Para conectar un disco existente en modo de solo lectura o de lectura y escritura, usa
compute.disks.useen el disco. -
Para conectar un disco existente en modo de solo lectura, haz lo siguiente:
compute.disks.useReadOnlyen el disco
También puedes obtener estos permisos con roles personalizados o con otros roles predefinidos.
Conceptos básicos del A4X
Un clúster de A4X se organiza en una jerarquía de bloques y subbloques para facilitar el rendimiento de la red a gran escala y sin bloqueos. Comprender esta topología es clave a la hora de reservar capacidad y, también, de implementar cargas de trabajo.
- Instancia A4X
- Una instancia A4X es un solo tipo de máquina A4X que tiene 4 GPUs conectadas.
- En subbloque
- Un subbloque es la unidad fundamental de capacidad de A4X. En el caso de A4X, un subbloque consta de 18 instancias de A4X (72 GPUs). Estas instancias forman un dominio de NVLink y se conectan a través de un sistema NVLink de varios nodos. Para crear un sub-bloque A4X, aplica una política de posición compacta que especifique una topología
1x72. - Bloquear
- Un bloque A4X se compone de 25 subbloques (dominios de NVLink), lo que suma hasta 450 instancias de A4X (1,800 GPUs). Los subbloques están alineados con los rieles para lograr un ajuste de escala eficiente. Cada subbloque requiere una política de posición compacta. Por lo tanto, para un solo bloque de A4X, puedes crear 25 políticas de posición de compactación.
En la siguiente tabla, se muestran las opciones de topología compatibles para las instancias A4X:
Topología (gpuTopology) |
Cantidad de GPU | Cantidad de instancias |
|---|---|---|
1x72 |
72 | 18 |
Descripción general
La creación de una instancia con el tipo de máquina A4X incluye los siguientes pasos:
Crea redes de VPC
Para configurar la red para los tipos de máquinas A4X, crea tres redes de VPC para las siguientes interfaces de red:
- 2 redes de VPC normales para las interfaces de red (NIC) gVNIC Se usan para la comunicación de host a host.
- 1 red de VPC con el perfil de red RoCE para las NIC CX-7 cuando se crean varios subbloques A4X La red de VPC de RoCE debe tener 4 subredes, una para cada NIC de CX-7. Estas NIC usan RDMA a través de Ethernet convergida (RoCE), lo que proporciona la comunicación de alto ancho de banda y baja latencia que es esencial para escalar horizontalmente a varios subbloques A4X. En el caso de un solo subbloque A4X, puedes omitir esta red de VPC porque, dentro de un solo subbloque, la comunicación directa de GPU a GPU se controla con NVLink de varios nodos.
Para obtener más información sobre la disposición de las NIC, consulta Revisa el ancho de banda de la red y la disposición de las NIC.
Crea las redes de forma manual siguiendo las guías de instrucciones o automáticamente con la secuencia de comandos proporcionada.
Guías de instrucciones
Para crear las redes, puedes usar las siguientes instrucciones:
- Para crear las redes de VPC normales para las gVNICs, consulta Crea y administra redes de nube privada virtual.
- Para crear la red de VPC de RoCE, consulta Crea una red de nube privada virtual para las NIC de RDMA.
Para estas redes de VPC, te recomendamos que establezcas la unidad de transmisión máxima (MTU) en un valor mayor.
Para los tipos de máquinas A4X, la MTU recomendada es de 8896 bytes.
Para revisar la configuración de MTU recomendada para otros tipos de máquinas con GPU, consulta Configuración de MTU para tipos de máquinas con GPU.
Secuencia de comandos
Para crear las redes, sigue estos pasos.
Para estas redes de VPC, te recomendamos que establezcas la unidad de transmisión máxima (MTU) en un valor mayor.
Para los tipos de máquinas A4X, la MTU recomendada es de 8896 bytes.
Para revisar la configuración de MTU recomendada para otros tipos de máquinas con GPU, consulta Configuración de MTU para tipos de máquinas con GPU.
Usa la siguiente secuencia de comandos para crear redes de VPC normales para las gVNICs.
#!/bin/bash # Create regular VPC networks and subnets for the gVNICs for N in $(seq 0 1); do gcloud compute networks create GVNIC_NAME_PREFIX-net-$N \ --subnet-mode=custom \ --mtu=8896 gcloud compute networks subnets create GVNIC_NAME_PREFIX-sub-$N \ --network=GVNIC_NAME_PREFIX-net-$N \ --region=REGION \ --range=192.168.$N.0/24 gcloud compute firewall-rules create GVNIC_NAME_PREFIX-internal-$N \ --network=GVNIC_NAME_PREFIX-net-$N \ --action=ALLOW \ --rules=tcp:0-65535,udp:0-65535,icmp \ --source-ranges=192.168.0.0/16 done # Create SSH firewall rules gcloud compute firewall-rules create GVNIC_NAME_PREFIX-ssh \ --network=GVNIC_NAME_PREFIX-net-0 \ --action=ALLOW \ --rules=tcp:22 \ --source-ranges=IP_RANGE # Assumes that an external IP is only created for vNIC 0 gcloud compute firewall-rules create GVNIC_NAME_PREFIX-allow-ping-net-0 \ --network=GVNIC_NAME_PREFIX-net-0 \ --action=ALLOW \ --rules=icmp \ --source-ranges=IP_RANGESi necesitas varios subbloques A4X, usa la siguiente secuencia de comandos para crear la red de VPC y las subredes de RoCE para las cuatro NIC CX-7 en cada instancia de A4X.
#!/bin/bash # List and make sure network profiles exist in the machine type's zone gcloud compute network-profiles list --filter "location.name=ZONE" # Create network for RDMA NICs gcloud compute networks create RDMA_NAME_PREFIX-mrdma \ --network-profile=ZONE-vpc-roce \ --subnet-mode custom \ --mtu=8896 # Create subnets for N in $(seq 0 3); do gcloud compute networks subnets create RDMA_NAME_PREFIX-mrdma-sub-$N \ --network=RDMA_NAME_PREFIX-mrdma \ --region=REGION \ --range=192.168.$((N+2)).0/24 # offset to avoid overlap with gVNICs doneReemplaza lo siguiente:
GVNIC_NAME_PREFIX: Es el prefijo del nombre personalizado que se usará para las subredes y las redes de VPC normales de las gVNICs.RDMA_NAME_PREFIX: Es el prefijo del nombre personalizado que se usará para la red de VPC y las subredes de RoCE para las NIC CX-7.ZONE: Especifica una zona en la que esté disponible el tipo de máquina que deseas usar, comous-central1-a. Para obtener información sobre las regiones, consulta Disponibilidad de GPU por regiones y zonas.REGION: Es la región en la que deseas crear las subredes. Esta región debe corresponder a la zona especificada. Por ejemplo, si tu zona esus-central1-a, tu región esus-central1.IP_RANGE: Es el rango de IP que se usará para las reglas de firewall de SSH.
- Opcional: Para verificar que los recursos de la red de VPC se hayan creado correctamente, consulta la configuración de la red en la consola de Google Cloud :
- En la consola de Google Cloud , ve a la página Redes de VPC.
- Busca en la lista las redes que creaste en el paso anterior.
- Para ver las subredes, las reglas de firewall y otros parámetros de configuración de la red, haz clic en el nombre de la red.
Crea una política de posición de compactación
Para crear una política de posición compacta, selecciona una de las siguientes opciones:gcloud
Para crear una política de posición de compactación, usa el
comando gcloud beta compute resource-policies create group-placement:
gcloud beta compute resource-policies create group-placement POLICY_NAME \
--collocation=collocated \
--gpu-topology=1x72 \
--region=REGION
Reemplaza lo siguiente:
POLICY_NAME: el nombre de la política de posición compacta.REGION: la región en la que deseas crear la política de posición compacta. Especifica una región en la que esté disponible el tipo de máquina que deseas usar. Para obtener información sobre las regiones, consulta Disponibilidad de GPU por regiones y zonas.
REST
Para crear una política de posición compacta, realiza una solicitud POST al
método resourcePolicies.insert de la versión beta.
POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/resourcePolicies
{
"name": "POLICY_NAME",
"groupPlacementPolicy": {
"collocation": "COLLOCATED",
"gpuTopology": "1x72"
}
}
Reemplaza lo siguiente:
PROJECT_ID: el ID de tu proyectoPOLICY_NAME: el nombre de la política de posición compacta.REGION: la región en la que deseas crear la política de posición compacta. Especifica una región en la que esté disponible el tipo de máquina que deseas usar. Para obtener información sobre las regiones, consulta Disponibilidad de GPU por regiones y zonas.
Crea una instancia de A4X
Para obtener una topología de GPU de 1x72, crea 18 instancias A4X. Cuando crees las instancias, aplica la política de posición de compactación que especifica el campo gpuTopology. Aplicar la política garantiza que Compute Engine cree las 18 instancias de A4X en un solo subbloque para usar un dominio de NVLink.
Si un subbloque no tiene capacidad para una instancia de A4X, fallará la solicitud para crear la instancia.
Para crear una instancia de A4X, selecciona una de las siguientes opciones.
Los siguientes comandos también establecen el permiso de acceso para tus instancias. Para simplificar la administración de permisos, Google recomienda que configures el permiso de acceso en una instancia como accesocloud-platform y, luego, uses roles de IAM para definir a qué servicios puede acceder la instancia. Para obtener más información, consulta Prácticas recomendadas para los permisos.
gcloud
Para crear la instancia de A4X, usa el
comando gcloud compute instances create.
gcloud compute instances create INSTANCE_NAME \
--machine-type=a4x-highgpu-4g \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT \
--zone=ZONE \
--boot-disk-type=hyperdisk-balanced \
--boot-disk-size=DISK_SIZE \
--scopes=cloud-platform \
--network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-0,subnet=GVNIC_NAME_PREFIX-sub-0 \
--network-interface=nic-type=GVNIC,network=GVNIC_NAME_PREFIX-net-1,subnet=GVNIC_NAME_PREFIX-sub-1,no-address
--network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-0,no-address \
--network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-1,no-address \
--network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-2,no-address \
--network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-3,no-address \
--reservation-affinity=specific \
--reservation=RESERVATION \
--provisioning-model=RESERVATION_BOUND \
--instance-termination-action=TERMINATION_ACTION \
--maintenance-policy=TERMINATE \
--restart-on-failure \
--resource-policies=POLICY_NAME
Reemplaza lo siguiente:
INSTANCE_NAME: Es el nombre de la instancia de A4X.IMAGE_FAMILY: Es la familia de imágenes de la imagen de SO que deseas usar. Para obtener una lista de los sistemas operativos compatibles, consulta Detalles de los sistemas operativos.IMAGE_PROJECT: Es el ID del proyecto de la imagen de SO.ZONE: Es la zona en la que está disponible el tipo de máquina que deseas usar. Debes usar una zona en la misma región que la política de posición compacta. Para obtener información sobre las regiones, consulta Disponibilidad de GPU por regiones y zonas.DISK_SIZE: Es el tamaño del disco de arranque en GB.GVNIC_NAME_PREFIX: Es el prefijo de nombre que especificaste cuando creaste las subredes y las redes de VPC estándar que usan gVNICs.RDMA_NAME_PREFIX: Es el prefijo del nombre que especificaste cuando creaste las redes de VPC y las subredes que usan NIC de RDMA.-
RESERVATION: Es el nombre de la reserva, un bloque o un subbloque dentro de una reserva. Para obtener el nombre de la reserva o los bloques disponibles, consulta Cómo ver la capacidad reservada. Según tus requisitos de ubicación de la instancia, elige una de las siguientes opciones:- Para crear instancias de A4X en cualquier bloque individual, haz lo siguiente:
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME - Para crear instancias de A4X en un bloque específico, sigue estos pasos:
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME/reservationBlocks/RESERVATION_BLOCK_NAME - Para crear instancias de A4X en un subbloque específico, haz lo siguiente:
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME/reservationBlocks/RESERVATION_BLOCK_NAME/reservationSubBlocks/RESERVATION_SUBBLOCK_NAME
- Para crear instancias de A4X en cualquier bloque individual, haz lo siguiente:
TERMINATION_ACTION: Indica si Compute Engine detiene (STOP) o borra (DELETE) la instancia de A4X al final del período de reserva.POLICY_NAME: el nombre de la política de posición compacta.
REST
Para crear la instancia de A4X, realiza una solicitud POST al
método instances.insert.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances
{
"machineType": "projects/PROJECT_ID/zones/ZONE/machineTypes/a4x-highgpu-4g",
"name": "INSTANCE_NAME",
"disks":[
{
"boot":true,
"initializeParams":{
"diskSizeGb": "DISK_SIZE",
"diskType": "hyperdisk-balanced",
"sourceImage": "projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY"
},
"mode": "READ_WRITE",
"type": "PERSISTENT"
}
],
"serviceAccounts": [
{
"email": "default",
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
]
}
],
"networkInterfaces": [
{
"accessConfigs": [
{
"name": "external-nat",
"type": "ONE_TO_ONE_NAT"
}
],
"network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-0",
"nicType": "GVNIC",
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-0"
},
{
"network": "projects/NETWORK_PROJECT_ID/global/networks/GVNIC_NAME_PREFIX-net-1",
"nicType": "GVNIC",
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/GVNIC_NAME_PREFIX-sub-1"
},
{
"network": "projects/NETWORK_PROJECT_ID/global/networks/RDMA_NAME_PREFIX-mrdma",
"nicType": "MRDMA",
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/RDMA_NAME_PREFIX-mrdma-sub-0"
},
{
"network": "projects/NETWORK_PROJECT_ID/global/networks/RDMA_NAME_PREFIX-mrdma",
"nicType": "MRDMA",
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/RDMA_NAME_PREFIX-mrdma-sub-1"
},
{
"network": "projects/NETWORK_PROJECT_ID/global/networks/RDMA_NAME_PREFIX-mrdma",
"nicType": "MRDMA",
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/RDMA_NAME_PREFIX-mrdma-sub-2"
},
{
"network": "projects/NETWORK_PROJECT_ID/global/networks/RDMA_NAME_PREFIX-mrdma",
"nicType": "MRDMA",
"subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/RDMA_NAME_PREFIX-mrdma-sub-3"
}
],
"reservationAffinity":{
"consumeReservationType": "SPECIFIC_RESERVATION",
"key": "compute.googleapis.com/reservation-name",
"values":[
"RESERVATION"
]
},
"scheduling":{
"provisioningModel": "RESERVATION_BOUND",
"instanceTerminationAction": "TERMINATION_ACTION",
"onHostMaintenance": "TERMINATE",
"automaticRestart": true
},
"resourcePolicies": [
"projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME"
]
}
Reemplaza lo siguiente:
PROJECT_ID: Es el ID del proyecto en el que deseas crear la instancia de A4X.ZONE: Es la zona en la que está disponible el tipo de máquina que deseas usar. Debes usar una zona en la misma región que la política de posición compacta. Para obtener información sobre las regiones, consulta Disponibilidad de GPU por regiones y zonas.INSTANCE_NAME: Es el nombre de la instancia de A4X.DISK_SIZE: Es el tamaño del disco de arranque en GB.IMAGE_PROJECT: Es el ID del proyecto de la imagen de SO.IMAGE_FAMILY: Es la familia de imágenes de la imagen de SO que deseas usar. Para obtener una lista de los sistemas operativos compatibles, consulta Detalles de los sistemas operativos.NETWORK_PROJECT_ID: Es el ID del proyecto de la red.GVNIC_NAME_PREFIX: Es el prefijo de nombre que especificaste cuando creaste las subredes y las redes de VPC estándar que usan gVNICs.REGION: Es la región de la subred.RDMA_NAME_PREFIX: Es el prefijo del nombre que especificaste cuando creaste las redes de VPC y las subredes que usan NIC de RDMA.-
RESERVATION: Es el nombre de la reserva, un bloque o un subbloque dentro de una reserva. Para obtener el nombre de la reserva o los bloques disponibles, consulta Cómo ver la capacidad reservada. Según tus requisitos de ubicación de la instancia, elige una de las siguientes opciones:- Para crear instancias de A4X en cualquier bloque individual, haz lo siguiente:
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME - Para crear instancias de A4X en un bloque específico, sigue estos pasos:
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME/reservationBlocks/RESERVATION_BLOCK_NAME - Para crear instancias de A4X en un subbloque específico, haz lo siguiente:
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME/reservationBlocks/RESERVATION_BLOCK_NAME/reservationSubBlocks/RESERVATION_SUBBLOCK_NAME
- Para crear instancias de A4X en cualquier bloque individual, haz lo siguiente:
TERMINATION_ACTION: Indica si Compute Engine detiene (STOP) o borra (DELETE) la instancia de A4X al final del período de reserva.PROJECT_ID: Es el ID del proyecto de la política de posición compacta.REGION: Es la región de la política de posición compacta.POLICY_NAME: el nombre de la política de posición compacta.
¿Qué sigue?
- Cómo ver la topología de una instancia de procesamiento
- Descripción general de la ejecución de cargas de trabajo
- Soluciona problemas de consumo de reservas
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: 2026-03-14 (UTC)