Criar VMs A2 otimizadas para IA em massa

Neste documento, explicamos como criar instâncias de máquina virtual (VM) em massa que usam a série A2, que inclui os tipos de máquina A2 Ultra ou A2 Standard. Para saber mais sobre esses tipos de máquinas otimizadas para aceleradores, consulte Série A2.

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 A2 Ultra ou A2 Standard em massa, as seguintes limitações se aplicam:

A2 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 A2 ultra.
  • Você só pode usar um tipo de máquina A2 ultra em determinadas regiões e zonas.
  • Os tipos de máquina A2 ultra só estão disponíveis na plataforma Cascade Lake.
  • Se a instância usa um tipo de máquina ultra A2, não é possível mudar o tipo de máquina. Se você precisar usar outro tipo de máquina ultra A2 ou qualquer outro tipo de máquina, crie uma nova instância.
  • Não é possível trocar nenhum tipo de máquina por um tipo de máquina A2 ultra. Se você precisar de uma instância que use um tipo de máquina A2 Ultra, crie uma nova instância.
  • Não é possível fazer um formato rápido dos SSDs locais anexados em instâncias do Windows que usam tipos de máquina A2 ultra. Para formatar esses SSDs locais, é preciso usar o utilitário diskpart e especificar format fs=ntfs label=tmpfs.

A2 Padrão

  • 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 A2 padrão.
  • Só é possível usar um tipo de máquina padrão A2 em determinadas regiões e zonas.
  • Os tipos de máquina A2 padrão só estão disponíveis na plataforma Cascade Lake.
  • Se a instância usa um tipo de máquina padrão A2, só é possível trocar esse tipo A2 padrão por outro tipo A2 padrão. Não é possível mudar para outro tipo de máquina. Para mais informações, consulte Modificar instâncias otimizadas para aceleradores.
  • Não é possível usar o sistema operacional Windows com o tipo de máquina a2-megagpu-16g. Ao usar um sistema operacional Windows, escolha um tipo de máquina padrão A2 diferente.
  • Não é possível fazer um formato rápido dos SSDs locais anexados em instâncias do Windows que usam tipos de máquina padrão A2. Para formatar esses SSDs locais, é preciso usar o utilitário diskpart e especificar format fs=ntfs label=tmpfs.

Se você quiser usar uma política de posicionamento compacta, consulte as restrições para políticas de posicionamento.

Antes de começar

Antes de criar VMs em massa, siga estas etapas, caso ainda não tenha feito isso:

  1. Escolha uma opção de consumo: sua escolha determina como você recebe e usa os recursos de GPU. Para saber mais, consulte Escolher uma opção de consumo.
  2. 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.

Selecione a guia para como planeja usar as amostras nesta página:

Console

Quando você usa o console Google Cloud para acessar serviços Google Cloud e APIs, não é necessário configurar a autenticação.

gcloud

No console do Google Cloud , ative o Cloud Shell.

Ativar o Cloud Shell

Na parte de baixo do console Google Cloud , uma sessão do Cloud Shell é iniciada e exibe um prompt de linha de comando. O Cloud Shell é um ambiente shell com a CLI do Google Cloud já instalada e com valores já definidos para o projeto atual. A inicialização da sessão pode levar alguns segundos.

REST

