Crie uma VM que use o modelo associado à reserva

Este documento explica como criar uma instância de máquina virtual (VM) autónoma através do modelo de aprovisionamento associado à reserva. Este modelo de aprovisionamento permite-lhe criar VMs A4X, A4 ou A3 Ultra consumindo capacidade pré-reservada.

Para outros métodos de criação de VMs através do modelo de aprovisionamento associado a reservas, consulte a vista geral das opções de implementação na documentação do AI Hypercomputer.

Antes de começar

  • Se ainda não o tiver feito, configure a autenticação. A autenticação valida a sua identidade para aceder a Google Cloud serviços e APIs. Para executar código ou exemplos a partir de um ambiente de desenvolvimento local, pode autenticar-se no Compute Engine selecionando uma das seguintes opções:

    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

    1. Instale a CLI Google Cloud. Após a instalação, inicialize a CLI gcloud executando o seguinte comando:

      gcloud init

      Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro tem de iniciar sessão na CLI gcloud com a sua identidade federada.

    2. Set a default region and zone.

    REST

    Para usar os exemplos da API REST nesta página num ambiente de desenvolvimento local, usa as credenciais que fornece à CLI gcloud.

      Instale a CLI Google Cloud. Após a instalação, inicialize a CLI gcloud executando o seguinte comando:

      gcloud init

      Se estiver a usar um fornecedor de identidade (IdP) externo, primeiro tem de iniciar sessão na CLI gcloud com a sua identidade federada.

    Para mais informações, consulte o artigo Autenticar para usar REST na Google Cloud documentação de autenticação.

Funções necessárias

Para receber as autorizações de que precisa para criar VMs através do modelo de aprovisionamento associado a reservas, peça ao seu administrador para lhe conceder a função IAM Administrador de instâncias do Compute (v1) (roles/compute.instanceAdmin.v1) no projeto. Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.

Esta função predefinida contém as autorizações necessárias para criar VMs através do modelo de aprovisionamento associado a reservas. Para ver as autorizações exatas que são necessárias, expanda a secção Autorizações necessárias:

Autorizações necessárias

As seguintes autorizações são necessárias para criar VMs através do modelo de aprovisionamento associado a reservas:

  • compute.instances.create no projeto
  • Para usar uma imagem personalizada para criar a VM: compute.images.useReadOnly na imagem
  • Para usar um instantâneo para criar a VM: compute.snapshots.useReadOnly no instantâneo
  • Para usar um modelo de instância para criar a VM: compute.instanceTemplates.useReadOnly no modelo de instância
  • Para especificar uma sub-rede para a sua VM: compute.subnetworks.use no projeto ou na sub-rede escolhida
  • Para especificar um endereço IP estático para a VM: compute.addresses.use no projeto
  • Para atribuir um endereço IP externo à VM quando usar uma rede VPC: compute.subnetworks.useExternalIp no projeto ou na sub-rede escolhida
  • Para atribuir uma rede antiga à VM: compute.networks.use no projeto
  • Para atribuir um endereço IP externo à VM quando usar uma rede antiga: compute.networks.useExternalIp no projeto
  • Para definir os metadados da instância de VM para a VM: compute.instances.setMetadata no projeto
  • Para definir etiquetas para a VM: compute.instances.setTags na VM
  • Para definir etiquetas para a VM: compute.instances.setLabels na VM
  • Para definir uma conta de serviço para a VM usar: compute.instances.setServiceAccount na VM
  • Para criar um novo disco para a VM: compute.disks.create no projeto
  • Para anexar um disco existente no modo de leitura ou leitura/escrita: compute.disks.use no disco
  • Para anexar um disco existente no modo de leitura: compute.disks.useReadOnly no disco

Também pode conseguir estas autorizações com funções personalizadas ou outras funções predefinidas.

Crie uma VM que use o modelo de aprovisionamento associado à reserva

Para criar uma VM A4X, A4 ou A3 Ultra através do modelo de aprovisionamento associado a reservas, tem de aguardar até que a reserva automática que quer usar atinja a respetiva hora de início. Além disso, a MV que pretende criar tem de cumprir todos os seguintes requisitos:

