Crea un MIG ottimizzato per l'AI con A4X Max

Questo documento descrive come creare un gruppo di istanze gestite (MIG) che utilizza tipi di macchine ottimizzati per l'acceleratore A4X Max. Per scoprire di più sulle opzioni di creazione di istanze di calcolo e cluster, consulta la pagina Panoramica delle opzioni di deployment.

Tipo di istanza A4X Max

Un'istanza Compute Engine, o istanza di computing, è una risorsa di computing ospitata sull'infrastruttura di Google che può essere una macchina virtuale (VM) o un'istanza bare metal. Le istanze A4X Max sono disponibili come istanze bare metal, che differiscono dalle istanze VM in quanto forniscono accesso diretto e non virtualizzato all'hardware fisico sottostante. Per saperne di più sul tipo di macchina A4X Max, consulta Serie A4X Max nella documentazione di Compute Engine.

Crea un gruppo di istanze gestite se vuoi gestire più istanze A4X Max come singola entità. Per saperne di più sui MIG, consulta Gruppi di istanze gestite nella documentazione di Compute Engine.

Limitazioni

Quando utilizzi i tipi di macchina A4X Max per creare un MIG, si applicano le seguenti limitazioni:

  • Se crei un MIG regionale che utilizza il networking RDMA, il MIG può creare solo istanze A4X Max nella zona in cui hai configurato il profilo di rete per RDMA.

  • Non puoi configurare la flessibilità dell'istanza nel MIG.

  • Se applichi una policy del workload a un MIG, non puoi modificare la policy nel MIG quando il gruppo contiene istanze A4X Max. Per modificare il criterio, devi prima ridimensionare il MIG a zero.

  • Non puoi utilizzare un template di istanza che specifica una policy di posizionamento per creare un MIG che utilizza una policy del workload.

  • Devi utilizzare il modello di provisioning con prenotazione. Gli altri modelli di provisioning non sono supportati.

  • Non puoi utilizzare una richiesta di ridimensionamento per aggiungere istanze A4X Max al MIG. Devi impostare la dimensione target del MIG per aggiungere le istanze.

Prima di iniziare

Prima di creare un MIG, se non l'hai ancora fatto, completa i seguenti passaggi:

  1. Scegli un'opzione di consumo: l'opzione di consumo scelta determina come ottenere e utilizzare le risorse GPU.

    Per saperne di più, consulta la sezione Scegliere un'opzione di consumo.

  2. Ottenere capacità: la procedura per ottenere capacità varia a seconda dell'opzione di consumo.

    Per scoprire di più sulla procedura per ottenere la capacità per l'opzione di consumo scelta, consulta Panoramica della capacità.

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per creare un gruppo di istanze gestite, chiedi all'amministratore di concederti il ruolo IAM Compute Instance Admin (v1) (roles/compute.instanceAdmin.v1) nel progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.

Questo ruolo predefinito contiene le autorizzazioni necessarie per creare un gruppo di istanze gestite. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:

Autorizzazioni obbligatorie

Per creare un gruppo di istanze gestite sono necessarie le seguenti autorizzazioni:

  • Per creare un MIG: compute.instanceGroupManagers.create sul progetto

Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.

Nozioni di base di A4X Max

Un cluster A4X Max è organizzato in una gerarchia di blocchi e sottoblocchi per facilitare le prestazioni di rete non bloccanti su larga scala. Comprendere questa topologia è fondamentale quando si riserva la capacità e si eseguono il deployment dei workload.