Para usar as amostras da API REST nesta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para a CLI gcloud.

    Instale a CLI do Google Cloud.

    Ao usar um provedor de identidade (IdP) externo, primeiro faça login na CLI gcloud 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.create no projeto
  • Usar uma imagem personalizada para criar a VM: compute.images.useReadOnly na imagem
  • Usar um snapshot para criar a VM: compute.snapshots.useReadOnly no snapshot
  • Usar um modelo de instância para criar a VM: compute.instanceTemplates.useReadOnly no modelo de instância
  • Especificar uma sub-rede para a VM: compute.subnetworks.use no projeto ou na sub-rede escolhida
  • Especificar um endereço IP estático para a VM: compute.addresses.use no projeto
  • Atribuir um endereço IP externo à VM ao usar uma rede VPC: compute.subnetworks.useExternalIp no projeto ou na sub-rede escolhida
  • Atribuir uma rede legada à VM: compute.networks.use no projeto
  • Atribuir um endereço IP externo à VM usando uma rede legada: compute.networks.useExternalIp no projeto
  • Definir os metadados da instância de VM para a VM: compute.instances.setMetadata no projeto
  • Definir tags para a VM: compute.instances.setTags na VM
  • Definir rótulos para a VM: compute.instances.setLabels na VM
  • Definir uma conta de serviço a ser usada pela VM: compute.instances.setServiceAccount na VM
  • Criar um disco para a VM: compute.disks.create no projeto
  • Anexar um disco atual no modo somente leitura ou de leitura e gravação: compute.disks.use no disco
  • Anexar um disco atual no modo somente leitura: compute.disks.useReadOnly no 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 A2 inclui as seguintes etapas:

  1. Opcional: criar uma política de posicionamento compacto
  2. Criar instâncias em massa
  3. Instalar os drivers da GPU
  4. Opcional: Ativar o modo de GPU NVIDIA com várias instâncias

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 exigir compactação máxima, especifique o campo maxDistance (Prévia) ao criar uma política de posicionamento compacto. Um valor menor de maxDistance garante um posicionamento mais próximo da VM, mas também aumenta a chance de algumas VMs não serem criadas.

Para criar uma política de posicionamento compacto, selecione uma das seguintes opções:

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, que pode ser especificada (Pré-lançamento, recomendado) ou não especificada (remova a flag --max-distance). Verifique se a configuração de distância máxima é compatível com a série de máquinas e o número de VMs que você planeja criar. Para mais informações, consulte Sobre as políticas de posicionamento compacto na documentação do Compute Engine. Por exemplo, uma distância máxima de 3 coloca as VMs em blocos adjacentes, e 2 coloca as VMs no mesmo bloco.
  • REGION: a região em que você quer criar a política de posicionamento compacto. Especifique a região que contém a zona em que você planeja criar instâncias e verifique se o tipo de máquina que você quer usar está disponível nessa região. 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: o 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, que pode ser especificada (prévia, recomendado) ou não especificada (remova o campo maxDistance). Verifique se a configuração de distância máxima é compatível com a série de máquinas e o número de VMs que você planeja criar. Para mais informações, consulte Sobre as políticas de posicionamento compacto na documentação do Compute Engine. Por exemplo, uma distância máxima de 3 coloca as VMs em blocos adjacentes, e 2 coloca as VMs no mesmo bloco.
  • REGION: a região em que você quer criar a política de posicionamento compacto. Especifique a região que contém a zona em que você planeja criar instâncias e verifique se o tipo de máquina que você quer usar está disponível nessa região. Para informações sobre regiões, consulte Disponibilidade de GPUs por regiões e zonas.

Criar VMs A2 em massa

Para criar uma VM A2, use um dos seguintes métodos.

Os comandos a seguir também definem o escopo de acesso das suas instâncias. Para simplificar o gerenciamento de permissões, o Google recomenda definir o escopo de acesso de uma instância como cloud-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 instâncias 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 à sua opção de consumo.

Reserva

As instâncias A2 oferecem suporte aos seguintes tipos de reservas:

  • Reservas imediatas
  • Reservas adiantadas padrão

Para consumir esses tipos de reservas, uma instância precisa usar o modelo de provisionamento padrão. Por exemplo, use os seguintes parâmetros de criação.

Antes de executar o comando, revise todas as etapas a seguir para determinar se é necessário incluir flags adicionais.

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=DISK_TYPE \
    --boot-disk-size=DISK_SIZE \
    --scopes=cloud-platform \
    --provisioning-model=STANDARD \
    --maintenance-policy=TERMINATE \
    --reservation-affinity=RESERVATION_AFFINITY \
    --reservation=RESERVATION

