Neste documento, explicamos como criar instâncias de máquina virtual (VM) em massa que usam tipos de máquinas A4 ou A3 Ultra. Para saber mais sobre esses tipos de máquinas otimizados para aceleradores, consulte A4 ou A3 Ultra.
Para mais informações sobre a criação de VMs em massa, consulte Sobre a criação em massa de VMs na documentação do Compute Engine.
Para saber mais sobre outras maneiras de criar VMs ou clusters, consulte Visão geral das opções de implantação.
Limitações
Ao criar VMs A4 ou A3 Ultra em massa, as seguintes limitações se aplicam:
A4
- Você não recebe descontos por uso prolongado e descontos por compromisso de uso flexível para instâncias que usam um tipo de máquina A4.
- Só é possível usar um tipo de máquina A4 em determinadas regiões e zonas.
- Não é possível usar o Persistent Disk (regional ou zonal). Só é possível usar o Google Cloud Hyperdisk.
- O tipo de máquina A4 só está disponível na plataforma de CPU Emerald Rapids.
- Não é possível mudar o tipo de máquina de uma instância para ou de um tipo de máquina A4. É necessário criar uma nova instância com esse tipo de máquina.
- Os tipos de máquina A4 não são compatíveis com locatário único.
- Não é possível executar sistemas operacionais Windows em um tipo de máquina A4.
- Para instâncias A4, quando você usa
ethtool -Spara monitorar a rede de GPU, os contadores de porta física que terminam em_phynão são atualizados. Esse é o comportamento esperado para instâncias que usam a arquitetura de função virtual (VF) do MRDMA. Para mais informações, consulte Funções do MRDMA e ferramentas de monitoramento de rede. - Não é possível anexar discos do Hyperdisk ML criados antes de 4 de fevereiro de 2026 aos tipos de máquina A4.
A3 Ultra
- Você não recebe descontos por uso prolongado e descontos por compromisso de uso flexível para instâncias que usam um tipo de máquina A3 ultra.
- Só é possível usar um tipo de máquina A3 Ultra em determinadas regiões e zonas.
- Não é possível usar o Persistent Disk (regional ou zonal). Só é possível usar o Google Cloud Hyperdisk.
- O tipo de máquina A3 Ultra só está disponível na plataforma de CPU Emerald Rapids.
- As mudanças de tipo de máquina não são compatíveis com o tipo de máquina A3 Ultra. Para mudar para ou desse tipo de máquina, crie uma nova instância.
- Não é possível executar sistemas operacionais Windows em um tipo de máquina A3 Ultra.
- Os tipos de máquina A3 Ultra não são compatíveis com locatário único.
- Para instâncias A3 Ultra, quando você usa
ethtool -Spara monitorar a rede de GPU, os contadores de porta física que terminam em_phynão são atualizados. Esse é o comportamento esperado para instâncias que usam a arquitetura de função virtual (VF) do MRDMA. Para mais informações, consulte Funções do MRDMA e ferramentas de monitoramento de rede.
Antes de começar
Antes de criar VMs em massa, siga estas etapas, caso ainda não tenha feito isso:
- Escolha uma opção de consumo: a opção escolhida determina como você recebe e usa os recursos de GPU.
Para saber mais, consulte Escolher uma opção de consumo.
- Obter capacidade: o processo para obter capacidade varia de acordo com cada opção de consumo.
Para saber mais sobre o processo de obtenção de capacidade para a opção de consumo escolhida, consulte Visão geral da capacidade.
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 as amostras da API REST desta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para gcloud CLI.
Instale a CLI do Google Cloud. Após a instalação, inicialize a CLI do Google Cloud executando o seguinte comando:
gcloud initAo usar um provedor de identidade (IdP) externo, primeiro faça login na gcloud CLI com sua identidade federada.
Saiba mais em Autenticar para usar REST na documentação de autenticação do Google Cloud .
Funções exigidas
Para receber as permissões necessárias para criar VMs em massa,
peça ao administrador para conceder a você o
papel do IAM de Administrador da instância do Compute (v1) (roles/compute.instanceAdmin.v1)
no projeto.
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Esse papel predefinido contém as permissões necessárias para criar VMs em massa. Para conferir as permissões exatas necessárias, expanda a seção Permissões necessárias:
Permissões necessárias
As seguintes permissões são necessárias para criar VMs em massa:
-
compute.instances.createno projeto -
Usar uma imagem personalizada para criar a VM:
compute.images.useReadOnlyna imagem -
Usar um snapshot para criar a VM:
compute.snapshots.useReadOnlyno snapshot -
Usar um modelo de instância para criar a VM:
compute.instanceTemplates.useReadOnlyno modelo de instância -
Especificar uma sub-rede para a VM:
compute.subnetworks.useno projeto ou na sub-rede escolhida -
Especificar um endereço IP estático para a VM:
compute.addresses.useno projeto -
Atribuir um endereço IP externo à VM ao usar uma rede VPC:
compute.subnetworks.useExternalIpno projeto ou na sub-rede escolhida -
Atribuir uma rede legada à VM:
compute.networks.useno projeto -
Atribuir um endereço IP externo à VM usando uma rede legada:
compute.networks.useExternalIpno projeto -
Definir os metadados da instância de VM para a VM:
compute.instances.setMetadatano projeto -
Definir tags para a VM:
compute.instances.setTagsna VM -
Definir rótulos para a VM:
compute.instances.setLabelsna VM -
Definir uma conta de serviço a ser usada pela VM:
compute.instances.setServiceAccountna VM -
Criar um disco para a VM:
compute.disks.createno projeto -
Anexar um disco atual no modo somente leitura ou de leitura e gravação:
compute.disks.useno disco -
Anexar um disco atual no modo somente leitura:
compute.disks.useReadOnlyno disco
Essas permissões também podem ser concedidas com funções personalizadas ou outros papéis predefinidos.
Visão geral
A criação de instâncias em massa com o tipo de máquina A4 ou A3 Ultra inclui as seguintes etapas:
Criar redes VPC
Para configurar a rede para o tipo de máquina A4 ou A3 Ultra, crie três redes VPC para as seguintes interfaces de rede:
- Duas redes VPC regulares para as interfaces de rede (NIC) gVNIC Eles são usados para comunicação entre hosts.
- 1 rede VPC com o perfil de rede RoCE é necessária para as NICs CX-7. A rede VPC RoCE precisa ter oito sub-redes, uma para cada NIC CX-7. Essas NICs usam RDMA em Ethernet convergente (RoCE), fornecendo a comunicação de alta largura de banda e baixa latência essencial para comunicação de GPU para GPU.
Para mais informações sobre o arranjo de NICs, consulte Analisar a largura de banda da rede e o arranjo de NICs.
Crie as redes manualmente seguindo os guias de instruções ou automaticamente usando o script fornecido.
Guias de instruções
Crie as redes, suando as seguintes instruções:
- Para criar as redes VPC regulares para as gVNICs, consulte Criar e gerenciar redes de nuvem privada virtual.
- Para criar a rede VPC do RoCE, consulte Criar uma rede de nuvem privada virtual para NICs RDMA.
Para essas redes VPC, recomendamos definir a
unidade máxima de transmissão (MTU) para um valor maior.
Para o tipo de máquina A4 ou A3 Ultra, o MTU recomendado é de 8896 bytes.
Para conferir as configurações de MTU recomendadas para outros tipos de máquina de GPU, consulte
Configurações de MTU para tipos de máquina de GPU.
Script
Crie as redes, seguindo estas etapas.
Para essas redes VPC, recomendamos definir a
unidade máxima de transmissão (MTU) para um valor maior.
Para o tipo de máquina A4 ou A3 Ultra, o MTU recomendado é de 8896 bytes.
Para conferir as configurações de MTU recomendadas para outros tipos de máquina de GPU, consulte
Configurações de MTU para tipos de máquina de GPU.
Use o script a seguir para criar redes VPC para as gVNICs e as NICs CX-7.
#!/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=10.$N.0.0/16 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=10.0.0.0/8 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_RANGE # 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 CX-7 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 7); do gcloud compute networks subnets create RDMA_NAME_PREFIX-mrdma-sub-$N \ --network=RDMA_NAME_PREFIX-mrdma \ --region=REGION \ --range=10.$((N+2)).0.0/16 # offset to avoid overlap with gVNICs doneSubstitua:
GVNIC_NAME_PREFIX: o prefixo de nome personalizado a ser usado para as redes e sub-redes VPC regulares das gVNICs.RDMA_NAME_PREFIX: o prefixo de nome personalizado a ser usado para a rede VPC e as sub-redes RoCE das NICs CX-7.ZONE: especifique uma zona em que o tipo de máquina que você quer usar esteja disponível, comous-central1-a. Para informações sobre regiões, consulte Disponibilidade de GPUs por regiões e zonas.REGION: a região em que você quer criar as sub-redes. Essa região precisa corresponder à zona especificada. Por exemplo, se a zona forus-central1-a, a região seráus-central1.IP_RANGE: o intervalo de IP a ser usado para as regras de firewall SSH.
- Opcional: para verificar se os recursos de rede VPC foram criados, confira as configurações de rede no console do Google Cloud :
- No console do Google Cloud , acesse a página Redes VPC.
- Pesquise na lista as redes que você criou na etapa anterior.
- Para conferir as sub-redes, regras de firewall e outras configurações de rede, clique no nome da rede.
Opcional: criar uma política de posicionamento compacto
É possível especificar o posicionamento de VMs criando uma política de posicionamento compacto. Quando você aplica uma política de posicionamento compacto às VMs, o Compute Engine faz o possível para criar VMs que estejam o mais próximas possível umas das outras. Se o aplicativo for sensível à latência e você quiser que as VMs fiquem mais próximas (compactação máxima), especifique o campo maxDistance (prévia) ao criar uma política de posicionamento compacto. Um valor de maxDistance menor garante um posicionamento mais próximo da VM, mas também aumenta a chance de algumas VMs não serem criadas.
gcloud
Para criar uma política de posicionamento compacto, use o
comando gcloud beta compute resource-policies create group-placement:
gcloud beta compute resource-policies create group-placement POLICY_NAME \
--collocation=collocated \
--max-distance=MAX_DISTANCE \
--region=REGION
Substitua:
POLICY_NAME: o nome da política de posicionamento compacto.MAX_DISTANCE: a configuração da distância máxima para suas VMs. O valor precisa ser3para colocar VMs em blocos adjacentes ou2para colocar VMs no mesmo bloco. Para informações sobre o número máximo de VMs compatíveis com cadamaxDistancepor série de máquinas, consulte Sobre as políticas de posicionamento compactas na documentação do Compute Engine.REGION: a região em que você quer criar a política de posicionamento compacto. Especifique uma região em que o tipo de máquina que você quer usar esteja disponível. Para informações sobre regiões, consulte Disponibilidade de GPUs por regiões e zonas.
REST
Para criar uma política de posicionamento compacto, faça uma solicitação POST para o
método resourcePolicies.insert
beta.
No corpo da solicitação, inclua o
campo collocation definido como COLLOCATED e o campo maxDistance.
POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/resourcePolicies
{
"name": "POLICY_NAME",
"groupPlacementPolicy": {
"collocation": "COLLOCATED",
"maxDistance": MAX_DISTANCE
}
}
Substitua:
PROJECT_ID: ID do projeto;POLICY_NAME: o nome da política de posicionamento compacto.MAX_DISTANCE: a configuração da distância máxima para suas VMs. O valor precisa ser3para colocar VMs em blocos adjacentes ou2para colocar VMs no mesmo bloco. Para informações sobre o número máximo de VMs compatíveis com cadamaxDistancepor série de máquinas, consulte Sobre as políticas de posicionamento compactas na documentação do Compute Engine.REGION: a região em que você quer criar a política de posicionamento compacto. Especifique uma região em que o tipo de máquina que você quer usar esteja disponível. Para informações sobre regiões, consulte Disponibilidade de GPUs por regiões e zonas.
Criar VMs A3 Ultra ou A4 em massa
Para criar VMs A3 Ultra ou A4 em massa, use um dos seguintes métodos.
Os comandos a seguir também definem o escopo de acesso para suas instâncias. Para simplificar o gerenciamento de permissões, o Google recomenda definir o escopo de acesso de uma instância comocloud-platform e usar papéis do IAM para definir a quais serviços a instância pode acessar. Para mais informações, consulte
Práticas recomendadas de escopos.
gcloud
Para criar VMs em massa, use o
comando gcloud compute instances bulk create.
Os parâmetros que você precisa especificar dependem da opção de consumo que está usando para essa implantação. Selecione a guia que corresponde ao modelo de provisionamento da sua opção de consumo.
Vinculada à reserva
Antes de executar o comando, adicione a flag para uma política de posicionamento compacta.
gcloud compute instances bulk create \
--name-pattern=NAME_PATTERN \
--count=COUNT \
--machine-type=MACHINE_TYPE \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT \
--region=REGION \
--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 \
--network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-4,no-address \
--network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-5,no-address \
--network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-6,no-address \
--network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-7,no-address \
--reservation-affinity=specific \
--reservation=RESERVATION \
--provisioning-model=RESERVATION_BOUND \
--instance-termination-action=TERMINATION_ACTION \
--maintenance-policy=TERMINATE \
--restart-on-failure
Siga estas etapas:
-
Substitua:
NAME_PATTERN: o padrão de nome das VMs. Por exemplo, usarvm-#para o padrão de nome gera VMs com nomes comovm-1evm-2, até o número de VMs especificado por--count.COUNT: o número de VMs a serem criadas.MACHINE_TYPE: o tipo de máquina a ser usado para a VM. Especifique um tipo de máquina A4 ou A3 Ultra. Para mais informações, consulte Tipos de máquinas com GPU.IMAGE_FAMILY: a família de imagens da imagem do SO que você quer usar. Para uma lista de sistemas operacionais compatíveis, consulte Sistemas operacionais compatíveis.IMAGE_PROJECT: o ID do projeto da imagem do SO.REGION: especifique uma região em que o tipo de máquina que você quer usar esteja disponível. Se você quiser especificar uma política de posicionamento compacto, use a mesma região da política. Para informações sobre regiões, consulte Disponibilidade de GPUs por regiões e zonas.DISK_SIZE: o tamanho do disco de inicialização em GB.GVNIC_NAME_PREFIX: o prefixo de nome especificado ao criar as redes e sub-redes VPC padrão que usam NICs gVNIC.RDMA_NAME_PREFIX: o prefixo de nome especificado ao criar as redes e sub-redes da VPC que usam NICs RDMA.-
RESERVATION: o nome da reserva ou um bloco específico dentro de uma reserva. Para conferir o nome da reserva ou os blocos disponíveis, consulte Visualizar a capacidade reservada. Com base na sua exigência de posicionamento de instâncias, escolha uma das seguintes opções:Para criar instâncias em vários blocos ou em um único bloco:
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME
Além disso, para um único bloco, aplique uma política de posicionamento compacto que especifica uma colocação de bloco (
maxDistance=2) . Em seguida, o Compute Engine aplica a política à reserva e cria instâncias no mesmo bloco.Para criar instâncias em um bloco específico:
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME/reservationBlocks/RESERVATION_BLOCK_NAME
TERMINATION_ACTION: se o Compute Engine interrompe (STOP) ou exclui (DELETE) a VM ao final do período de reserva.
-
Opcional: se você escolheu usar uma política de posicionamento compacto, adicione a seguinte flag ao comando:
--resource-policies=POLICY_NAME
Substitua:
POLICY_NAME: o nome da política de posicionamento compacto.
- Execute o comando.
Spot
Antes de executar o comando, adicione a flag para uma política de posicionamento compacta.
gcloud compute instances bulk create \
--name-pattern=NAME_PATTERN \
--count=COUNT \
--machine-type=MACHINE_TYPE \
--image-family=IMAGE_FAMILY \
--image-project=IMAGE_PROJECT \
--region=REGION \
--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 \
--network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-4,no-address \
--network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-5,no-address \
--network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-6,no-address \
--network-interface=nic-type=MRDMA,network=RDMA_NAME_PREFIX-mrdma,subnet=RDMA_NAME_PREFIX-mrdma-sub-7,no-address \
--provisioning-model=SPOT \
--instance-termination-action=TERMINATION_ACTION \
--maintenance-policy=TERMINATE \
--no-restart-on-failure
Siga estas etapas:
-
Substitua:
NAME_PATTERN: o padrão de nome das VMs. Por exemplo, usarvm-#para o padrão de nome gera VMs com nomes comovm-1evm-2, até o número de VMs especificado por--count.COUNT: o número de VMs a serem criadas.MACHINE_TYPE: o tipo de máquina a ser usado para a VM. Especifique um tipo de máquina A4 ou A3 Ultra. Para mais informações, consulte Tipos de máquinas com GPU.IMAGE_FAMILY: a família de imagens da imagem do SO que você quer usar. Para uma lista de sistemas operacionais compatíveis, consulte Sistemas operacionais compatíveis.IMAGE_PROJECT: o ID do projeto da imagem do SO.REGION: especifique uma região em que o tipo de máquina que você quer usar esteja disponível. Se você quiser especificar uma política de posicionamento compacto, use a mesma região da política. Para informações sobre regiões, consulte Disponibilidade de GPUs por regiões e zonas.DISK_SIZE: o tamanho do disco de inicialização em GB.GVNIC_NAME_PREFIX: o prefixo de nome especificado ao criar as redes e sub-redes VPC padrão que usam NICs gVNIC.RDMA_NAME_PREFIX: o prefixo de nome especificado ao criar as redes e sub-redes da VPC que usam NICs RDMA.TERMINATION_ACTION: a ação a ser realizada quando o Compute Engine forçar a interrupção da instância,STOP(padrão) ouDELETE.
-
Opcional: se você escolheu usar uma política de posicionamento compacto, adicione a seguinte flag ao comando:
--resource-policies=POLICY_NAME
Substitua:
POLICY_NAME: o nome da política de posicionamento compacto.
- Execute o comando.
REST
Para criar VMs em massa, faça uma solicitação POST para o
método instances.bulkInsert.
Os parâmetros que você precisa especificar dependem da opção de consumo que está usando para essa implantação. Selecione a guia que corresponde ao modelo de provisionamento da sua opção de consumo.
Vinculada à reserva
Antes de
enviar a solicitação, adicione opcionalmente o subcampo instanceProperties para uma
política de posicionamento compacto ao corpo
da solicitação.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/bulkInsert
{
"namePattern":"NAME_PATTERN",
"count":"COUNT",
"instanceProperties":{
"machineType":"MACHINE_TYPE",
"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"
},
{
"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-4"
},
{
"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-5"
},
{
"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-6"
},
{
"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-7"
}
],
"reservationAffinity":{
"consumeReservationType":"SPECIFIC_RESERVATION",
"key":"compute.googleapis.com/reservation-name",
"values":[
"RESERVATION"
]
},
"scheduling":{
"provisioningModel":"RESERVATION_BOUND",
"instanceTerminationAction":"DELETE",
"onHostMaintenance": "TERMINATE",
"automaticRestart":true
}
}
}
Siga estas etapas:
-
Substitua:
PROJECT_ID: o ID do projeto em que você quer criar a VM.ZONE: especifique uma zona em que o tipo de máquina que você quer usar esteja disponível. Se você quiser especificar uma política de posicionamento compacto, use uma zona na mesma região da política. Para informações sobre regiões, consulte Disponibilidade de GPUs por regiões e zonas.NAME_PATTERN: o padrão de nome das VMs. Por exemplo, usarvm-#para o padrão de nome gera VMs com nomes comovm-1evm-2, até o número de VMs especificado por--count.COUNT: o número de VMs a serem criadas.MACHINE_TYPE: o tipo de máquina a ser usado para a VM. Especifique um tipo de máquina A4 ou A3 Ultra. Para mais informações, consulte Tipos de máquinas com GPU.VM_NAME: o nome da VM.DISK_SIZE: o tamanho do disco de inicialização em GB.IMAGE_PROJECT: o ID do projeto da imagem do SO.IMAGE_FAMILY: a família de imagens da imagem do SO que você quer usar. Para uma lista de sistemas operacionais compatíveis, consulte Sistemas operacionais compatíveis.NETWORK_PROJECT_ID: o ID do projeto da rede.GVNIC_NAME_PREFIX: o prefixo de nome especificado ao criar as redes e sub-redes VPC padrão que usam NICs gVNIC.REGION: a região da sub-rede.RDMA_NAME_PREFIX: o prefixo de nome especificado ao criar as redes e sub-redes da VPC que usam NICs RDMA.-
RESERVATION: o nome da reserva ou um bloco específico dentro de uma reserva. Para conferir o nome da reserva ou os blocos disponíveis, consulte Visualizar a capacidade reservada. Com base na sua exigência de posicionamento de instâncias, escolha uma das seguintes opções:Para criar instâncias em vários blocos ou em um único bloco:
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME
Além disso, para um único bloco, aplique uma política de posicionamento compacto que especifica uma colocação de bloco (
maxDistance=2) . Em seguida, o Compute Engine aplica a política à reserva e cria instâncias no mesmo bloco.Para criar instâncias em um bloco específico:
projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME/reservationBlocks/RESERVATION_BLOCK_NAME
TERMINATION_ACTION: se o Compute Engine interrompe (STOP) ou exclui (DELETE) a VM ao final do período de reserva.
-
Opcional: se você escolheu usar uma política de posicionamento compacto, adicione o seguinte subcampo
instancePropertiesao corpo da solicitação:"resourcePolicies": [ "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME" ]Substitua:
PROJECT_ID: o ID do projeto da política de posicionamento compacto.REGION: a região da política de posicionamento compacto.POLICY_NAME: o nome da política de posicionamento compacto.
- Envie a solicitação.
Spot
Antes de
enviar a solicitação, adicione opcionalmente o subcampo instanceProperties para uma
política de posicionamento compacto ao corpo
da solicitação.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/bulkInsert
{
"namePattern":"NAME_PATTERN",
"count":"COUNT",
"instanceProperties":{
"machineType":"MACHINE_TYPE",
"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"
},
{
"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-4"
},
{
"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-5"
},
{
"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-6"
},
{
"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-7"
}
],
"scheduling":
{
"provisioningModel": "SPOT",
"instanceTerminationAction": "TERMINATION_ACTION",
"onHostMaintenance": "TERMINATE",
"automaticRestart": false
}
}
}
Siga estas etapas:
-
Substitua:
PROJECT_ID: o ID do projeto em que você quer criar a VM.ZONE: especifique uma zona em que o tipo de máquina que você quer usar esteja disponível. Se você quiser especificar uma política de posicionamento compacto, use uma zona na mesma região da política. Para informações sobre regiões, consulte Disponibilidade de GPUs por regiões e zonas.NAME_PATTERN: o padrão de nome das VMs. Por exemplo, usarvm-#para o padrão de nome gera VMs com nomes comovm-1evm-2, até o número de VMs especificado por--count.COUNT: o número de VMs a serem criadas.MACHINE_TYPE: o tipo de máquina a ser usado para a VM. Especifique um tipo de máquina A4 ou A3 Ultra. Para mais informações, consulte Tipos de máquinas com GPU.VM_NAME: o nome da VM.DISK_SIZE: o tamanho do disco de inicialização em GB.IMAGE_PROJECT: o ID do projeto da imagem do SO.IMAGE_FAMILY: a família de imagens da imagem do SO que você quer usar. Para uma lista de sistemas operacionais compatíveis, consulte Sistemas operacionais compatíveis.NETWORK_PROJECT_ID: o ID do projeto da rede.GVNIC_NAME_PREFIX: o prefixo de nome especificado ao criar as redes e sub-redes VPC padrão que usam NICs gVNIC.REGION: a região da sub-rede.RDMA_NAME_PREFIX: o prefixo de nome especificado ao criar as redes e sub-redes da VPC que usam NICs RDMA.TERMINATION_ACTION: a ação a ser realizada quando o Compute Engine forçar a interrupção da instância,STOP(padrão) ouDELETE.
-
Opcional: se você escolheu usar uma política de posicionamento compacto, adicione o seguinte subcampo
instancePropertiesao corpo da solicitação:"resourcePolicies": [ "projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME" ]Substitua:
PROJECT_ID: o ID do projeto da política de posicionamento compacto.REGION: a região da política de posicionamento compacto.POLICY_NAME: o nome da política de posicionamento compacto.
- Envie a solicitação.
Para mais informações sobre as opções de configuração ao criar VMs em massa, consulte Criar VMs em massa na documentação do Compute Engine.
A seguir
- Verificar o consumo de reserva
- Ver a topologia de uma instância de computação
- Visão geral da execução de cargas de trabalho
- Resolver problemas de consumo de reserva
Exceto em caso de indicação contrária, o conteúdo desta página é licenciado de acordo com a Licença de atribuição 4.0 do Creative Commons, e as amostras de código são licenciadas de acordo com a Licença Apache 2.0. Para mais detalhes, consulte as políticas do site do Google Developers. Java é uma marca registrada da Oracle e/ou afiliadas.
Última atualização 2026-02-24 UTC.