Istanza A4X Max
Un'istanza A4X Max è un singolo tipo di macchina A4X Max a cui sono collegate 4 GPU.
Blocco secondario
Un sottoblocco è l'unità fondamentale della capacità di A4X Max. Per A4X Max, un sottoblocco è costituito da 18 istanze A4X Max (72 GPU); queste istanze formano un dominio NVLink e sono connesse utilizzando un sistema NVLink multi-nodo. Crea un sottoblocco A4X Max applicando una policy del workload che specifica una topologia 1x72.
Blocca
Un blocco A4X Max è composto da 25 blocchi secondari (domini NVLink), per un totale di 450 istanze A4X Max (1800 GPU). I sottoblocchi sono allineati alle guide per una scalabilità efficiente. Ogni sottoblocco richiede un MIG. Pertanto, per un singolo blocco A4X Max, puoi creare 25 MIG.

La tabella seguente mostra le opzioni di topologia supportate per le istanze A4X Max:

Topologia (acceleratorTopology) Numero di GPU Numero di istanze
1x72 72 18

Panoramica

La creazione di un MIG con il tipo di macchina A4X Max include i seguenti passaggi:

  1. Crea reti VPC
  2. Crea una policy del workload
  3. Crea un modello di istanza
  4. Crea un MIG

Crea reti VPC

Per configurare la rete per i tipi di macchina A4X Max, crea due reti VPC per le seguenti interfacce di rete:

  • Una rete VPC normale con due subnet per le interfacce di rete (NIC) IDPF. Vengono utilizzati per la comunicazione da host a host.
  • 1 rete VPC con il profilo di rete RoCE per le NIC CX-8 durante la creazione di più sottoblocchi A4X Max. La rete VPC RoCE utilizza una singola subnet denominata default-subnet-1-RDMA_NAME_PREFIX-net che viene fornita automaticamente e tutte le otto NIC CX-8 utilizzano questa subnet. Queste NIC utilizzano RDMA su Converged Ethernet (RoCE), fornendo la comunicazione a bassa latenza e ad alta larghezza di banda essenziale per lo scale out a più sottoblocchi A4X Max. Per un singolo sottoblocco A4X Max, puoi ignorare questa rete VPC perché all'interno di un singolo sottoblocco, la comunicazione diretta da GPU a GPU viene gestita da NVLink multimodale.

Per ulteriori informazioni sulla disposizione del NIC, consulta Controlla la larghezza di banda della rete e la disposizione del NIC.

Crea le reti manualmente seguendo le guide alle istruzioni o automaticamente utilizzando lo script fornito.

Guide con istruzioni

Per creare le reti, puoi utilizzare le seguenti istruzioni:

Per queste reti VPC, ti consigliamo di impostare l'unità massima di trasmissione (MTU) su un valore maggiore. Per i tipi di macchine A4X Max, l'MTU consigliata è di 8896 byte. Per esaminare le impostazioni MTU consigliate per altri tipi di macchine GPU, consulta Impostazioni MTU per i tipi di macchine GPU.

Script

Per creare le reti, segui questi passaggi.