Siga estas etapas:

  1. Substitua:

    • NAME_PATTERN: o padrão de nome a ser usado para as instâncias A2. Por exemplo, usar instance-# para o padrão de nome gera instâncias A2 com nomes como instance-1 e instance-2, até o número de instâncias A2 especificadas por --count.
    • COUNT: o número de instâncias A2 a serem criadas.
    • MACHINE_TYPE: o tipo de máquina a ser usado para a instância A2. Para mais informações, consulte Tipos de máquinas com GPU na documentação do Compute Engine.
    • IMAGE_FAMILY: a família de imagens da imagem do SO que você quer usar. Para uma lista de todos os 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_TYPE: o tipo do disco de inicialização. Para mais informações sobre os tipos de disco compatíveis com seu tipo de máquina, consulte Máquinas com GPU na família de máquinas otimizadas para aceleradores na documentação do Compute Engine.
    • DISK_SIZE: o tamanho do disco de inicialização em GB. Para mais informações, consulte Limites de tamanho do Google Cloud Hyperdisk ou Limites de tamanho do Persistent Disk com base no tipo de disco.
    • RESERVATION_AFFINITY: quais reservas a instância pode consumir, se possível. Especifique uma destas opções:

      • any (a capacidade de reserva é opcional): essa é a opção padrão. A instância tenta usar a capacidade de uma reserva consumida automaticamente, o que só acontece se a capacidade da reserva correspondente estiver disponível. Caso contrário, a instância usa capacidade sob demanda.

      • specific (é necessário ter capacidade de reserva): exige que a instância use a capacidade de uma reserva segmentada especificamente. A instância não pode usar a capacidade on demand. Se a capacidade da reserva não estiver disponível, a criação da instância vai falhar.

    • RESERVATION: a reserva a ser usada. Especifique uma das seguintes opções com base no valor especificado para RESERVATION_AFFINITY:

      • Se você especificou any, substitua RESERVATION por uma string vazia (""). Como alternativa, remova a flag --reservation por completo.
      • Se você especificou specific, substitua RESERVATION pelo seguinte:

        projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME

        Substitua:

        • RESERVATION_OWNER_PROJECT_ID: o ID do projeto em que a reserva foi criada.
        • RESERVATION_NAME: o nome da reserva.
  2. Por padrão, a instância é reiniciada automaticamente se falhar ou se o Compute Engine a interromper para uma interrupção programada, como um evento de manutenção. Se você quiser desativar a reinicialização automática, adicione a seguinte flag:

    --no-restart-on-failure
  3. 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.
  4. Opcional: se você especificou um tipo de máquina A2 padrão e quer anexar discos SSD locais, adicione a seguinte flag --local-ssd para cada disco SSD local.

    Verifique se o número de discos SSD locais anexados é permitido para seu tipo de máquina. Para mais detalhes, consulte Sobre os discos SSD locais na documentação do Compute Engine.

    --local-ssd interface=INTERFACE_TYPE
    

    Substitua:

    • INTERFACE_TYPE: o tipo de interface do disco que você quer usar para o disco SSD local. Se a imagem do disco de inicialização tiver drivers NVMe otimizados, especifique NVME. Especifique SCSI para outras imagens.

    Depois de criar uma VM com discos SSD locais, formate e ative cada dispositivo antes de usá-lo.

  5. Execute o comando.

Sob demanda

Antes de executar o comando, revise todas as etapas a seguir para determinar se é necessário incluir flags adicionais.

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=DISK_TYPE \
    --boot-disk-size=DISK_SIZE \
    --scopes=cloud-platform \
    --provisioning-model=STANDARD \
    --maintenance-policy=TERMINATE \
    --reservation-affinity=RESERVATION_AFFINITY