O exemplo seguinte cria um pedido de reserva futuro no modo de calendário para cinco VMs A3 Ultra e, em seguida, cria uma VM A3 Ultra consumindo a reserva criada automaticamente para o pedido.

Para criar uma VM de exemplo através do modelo de aprovisionamento associado a reservas, selecione uma das seguintes opções:

Consola

  1. Crie um pedido de exemplo para cinco VMs A3 Ultra e envie-o para revisão:

    1. Na Google Cloud consola, aceda à página Reservas.

      Aceda a Reservas

    2. Clique no separador Reservas futuras.

    3. Clique em Criar reserva futura. É apresentada a página Crie uma reserva futura.

    4. Na secção Configuração de hardware, selecione Especificar tipo de máquina e, em seguida, especifique uma instância A3 Ultra.

    5. Na secção Método de obtenção, conclua os seguintes passos:

      1. Selecione Pesquisar capacidade durante um período máximo de 90 dias.

      2. Nas listas Região e Zona, especifique a região e a zona onde reservar recursos. Para este exemplo, selecione us-central1 e us-central1-a, respetivamente.

      3. No campo Capacidade total necessária, introduza 5.

      4. Na secção Período de reserva, especifique o período de reserva para a reserva.

    6. Especifique os restantes campos e, de seguida, clique em Enviar.

  2. À hora de início do pedido, para criar uma VM A3 Ultra para consumir a reserva criada automaticamente de exemplo, faça o seguinte:

    1. Na Google Cloud consola, aceda à página Criar uma instância.

      Aceda a Criar uma instância

    2. No campo Nome, introduza um nome para a VM. Para este exemplo, introduza example-vm.

    3. Especifique a Região e a Zona onde quer reservar recursos. Para este exemplo, selecione us-central1 e us-central1-a, respetivamente.

    4. Clique no separador GPUs e, de seguida, na lista Tipo de GPU, selecione NVIDIA H200 141 GB. Esta ação especifica uma VM A3 Ultra e define o modelo de aprovisionamento como Reservation-bound.

    5. No menu de navegação, clique em Avançadas.

    6. Na secção Reservas, selecione Escolher uma reserva e, de seguida, clique em Escolher uma reserva.

    7. No painel Escolha uma reserva, faça o seguinte:

      1. Selecione uma reserva específica. Se quiser consumir uma reserva partilhada que exista num projeto diferente, na lista Projeto, selecione o projeto no qual a reserva existe.

      2. Clique em Escolher.

    8. Na secção Modelo de aprovisionamento, expanda a secção Definições avançadas do modelo de aprovisionamento de VMs.

    9. Na lista No encerramento da VM, selecione Parar (predefinição) ou Eliminar.

    10. Clique em Criar.

gcloud

  1. Para criar um pedido de exemplo de cinco VMs A3 Ultra e enviá-lo para revisão, use o comando gcloud beta compute future-reservations create:

    gcloud beta compute future-reservations create example-fr \
        --auto-delete-auto-created-reservations \
        --deployment-type=DENSE \
        --planning-status=SUBMITTED \
        --require-specific-reservation \
        --reservation-mode=CALENDAR \
        --reservation-name=example-reservation \
        --share-type=local \
        --start-time=2025-10-05T00:00:00Z \
        --end-time=2025-10-19T00:00:00Z \
        --machine-type=a3-ultragpu-8g \
        --total-count=5 \
        --zone=us-central1-a
    

    Suponha que Google Cloud aprova o pedido e o Compute Engine cria automaticamente uma reserva vazia. Na hora de início do pedido, a 5 de outubro de 2025, o Compute Engine aumenta o número de VMs de GPU reservadas na reserva. Em seguida, pode usar a reserva.

  2. Na hora de início do pedido, para criar uma VM A3 Ultra para consumir a reserva criada automaticamente de exemplo, use o comando gcloud compute instances create com as seguintes flags:

    • A bandeira de --instance-termination-action.

    • A flag --provisioning-model está definida como RESERVATION_BOUND.

    • A bandeira de --reservation.

    • A flag --reservation-affinity está definida como specific.

    O comando é semelhante ao seguinte. Para ver os requisitos completos para criar uma VM A3 Ultra, consulte o artigo Crie uma instância A3 Ultra ou A4.

    gcloud compute instance create example-vm  \
        --machine-type=a3-ultragpu-8g \
        --instance-termination-action=TERMINATION_ACTION \
        --provisioning-model=RESERVATION_BOUND \
        --reservation-affinity=specific \
        --reservation=RESERVATION_URL \
        --zone=us-central1-a \
        ...
    

    O comando inclui os seguintes valores:

    • TERMINATION_ACTION: se o Compute Engine para (STOP) ou elimina (DELETE) a VM no final do período de reserva.

    • RESERVATION_URL: o URL da reserva, que está formatado da seguinte forma:

      • Se a reserva criada automaticamente existir no seu projeto: example-reservation.

      • Se a reserva criada automaticamente existir num projeto diferente: projects/PROJECT_ID/reservations/example-reservation.