Per queste reti VPC, ti consigliamo di impostare l'unità massima di trasmissione (MTU) su un valore maggiore. Per i tipi di macchine A4X Max, l'MTU consigliata è di 8896 byte. Per esaminare le impostazioni MTU consigliate per altri tipi di macchine GPU, consulta Impostazioni MTU per i tipi di macchine GPU.

  1. Utilizza il seguente script per creare reti VPC regolari per le NIC IDPF.

      
        #!/bin/bash
    
        # Create regular VPC network for the IDPF NICs
        gcloud compute networks create IDPF_NETWORK_PREFIX-net \
          --subnet-mode=custom \
          --mtu=8896 \
          --enable-ula-internal-ipv6
    
        # Create subnets for the IDPF NICs
        for N in $(seq 0 1); do
          gcloud compute networks subnets create IDPF_NETWORK_PREFIX-$N \
            --network=IDPF_NETWORK_PREFIX-net \
            --region=REGION \
            --stack-type=IPV6_ONLY \
            --ipv6-access-type=INTERNAL
        done
    
        gcloud compute firewall-rules create IDPF_NETWORK_PREFIX-internal \
          --network=IDPF_NETWORK_PREFIX-net \
          --action=ALLOW \
          --rules=tcp:0-65535,udp:0-65535,58 \
          --source-ranges=IP_RANGE
    
    
      
  2. Se hai bisogno di più sottoblocchi A4X Max, utilizza il seguente script per creare la rete VPC RoCE e le subnet per le quattro NIC CX-8 su ogni istanza A4X Max.

      
        #!/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-net \
          --network-profile=ZONE-vpc-roce-metal \
          --subnet-mode custom \
          --mtu=8896
    
        # For RoCE VPC networks for bare metal instances, a single subnet named
        # default-subnet-1-RDMA_NAME_PREFIX-net is automatically provided.
        # For more details, see https://cloud.google.com/vpc/docs/rdma-network-profiles.
    
      

    Sostituisci quanto segue:

    • IDPF_NETWORK_PREFIX: il prefisso del nome personalizzato da utilizzare per le reti VPC e le subnet regolari per le NIC IDPF.
    • RDMA_NAME_PREFIX: il prefisso del nome personalizzato da utilizzare per la rete VPC e le subnet RoCE per le NIC CX-8.
    • ZONE: specifica una zona in cui è disponibile il tipo di macchina che vuoi utilizzare, ad esempio us-central1-a. Per informazioni sulle regioni, consulta la sezione Disponibilità delle GPU per regioni e zone.
    • REGION: la regione in cui vuoi creare le subnet. Questa regione deve corrispondere alla zona specificata. Ad esempio, se la tua zona è us-central1-a, la tua regione è us-central1.
    • IP_RANGE: l'intervallo IP da utilizzare per le regole firewall SSH.
  3. (Facoltativo) Per verificare che le risorse di rete VPC siano state create correttamente, controlla le impostazioni di rete nella console Google Cloud :
    1. Nella console Google Cloud , vai alla pagina Reti VPC.

      Vai a Reti VPC

    2. Cerca nell'elenco le reti che hai creato nel passaggio precedente.
    3. Per visualizzare le subnet, le regole firewall e altre impostazioni di rete, fai clic sul nome della rete.

Crea una policy del workload

Non puoi aggiornare una policy del workload dopo averla creata. Per apportare modifiche a un criterio del workload, devi crearne uno nuovo.

Per creare una policy del workload, seleziona una delle seguenti opzioni:

gcloud

Per creare una policy del carico di lavoro, utilizza il comando gcloud compute resource-policies create workload-policy.

Per la configurazione di rete tra gli acceleratori, specifica il flag --accelerator-topology nel comando.

Utilizza il seguente comando per il tipo di macchina A4X Max. La topologia dell'acceleratore di 1x72 indica 72 GPU connesse tramite NVLink all'interno di un blocco.

gcloud compute resource-policies create workload-policy WORKLOAD_POLICY_NAME \
    --type=high-throughput \
    --accelerator-topology=1x72 \
    --region=REGION

Sostituisci quanto segue:

  • WORKLOAD_POLICY_NAME: il nome della policy del workload.
  • REGION: la regione in cui vuoi creare la policy del workload. Specifica una regione in cui vuoi creare il MIG e il tipo di macchina che vuoi utilizzare è disponibile. Per informazioni sulle regioni, consulta la sezione Disponibilità delle GPU per regioni e zone.

REST

Per creare una policy del workload, invia una richiesta POST al metodo resourcePolicies.insert.

Per la configurazione di rete tra gli acceleratori, specifica il campo acceleratorTopology nella richiesta.

Esegui la seguente richiesta per il tipo di macchina A4X Max. La topologia dell'acceleratore di 1x72 indica 72 GPU collegate tramite NVLink all'interno di un blocco.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies
  {
    "name": "WORKLOAD_POLICY_NAME"
    "workloadPolicy": {
      "type": "HIGH_THROUGHPUT",
      "acceleratorTopology": "1x72"
    }
  }