Siga estas etapas:

  1. Substitua:

    • NAME_PATTERN: o padrão de nome a ser usado para as instâncias A2. Por exemplo, usar instance-# para o padrão de nome gera instâncias A2 com nomes como instance-1 e instance-2, até o número de instâncias A2 especificadas por --count.
    • COUNT: o número de instâncias A2 a serem criadas.
    • MACHINE_TYPE: o tipo de máquina a ser usado para a instância A2. Para mais informações, consulte Tipos de máquinas com GPU na documentação do Compute Engine.
    • IMAGE_FAMILY: a família de imagens da imagem do SO que você quer usar. Para uma lista de todos os 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_TYPE: o tipo do disco de inicialização. Para mais informações sobre os tipos de disco compatíveis com seu tipo de máquina, consulte Máquinas com GPU na família de máquinas otimizadas para aceleradores na documentação do Compute Engine.
    • DISK_SIZE: o tamanho do disco de inicialização em GB. Para mais informações, consulte Limites de tamanho do Google Cloud Hyperdisk ou Limites de tamanho do Persistent Disk com base no tipo de disco.
    • RESERVATION_AFFINITY: quais reservas a instância pode consumir, se possível. Especifique uma destas opções:

      • any (a capacidade de reserva é opcional): essa é a opção padrão. A instância tenta usar a capacidade de uma reserva consumida automaticamente, o que só acontece se a capacidade da reserva correspondente estiver disponível. Caso contrário, a instância usa capacidade sob demanda.

      • none (capacidade sob demanda obrigatória): impede que a instância use qualquer capacidade de reserva.

  2. Por padrão, a instância é reiniciada automaticamente se falhar ou se o Compute Engine a interromper para uma interrupção programada, como um evento de manutenção. Se você quiser desativar a reinicialização automática, adicione a seguinte flag:

    --no-restart-on-failure
  3. 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.
  4. Opcional: se você especificou um tipo de máquina A2 padrão e quer anexar discos SSD locais, adicione a seguinte flag --local-ssd para cada disco SSD local.

    Verifique se o número de discos SSD locais anexados é permitido para seu tipo de máquina. Para mais detalhes, consulte Sobre os discos SSD locais na documentação do Compute Engine.

    --local-ssd interface=INTERFACE_TYPE
    

    Substitua:

    • INTERFACE_TYPE: o tipo de interface do disco que você quer usar para o disco SSD local. Se a imagem do disco de inicialização tiver drivers NVMe otimizados, especifique NVME. Especifique SCSI para outras imagens.

    Depois de criar uma VM com discos SSD locais, formate e ative cada dispositivo antes de usá-lo.

  5. Execute o comando.

Spot

Antes de executar o comando, revise todas as etapas a seguir para determinar se é necessário incluir flags adicionais.

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=DISK_TYPE \
    --boot-disk-size=DISK_SIZE \
    --scopes=cloud-platform \
    --provisioning-model=SPOT \
    --instance-termination-action=TERMINATION_ACTION \
    --maintenance-policy=TERMINATE \
    --no-restart-on-failure

Siga estas etapas:

  1. Substitua:

    • NAME_PATTERN: o padrão de nome a ser usado para as instâncias A2. Por exemplo, usar instance-# para o padrão de nome gera instâncias A2 com nomes como instance-1 e instance-2, até o número de instâncias A2 especificadas por --count.
    • COUNT: o número de instâncias A2 a serem criadas.
    • MACHINE_TYPE: o tipo de máquina a ser usado para a instância A2. Para mais informações, consulte Tipos de máquinas com GPU na documentação do Compute Engine.
    • IMAGE_FAMILY: a família de imagens da imagem do SO que você quer usar. Para uma lista de todos os 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_TYPE: o tipo do disco de inicialização. Para mais informações sobre os tipos de disco compatíveis com seu tipo de máquina, consulte Máquinas com GPU na família de máquinas otimizadas para aceleradores na documentação do Compute Engine.
    • DISK_SIZE: o tamanho do disco de inicialização em GB. Para mais informações, consulte Limites de tamanho do Google Cloud Hyperdisk ou Limites de tamanho do Persistent Disk com base no tipo de disco.
    • TERMINATION_ACTION: a ação a ser realizada quando o Compute Engine forçar a interrupção da instância, STOP (padrão) ou DELETE.

  2. 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.
  3. Opcional: se você especificou um tipo de máquina A2 padrão e quer anexar discos SSD locais, adicione a seguinte flag --local-ssd para cada disco SSD local.

    Verifique se o número de discos SSD locais anexados é permitido para seu tipo de máquina. Para mais detalhes, consulte Sobre os discos SSD locais na documentação do Compute Engine.

    --local-ssd interface=INTERFACE_TYPE
    

    Substitua:

    • INTERFACE_TYPE: o tipo de interface do disco que você quer usar para o disco SSD local. Se a imagem do disco de inicialização tiver drivers NVMe otimizados, especifique NVME. Especifique SCSI para outras imagens.

    Depois de criar uma VM com discos SSD locais, formate e ative cada dispositivo antes de usá-lo.

  4. Execute o comando.