REST

  1. Para criar um pedido de exemplo de cinco VMs A3 Ultra e enviá-lo para revisão, faça um pedido POST ao método beta futureReservations.insert:

    POST https://compute.googleapis.com/compute/beta/projects/example-project/zones/us-central1-a/futureReservations
    
    {
      "name": "example-request-calendar-mode",
      "autoDeleteAutoCreatedReservations": true,
      "deploymentType": "DENSE",
      "planningStatus": "SUBMITTED",
      "reservationMode": "CALENDAR",
      "reservationName": "example-reservation",
      "shareSettings": {
        "shareType": "LOCAL"
      },
      "specificReservationRequired": true,
      "specificSkuProperties": {
        "machineType": "a3-ultragpu-8g",
        "totalCount": 5
      },
      "timeWindow": {
        "startTime": "2025-10-05T00:00:00Z",
        "endTime": "2025-10-19T00:00:00Z"
      }
    }
    

    Suponha que Google Cloud aprova o pedido e o Compute Engine cria automaticamente uma reserva vazia. Na hora de início do pedido, a 5 de outubro de 2025, o Compute Engine aumenta o número de VMs de GPU reservadas na reserva. Em seguida, pode usar a reserva.

  2. À hora de início do pedido, para criar uma VM A3 Ultra para consumir a reserva criada automaticamente de exemplo, faça um pedido POST para o método instances.insert. No corpo do pedido, inclua os seguintes campos:

    • O campo reservationAffinity.consumeReservationType está definido como SPECIFIC_RESERVATION.

    • O campo reservationAffinity.key está definido como compute.googleapis.com/reservation-name.

    • O campo reservationAffinity.values está definido como o URL da reserva.

    • O campo scheduling.instanceTerminationAction.

    • O campo scheduling.provisioningModel está definido como RESERVATION_BOUND.

    O pedido é semelhante ao seguinte. Para ver os requisitos completos para criar uma VM A3 Ultra, consulte o artigo Crie uma instância A3 Ultra ou A4.

    POST https://compute.googleapis.com/compute/beta/projects/example-project/zones/us-central1-a/instances
    
    {
      {
        "machineType": "projects/example-project/zones/us-central1-a/machineTypes/a3-ultragpu-8g",
        "name": "example-vm",
        "reservationAffinity": {
          "consumeReservationType": "SPECIFIC_RESERVATION",
          "key": "compute.googleapis.com/reservation-name",
          "values":[
            "RESERVATION_URL"
          ],
        },
        "scheduling": {
          "instanceTerminationAction": "TERMINATION_ACTION",
          "provisioningModel": "RESERVATION_BOUND"
        },
        ...
      }
    }
    

    O corpo do pedido inclui os seguintes valores:

    • RESERVATION_URL: o URL da reserva, que está formatado da seguinte forma:

      • Se a reserva criada automaticamente existir no seu projeto: example-reservation.

      • Se a reserva criada automaticamente existir num projeto diferente: projects/PROJECT_ID/reservations/example-reservation.

    • TERMINATION_ACTION: se o Compute Engine para (STOP) ou elimina (DELETE) a VM no final do período de reserva.

O que se segue?

Experimente

Se está a usar o Google Cloud pela primeira vez, crie uma conta para avaliar o desempenho do Compute Engine em cenários reais. Os novos clientes também recebem 300 USD em créditos gratuitos para executar, testar e implementar cargas de trabalho.

Experimente o Compute Engine gratuitamente