Sostituisci quanto segue:

  • PROJECT_ID: il tuo ID progetto
  • REGION: la regione in cui vuoi creare la policy del workload. Specifica una regione in cui vuoi creare il MIG e il tipo di macchina che vuoi utilizzare è disponibile. Per informazioni sulle regioni, vedi Disponibilità delle GPU per regioni e zone.
  • WORKLOAD_POLICY_NAME: il nome della policy del workload.

Crea un modello di istanza

Specifica le proprietà dell'istanza per un MIG creando un modello di istanza.

Per creare un modello di istanza, seleziona una delle seguenti opzioni.

I seguenti comandi impostano anche l'ambito di accesso per le tue istanze. Per semplificare la gestione delle autorizzazioni, Google consiglia di impostare l'ambito di accesso di un'istanza sull'accesso cloud-platform e poi utilizzare i ruoli IAM per definire i servizi a cui l'istanza può accedere. Per saperne di più, consulta le best practice per gli ambiti.

gcloud

Per creare un template di istanza regionale, utilizza il comando gcloud compute instance-templates create.

gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
    --machine-type=a4x-maxgpu-4g-metal \
    --image-family=IMAGE_FAMILY \
    --image-project=IMAGE_PROJECT \
    --instance-template-region=REGION \
    --boot-disk-type=hyperdisk-balanced \
    --boot-disk-size=DISK_SIZE \
    --scopes=cloud-platform \
    --network-interface=nic-type=IDPF,network=IDPF_NETWORK_PREFIX-net,stack-type=IPV6_ONLY,subnet=IDPF_NETWORK_PREFIX-sub-0 \
    --network-interface=nic-type=IDPF,network=IDPF_NETWORK_PREFIX-net,stack-type=IPV6_ONLY,subnet=IDPF_NETWORK_PREFIX-sub-1,no-address \
    --network-interface=subnet=default-subnet-1-RDMA_NAME_PREFIX-net,stack-type=IPV6_ONLY,nic-type=mrdma \
    --network-interface=subnet=default-subnet-1-RDMA_NAME_PREFIX-net,stack-type=IPV6_ONLY,nic-type=mrdma \
    --network-interface=subnet=default-subnet-1-RDMA_NAME_PREFIX-net,stack-type=IPV6_ONLY,nic-type=mrdma \
    --network-interface=subnet=default-subnet-1-RDMA_NAME_PREFIX-net,stack-type=IPV6_ONLY,nic-type=mrdma \
    --network-interface=subnet=default-subnet-1-RDMA_NAME_PREFIX-net,stack-type=IPV6_ONLY,nic-type=mrdma \
    --network-interface=subnet=default-subnet-1-RDMA_NAME_PREFIX-net,stack-type=IPV6_ONLY,nic-type=mrdma \
    --network-interface=subnet=default-subnet-1-RDMA_NAME_PREFIX-net,stack-type=IPV6_ONLY,nic-type=mrdma \
    --network-interface=subnet=default-subnet-1-RDMA_NAME_PREFIX-net,stack-type=IPV6_ONLY,nic-type=mrdma \
    --reservation-affinity=specific \
    --reservation=RESERVATION \
    --provisioning-model=RESERVATION_BOUND \
    --instance-termination-action=DELETE \
    --maintenance-policy=TERMINATE \
    --restart-on-failure