REST

Para criar instâncias 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 à sua opção de consumo.

Reserva

As instâncias A2 oferecem suporte aos seguintes tipos de reservas:

  • Reservas imediatas
  • Reservas adiantadas padrão

Para consumir esses tipos de reservas, uma instância precisa usar o modelo de provisionamento padrão. Por exemplo, use os seguintes parâmetros de criação.

Antes de enviar a solicitação, revise todas as etapas a seguir para determinar se é necessário incluir outros campos.

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": "DISK_TYPE",
          "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"
        ]
      }
    ],
    "scheduling": {
    "provisioningModel": "STANDARD",
    "onHostMaintenance": "TERMINATE",
    "automaticRestart": AUTOMATIC_RESTART
  },
  "reservationAffinity": {
    "consumeReservationType": "RESERVATION_AFFINITY",
    "key": "compute.googleapis.com/reservation-name",
    "values": [
      "RESERVATION"
    ]
  }
  }
}

Siga estas etapas:

  1. Substitua:

    • PROJECT_ID: o ID do projeto em que você quer criar a instância A2.
    • 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 a ser usado para as instâncias A2. Por exemplo, usar instance-# para o padrão de nome gera instâncias A2 com nomes como instance-1 e instance-2, até o número de instâncias A2 especificadas por --count.
    • COUNT: o número de instâncias A2 a serem criadas.
    • MACHINE_TYPE: o tipo de máquina a ser usado para a instância A2. Para mais informações, consulte Tipos de máquinas com GPU na documentação do Compute Engine.
    • DISK_SIZE: o tamanho do disco de inicialização em GB. Para mais informações, consulte Limites de tamanho do Google Cloud Hyperdisk ou Limites de tamanho do Persistent Disk com base no tipo de disco.
    • DISK_TYPE: o tipo do disco de inicialização. Para mais informações sobre os tipos de disco compatíveis com seu tipo de máquina, consulte Máquinas com GPU na família de máquinas otimizadas para aceleradores na documentação do Compute Engine.
    • 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 todos os sistemas operacionais compatíveis, consulte Sistemas operacionais compatíveis.
    • AUTOMATIC_RESTART: se a instância for reiniciada automaticamente em caso de falha ou se o Compute Engine a interromper para uma interrupção programada, como um evento de manutenção. Especifique true para ativar a reinicialização automática (padrão) ou false para desativá-la.

    • RESERVATION_AFFINITY: quais reservas a instância pode consumir, se possível. Especifique uma destas opções:

      • ANY_RESERVATION (a capacidade de reserva é opcional): essa é a opção padrão. A instância tenta usar a capacidade de uma reserva consumida automaticamente, o que só acontece se a capacidade da reserva correspondente estiver disponível. Caso contrário, a instância usa a capacidade sob demanda.

      • SPECIFIC_RESERVATION (é necessário ter capacidade de reserva): exige que a instância use a capacidade de uma reserva segmentada especificamente. A instância não pode usar a capacidade on demand. Se a capacidade da reserva não estiver disponível, a criação da instância vai falhar.

    • RESERVATION: a reserva a ser usada. Especifique uma das seguintes opções com base no valor especificado para RESERVATION_AFFINITY:

      • Se você especificou ANY_RESERVATION, exclua RESERVATION para que o valor seja uma string vazia (""). Outra opção é remover os campos key e values por completo.
      • Se você especificou SPECIFIC_RESERVATION, substitua RESERVATION pelo seguinte:

        projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME

        Substitua:

        • RESERVATION_OWNER_PROJECT_ID: o ID do projeto em que a reserva foi criada.
        • RESERVATION_NAME: o nome da reserva.
  2. Opcional: se você escolheu usar uma política de posicionamento compacta, adicione o seguinte subcampo instanceProperties ao 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.
  3. Opcional: se você especificou um tipo de máquina padrão A2 e quer anexar discos SSD locais, adicione o campo a seguir ao campo disks[] para cada disco SSD local. Separe cada subcampo disks[] (incluindo o disco de inicialização) com uma vírgula.

    Verifique se o número de discos SSD locais anexados é permitido para seu tipo de máquina. Para mais detalhes, consulte Sobre os discos SSD locais na documentação do Compute Engine.

        {
           "type": "SCRATCH",
           "initializeParams": {
              "diskType": "zones/ZONE/diskTypes/local-ssd"
           },
           "autoDelete": true,
           "interface": "INTERFACE_TYPE"
        }
    

    Substitua:

    • ZONE: a zona especificada.
    • INTERFACE_TYPE: o tipo de interface do disco que você quer usar para o disco SSD local. Se a imagem do disco de inicialização tiver drivers NVMe otimizados, especifique NVME. Especifique SCSI para outras imagens.

    Depois de criar uma VM com discos SSD locais, formate e ative cada dispositivo antes de usá-lo.

  4. Envie a solicitação.