Sostituisci quanto segue:

  • INSTANCE_TEMPLATE_NAME: il nome del modello di istanza.
  • IMAGE_FAMILY: la famiglia di immagini dell'immagine del sistema operativo che vuoi utilizzare. Per un elenco dei sistemi operativi supportati, consulta Sistemi operativi supportati.
  • IMAGE_PROJECT: l'ID progetto dell'immagine del sistema operativo.
  • REGION: la regione in cui vuoi creare il template di istanza. Specifica una regione in cui è disponibile il tipo di macchina che vuoi utilizzare. Per informazioni sulle regioni, consulta la sezione Disponibilità delle GPU per regioni e zone.
  • DISK_SIZE: le dimensioni del disco di avvio in GB.
  • IDPF_NETWORK_PREFIX: il prefisso del nome che hai specificato durante la creazione delle reti VPC e delle subnet che utilizzano NIC IDPF.
  • RDMA_NAME_PREFIX: il prefisso del nome che hai specificato durante la creazione delle reti VPC e delle subnet che utilizzano NIC RDMA.
  • RESERVATION: il nome della prenotazione, di un blocco o di un sottoblocco all'interno di una prenotazione. Per ottenere il nome della prenotazione o i blocchi disponibili, vedi Visualizzare la capacità riservata. In base ai tuoi requisiti per il posizionamento delle istanze, scegli una delle seguenti opzioni:
    • Per creare istanze A4X Max su un singolo blocco:
          projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME
          
    • Per creare istanze A4X Max su un blocco specifico:
          projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME/reservationBlocks/RESERVATION_BLOCK_NAME
          
    • Per creare istanze A4X Max in un sub-blocco specifico:
          projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME/reservationBlocks/RESERVATION_BLOCK_NAME/reservationSubBlocks/RESERVATION_SUBBLOCK_NAME
          

REST

Per creare un template di istanza regionale, effettua una richiesta POST al metodo regionInstanceTemplates.insert.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceTemplates
{
  "name":"INSTANCE_TEMPLATE_NAME",
  "properties":{
    "machineType":"a4x-maxgpu-4g-metal",
    "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/IDPF_NETWORK_PREFIX-net",
      "nicType": "IDPF",
      "stackType": "IPV6_ONLY",
      "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/IDPF_NETWORK_PREFIX-sub-0"
    },
    {
      "network": "projects/NETWORK_PROJECT_ID/global/networks/IDPF_NETWORK_PREFIX-net",
      "nicType": "IDPF",
      "stackType": "IPV6_ONLY",
      "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/IDPF_NETWORK_PREFIX-sub-1"
    },
    {
      "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/default-subnet-1-RDMA_NAME_PREFIX-net",
      "nicType": "MRDMA",
      "stackType": "IPV6_ONLY"
    },
    {
      "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/default-subnet-1-RDMA_NAME_PREFIX-net",
      "nicType": "MRDMA",
      "stackType": "IPV6_ONLY"
    },
    {
      "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/default-subnet-1-RDMA_NAME_PREFIX-net",
      "nicType": "MRDMA",
      "stackType": "IPV6_ONLY"
    },
    {
      "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/default-subnet-1-RDMA_NAME_PREFIX-net",
      "nicType": "MRDMA",
      "stackType": "IPV6_ONLY"
    },
    {
      "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/default-subnet-1-RDMA_NAME_PREFIX-net",
      "nicType": "MRDMA",
      "stackType": "IPV6_ONLY"
    },
    {
      "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/default-subnet-1-RDMA_NAME_PREFIX-net",
      "nicType": "MRDMA",
      "stackType": "IPV6_ONLY"
    },
    {
      "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/default-subnet-1-RDMA_NAME_PREFIX-net",
      "nicType": "MRDMA",
      "stackType": "IPV6_ONLY"
    },
    {
      "subnetwork": "projects/NETWORK_PROJECT_ID/region/REGION/subnetworks/default-subnet-1-RDMA_NAME_PREFIX-net",
      "nicType": "MRDMA",
      "stackType": "IPV6_ONLY"
    }
  ],
    "reservationAffinity":{
        "consumeReservationType":"SPECIFIC_RESERVATION",
        "key":"compute.googleapis.com/reservation-name",
        "values":[
          "RESERVATION"
        ]
      },
    "scheduling":{
        "provisioningModel":"RESERVATION_BOUND",
        "instanceTerminationAction":"DELETE",
        "onHostMaintenance": "TERMINATE",
        "automaticRestart":true
      }
  }
}