Sob demanda

Antes de enviar a solicitação, revise todas as etapas a seguir para determinar se é necessário incluir outros campos.

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": "DISK_TYPE",
          "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"
        ]
      }
    ],
    "scheduling": {
    "provisioningModel": "STANDARD",
    "onHostMaintenance": "TERMINATE",
    "automaticRestart": AUTOMATIC_RESTART
  },
  "reservationAffinity": {
    "consumeReservationType": "RESERVATION_AFFINITY"
  }
  }
}

Siga estas etapas:

  1. Substitua:

    • PROJECT_ID: o ID do projeto em que você quer criar a instância A2.
    • 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 a ser usado para as instâncias A2. Por exemplo, usar instance-# para o padrão de nome gera instâncias A2 com nomes como instance-1 e instance-2, até o número de instâncias A2 especificadas por --count.
    • COUNT: o número de instâncias A2 a serem criadas.
    • MACHINE_TYPE: o tipo de máquina a ser usado para a instância A2. Para mais informações, consulte Tipos de máquinas com GPU na documentação do Compute Engine.
    • DISK_SIZE: o tamanho do disco de inicialização em GB. Para mais informações, consulte Limites de tamanho do Google Cloud Hyperdisk ou Limites de tamanho do Persistent Disk com base no tipo de disco.
    • DISK_TYPE: o tipo do disco de inicialização. Para mais informações sobre os tipos de disco compatíveis com seu tipo de máquina, consulte Máquinas com GPU na família de máquinas otimizadas para aceleradores na documentação do Compute Engine.
    • 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 todos os sistemas operacionais compatíveis, consulte Sistemas operacionais compatíveis.
    • AUTOMATIC_RESTART: se a instância for reiniciada automaticamente em caso de falha ou se o Compute Engine a interromper para uma interrupção programada, como um evento de manutenção. Especifique true para ativar a reinicialização automática (padrão) ou false para desativá-la.

    • RESERVATION_AFFINITY: quais reservas a instância pode consumir, se possível. Especifique uma destas opções:

      • ANY_RESERVATION (a capacidade de reserva é opcional): essa é a opção padrão. A instância tenta usar a capacidade de uma reserva consumida automaticamente, o que só acontece se a capacidade da reserva correspondente estiver disponível. Caso contrário, a instância usa a capacidade sob demanda.

      • NO_RESERVATION (capacidade sob demanda obrigatória): impede que a instância use qualquer capacidade de reserva.

  2. Opcional: se você escolheu usar uma política de posicionamento compacta, adicione o seguinte subcampo instanceProperties ao 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.
  3. Opcional: se você especificou um tipo de máquina padrão A2 e quer anexar discos SSD locais, adicione o campo a seguir ao campo disks[] para cada disco SSD local. Separe cada subcampo disks[] (incluindo o disco de inicialização) com uma vírgula.

    Verifique se o número de discos SSD locais anexados é permitido para seu tipo de máquina. Para mais detalhes, consulte Sobre os discos SSD locais na documentação do Compute Engine.

        {
           "type": "SCRATCH",
           "initializeParams": {
              "diskType": "zones/ZONE/diskTypes/local-ssd"
           },
           "autoDelete": true,
           "interface": "INTERFACE_TYPE"
        }
    

    Substitua:

    • ZONE: a zona especificada.
    • INTERFACE_TYPE: o tipo de interface do disco que você quer usar para o disco SSD local. Se a imagem do disco de inicialização tiver drivers NVMe otimizados, especifique NVME. Especifique SCSI para outras imagens.

    Depois de criar uma VM com discos SSD locais, formate e ative cada dispositivo antes de usá-lo.

  4. Envie a solicitação.

Spot

Antes de enviar a solicitação, revise todas as etapas a seguir para determinar se é necessário incluir outros campos.

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": "DISK_TYPE",
          "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"
        ]
      }
    ],
    "scheduling":
    {
      "provisioningModel": "SPOT",
      "instanceTerminationAction": "TERMINATION_ACTION",
      "onHostMaintenance": "TERMINATE",
      "automaticRestart": false
    }
  }
}

Siga estas etapas:

  1. Substitua:

    • PROJECT_ID: o ID do projeto em que você quer criar a instância A2.
    • 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 a ser usado para as instâncias A2. Por exemplo, usar instance-# para o padrão de nome gera instâncias A2 com nomes como instance-1 e instance-2, até o número de instâncias A2 especificadas por --count.
    • COUNT: o número de instâncias A2 a serem criadas.
    • MACHINE_TYPE: o tipo de máquina a ser usado para a instância A2. Para mais informações, consulte Tipos de máquinas com GPU na documentação do Compute Engine.
    • DISK_SIZE: o tamanho do disco de inicialização em GB. Para mais informações, consulte Limites de tamanho do Google Cloud Hyperdisk ou Limites de tamanho do Persistent Disk com base no tipo de disco.
    • DISK_TYPE: o tipo do disco de inicialização. Para mais informações sobre os tipos de disco compatíveis com seu tipo de máquina, consulte Máquinas com GPU na família de máquinas otimizadas para aceleradores na documentação do Compute Engine.
    • 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 todos os sistemas operacionais compatíveis, consulte Sistemas operacionais compatíveis.
    • TERMINATION_ACTION: a ação a ser realizada quando o Compute Engine forçar a interrupção da instância, STOP (padrão) ou DELETE.

  2. Opcional: se você escolheu usar uma política de posicionamento compacta, adicione o seguinte subcampo instanceProperties ao 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.
  3. Opcional: se você especificou um tipo de máquina padrão A2 e quer anexar discos SSD locais, adicione o campo a seguir ao campo disks[] para cada disco SSD local. Separe cada subcampo disks[] (incluindo o disco de inicialização) com uma vírgula.

    Verifique se o número de discos SSD locais anexados é permitido para seu tipo de máquina. Para mais detalhes, consulte Sobre os discos SSD locais na documentação do Compute Engine.

        {
           "type": "SCRATCH",
           "initializeParams": {
              "diskType": "zones/ZONE/diskTypes/local-ssd"
           },
           "autoDelete": true,
           "interface": "INTERFACE_TYPE"
        }
    

    Substitua:

    • ZONE: a zona especificada.
    • INTERFACE_TYPE: o tipo de interface do disco que você quer usar para o disco SSD local. Se a imagem do disco de inicialização tiver drivers NVMe otimizados, especifique NVME. Especifique SCSI para outras imagens.

    Depois de criar uma VM com discos SSD locais, formate e ative cada dispositivo antes de usá-lo.

  4. 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.

Instalar os drivers da GPU

Depois de criar uma instância, ela não poderá usar as GPUs, a menos que os drivers corretos já estejam instalados. Se você não especificou uma imagem do SO que inclui drivers de GPU, consulte Instalar drivers de GPU na documentação do Compute Engine.

Opcional: ativar o modo de GPU de várias instâncias da NVIDIA

O modo de GPU de várias instâncias (MIG) é um recurso que pode ser ativado em uma GPU NVIDIA compatível. Depois de criar uma instância, é possível ativar o modo MIG em uma única GPU anexada à sua máquina. Com o modo MIG ativado, a única GPU é particionada em até sete instâncias de GPU independentes. Cada instância é executada simultaneamente, cada uma com a própria memória, cache e multiprocessadores de streaming. Depois, é possível executar diferentes cargas de trabalho nessas instâncias de GPU em paralelo. Para mais informações sobre o uso do modo MIG, consulte o Guia do usuário de GPU de várias instâncias (MIG) na documentação da NVIDIA.

A seguir