Sostituisci quanto segue:

  • INSTANCE_TEMPLATE_NAME: il nome del modello di istanza.
  • IMAGE_FAMILY: la famiglia di immagini dell'immagine del sistema operativo che vuoi utilizzare. Per un elenco dei sistemi operativi supportati, consulta Sistemi operativi supportati.
  • IMAGE_PROJECT: l'ID progetto dell'immagine del sistema operativo.
  • REGION: la regione in cui vuoi creare il template di istanza. Specifica una regione in cui è disponibile il tipo di macchina che vuoi utilizzare. Per informazioni sulle regioni, vedi Disponibilità delle GPU per regioni e zone.
  • DISK_SIZE: le dimensioni del disco di avvio in GB.
  • NETWORK_PROJECT_ID: l'ID progetto della rete.
  • IDPF_NETWORK_PREFIX: il prefisso del nome specificato durante la creazione delle reti VPC e delle subnet che utilizzano NIC IDPF.
  • REGION: la regione della subnet.
  • RDMA_NAME_PREFIX: il prefisso del nome che hai specificato durante la creazione delle reti VPC e delle subnet che utilizzano NIC RDMA.
  • RESERVATION: il nome della prenotazione, di un blocco o di un sottoblocco all'interno di una prenotazione. Per ottenere il nome della prenotazione o i blocchi disponibili, vedi Visualizzare la capacità riservata. In base ai tuoi requisiti per il posizionamento delle istanze, scegli una delle seguenti opzioni:
    • Per creare istanze A4X Max su un singolo blocco:
          projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME
          
    • Per creare istanze A4X Max su un blocco specifico:
          projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME/reservationBlocks/RESERVATION_BLOCK_NAME
          
    • Per creare istanze A4X Max in un sub-blocco specifico:
          projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME/reservationBlocks/RESERVATION_BLOCK_NAME/reservationSubBlocks/RESERVATION_SUBBLOCK_NAME
          

Crea un MIG

Quando crei un MIG utilizzando il tipo di macchina A4X Max, specifica il numero di istanze utilizzando le dimensioni di destinazione del MIG. Puoi impostare le dimensioni target durante la creazione del MIG sul numero richiesto di istanze o iniziare da zero e aumentarlo in un secondo momento. Tieni presente che non puoi utilizzare le richieste di ridimensionamento per aggiungere istanze a un gruppo di istanze gestite A4X Max.

Per ottenere una topologia GPU di 1x72, crea un MIG con 18 istanze A4X Max. Quando crei il MIG, applica la policy di workload che specifica il campo acceleratorTopology. L'applicazione del criterio garantisce che Compute Engine crei tutte le 18 istanze A4X Max in un unico sottoblocco per utilizzare un dominio NVLink. Se un sottoblocco non ha capacità per tutte le 18 istanze, qualsiasi istanza gestita che non può essere creata immediatamente rimarrà nello stato CREATING finché la capacità non diventa disponibile. Queste istanze gestite rappresentano le istanze di calcolo create dal MIG quando è disponibile capacità.

Quando applichi una policy del workload con il campo acceleratorTopology impostato su 1x72, non puoi creare più di 18 istanze A4X Max in un MIG. Se specifichi più di 18 istanze, la creazione del MIG non riesce. Per creare più domini NVLink, crea un MIG separato per ogni dominio e applica gli stessi criteri del workload a ogni MIG.

Per creare un MIG, seleziona una delle seguenti opzioni:

gcloud

Per creare un MIG con una dimensione target specificata, utilizza il comando instance-groups managed create.

Crea un gruppo di istanze gestite a livello di zona o di regione nel seguente modo:

  • Per creare un gruppo di istanze gestite a livello di zona, utilizza il seguente comando:
    gcloud compute instance-groups managed create MIG_NAME \
      --template=INSTANCE_TEMPLATE_URL \
      --size=TARGET_SIZE \
      --workload-policy=WORKLOAD_POLICY_URL \
      --zone=ZONE
    
  • Per creare un gruppo di istanze gestite a livello di regione, utilizza il seguente comando:
    gcloud compute instance-groups managed create MIG_NAME \
        --template=INSTANCE_TEMPLATE_URL \
        --size=TARGET_SIZE \
        --workload-policy=WORKLOAD_POLICY_URL \
        --region=REGION
    
Sostituisci quanto segue:
  • MIG_NAME: il nome del MIG.
  • INSTANCE_TEMPLATE_URL: l'URL del modello di istanza che vuoi utilizzare per creare istanze nel MIG. L'URL può contenere l'ID o il nome del modello di istanza. Specifica uno dei seguenti valori:
    • Per un template di istanza regionale: projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID
    • Per un template di istanza globale: INSTANCE_TEMPLATE_ID
  • TARGET_SIZE: il numero di istanze che vuoi nel MIG.
  • WORKLOAD_POLICY_URL: (facoltativo) l'URL della policy del workload. Ad esempio, projects/example-project/regions/us-central1/resourcePolicies/example-workload-policy. Se non vuoi utilizzare una policy del workload, puoi rimuovere il flag --workload-policy.
  • ZONE: la zona in cui vuoi creare il MIG. Se utilizzi una policy del carico di lavoro, specifica una zona all'interno della regione della policy.
  • REGION: la regione in cui vuoi creare il MIG. Se utilizzi una policy di workload, specifica la stessa regione della policy. Per un MIG a livello di regione, anziché una regione, puoi specificare le zone in quella regione utilizzando il flag --zones.

REST

Per creare un MIG con una dimensione target specificata, invia una richiesta POST.

Crea un gruppo di istanze gestite a livello di zona o di regione nel seguente modo:

  • Per creare un gruppo di istanze gestite a livello di zona, invia una richiesta POST al metodo instanceGroupManagers.insert.
    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers
    {
      "versions": [
        {
          "instanceTemplate": "INSTANCE_TEMPLATE_URL"
        }
      ],
      "name": "MIG_NAME",
      "instanceTemplate": "INSTANCE_TEMPLATE_URL",
      "targetSize": "TARGET_SIZE",
      "resourcePolicies": {
        "workloadPolicy": WORKLOAD_POLICY_URL
      }
    }
    
  • Per creare un MIG a livello di regione, invia una richiesta POST al metodo regionInstanceGroupManagers.insert.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers
      {
        "versions": [
          {
            "instanceTemplate": "INSTANCE_TEMPLATE_URL"
          }
        ],
        "name": "MIG_NAME",
        "instanceTemplate": "INSTANCE_TEMPLATE_URL",
        "targetSize": "TARGET_SIZE",
        "resourcePolicies": {
          "workloadPolicy": WORKLOAD_POLICY_URL
        }
      }
    
Sostituisci quanto segue:
  • PROJECT_ID: l'ID progetto
  • ZONE: la zona in cui vuoi creare il MIG. Specifica una zona all'interno della regione della policy del workload.
  • REGION: la regione in cui vuoi creare il MIG. Specifica la stessa regione della policy del workload.
  • INSTANCE_TEMPLATE_URL: l'URL del modello di istanza che vuoi utilizzare per creare istanze nel MIG. L'URL può contenere l'ID o il nome del modello di istanza. Specifica uno dei seguenti valori:
    • Per un template di istanza regionale: projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID
    • Per un template di istanza globale: INSTANCE_TEMPLATE_ID
  • MIG_NAME: il nome del MIG.
  • TARGET_SIZE: il numero di istanze che vuoi nel MIG.
  • WORKLOAD_POLICY_URL: (facoltativo) l'URL della policy del workload. Ad esempio, projects/example-project/regions/us-central1/resourcePolicies/example-workload-policy.

Passaggi successivi