Crea un MIG N1 ottimizzato per l'AI con GPU

Questo documento descrive come creare un gruppo di istanze gestite (MIG) che utilizza la serie N1 con GPU collegate. Per saperne di più su questi tipi di macchine, consulta Serie N1.

La creazione di un MIG ti consente di gestire più macchine virtuali (VM) come singola entità. Ogni VM in un MIG si basa su un template di istanza. Gestendo automaticamente le VM nel gruppo, i MIG offrono alta affidabilità e scalabilità. Per scoprire di più sui MIG, consulta Gruppi di istanze gestite nella documentazione di Compute Engine.

Per scoprire altri modi per creare VM o cluster, vedi Panoramica delle opzioni di deployment.

Limitazioni

Quando crei un MIG con VM N1 con GPU, tieni presente le limitazioni per il tipo di macchina e il MIG.

Limitazioni per le VM N1 con GPU

Per le limitazioni che si applicano ai tipi di macchine N1 con GPU, consulta quanto segue:

Limitazioni per il MIG

Prima di iniziare

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

  1. Scegli un'opzione di consumo: la tua scelta determina come ottenere e utilizzare le risorse GPU. Per saperne di più, consulta 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.

Panoramica

La creazione di un MIG con il tipo di macchina N1 con GPU T4 o V100 include i seguenti passaggi:

  1. Crea un modello di istanza
  2. Crea un MIG
  3. Installa i driver della GPU

Crea un template di istanza

Specifica le proprietà della VM 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 su 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.

I parametri da specificare dipendono dall'opzione di consumo che utilizzi per questo deployment. Seleziona la scheda corrispondente all'opzione di consumo.

Prenotazione

Le istanze N1 con GPU T4 o V100 supportano i seguenti tipi di prenotazioni:

  • Prenotazioni on demand
  • Prenotazioni future standard

Per utilizzare questi tipi di prenotazioni, un'istanza deve utilizzare il modello di provisioning standard. Ad esempio, utilizza i seguenti parametri di creazione.

Prima di eseguire il comando, esamina tutti i passaggi seguenti per determinare se includere flag aggiuntivi.

gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
    --machine-type=MACHINE_TYPE \
    --accelerator=type=ACCELERATOR_TYPE,count=ACCELERATOR_COUNT \
    --image-family=IMAGE_FAMILY \
    --image-project=IMAGE_PROJECT \
    --instance-template-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

Completa i seguenti passaggi:

  1. Sostituisci quanto segue:

    • INSTANCE_TEMPLATE_NAME: il nome del template di istanza.
    • MACHINE_TYPE: il tipo di macchina da utilizzare per l'istanza N1 con GPU T4 o V100. Per saperne di più, consulta Tipi di macchine GPU nella documentazione di Compute Engine.
    • ACCELERATOR_COUNT: il numero di GPU che vuoi collegare alla VM N1. Per un elenco dei limiti delle GPU in base al tipo di macchina della VM, consulta le informazioni sulle GPU N1 nella documentazione di Compute Engine.
    • ACCELERATOR_TYPE: il tipo di acceleratore per le VM N1 che vuoi utilizzare. Per i carichi di lavoro di AI, ti consigliamo di utilizzare GPU T4 o V100.
    • IMAGE_FAMILY: la famiglia di immagini dell'immagine del sistema operativo che vuoi utilizzare. Per un elenco di tutti i sistemi operativi supportati, vedi 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_TYPE: il tipo di disco di avvio. Per saperne di più sui tipi di dischi supportati per il tuo tipo di macchina, consulta Macchine GPU nella famiglia di macchine ottimizzate per l'acceleratore nella documentazione di Compute Engine.
    • DISK_SIZE: le dimensioni del disco di avvio in GB. Per ulteriori informazioni, consulta Limiti di dimensioni di Google Cloud Hyperdisk o Limiti di dimensioni di Persistent Disk in base al tipo di disco.
    • RESERVATION_AFFINITY: le prenotazioni che l'istanza può utilizzare, se possibile. Specifica una delle seguenti opzioni:

      • any (la capacità di prenotazione è facoltativa): questa è l'opzione predefinita. L'istanza tenta di utilizzare la capacità di una prenotazione consumata automaticamente, il che si verifica solo se è disponibile la capacità di prenotazione corrispondente. In caso contrario, l'istanza utilizza la capacità on demand.

      • specific (è richiesta la capacità di prenotazione): richiede che l'istanza utilizzi la capacità di una prenotazione con target specifico. L'istanza non è autorizzata a utilizzare la capacità on demand. Se la capacità di prenotazione non è disponibile, la creazione dell'istanza non riesce.

    • RESERVATION: la prenotazione da utilizzare. Specifica uno dei seguenti valori in base al valore specificato per RESERVATION_AFFINITY:

      • Se hai specificato any, sostituisci RESERVATION con una stringa vuota (""). In alternativa, puoi rimuovere completamente il flag --reservation.
      • Se hai specificato specific, sostituisci RESERVATION con quanto segue:

        projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME

        Sostituisci quanto segue:

        • RESERVATION_OWNER_PROJECT_ID: l'ID progetto del progetto in cui è stata creata la prenotazione.
        • RESERVATION_NAME: il nome della prenotazione.
  2. Per impostazione predefinita, l'istanza viene riavviata automaticamente in caso di arresto anomalo o se Compute Engine la arresta per un arresto programmato, ad esempio un evento di manutenzione. Se vuoi disattivare il riavvio automatico, aggiungi il seguente flag:

    --no-restart-on-failure
  3. (Facoltativo) Per collegare dischi SSD locali, aggiungi il seguente flag --local-ssd per ogni disco SSD locale.

    Assicurati che il numero di dischi SSD locali che colleghi sia consentito per il tuo tipo di macchina. Per i dettagli, consulta Informazioni sui dischi SSD locali nella documentazione di Compute Engine.

    --local-ssd interface=INTERFACE_TYPE
    

    Sostituisci quanto segue:

    • INTERFACE_TYPE: il tipo di interfaccia del disco che vuoi utilizzare per il disco SSD locale. Se l'immagine del disco di avvio ha driver NVMe ottimizzati, specifica NVME. Specifica SCSI per le altre immagini.

    Dopo aver creato una VM con dischi SSD locali, per poterla utilizzare devi prima formattare e montare ogni dispositivo.

  4. Esegui il comando.

On demand

Prima di eseguire il comando, esamina tutti i passaggi seguenti per determinare se includere flag aggiuntivi.

gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
    --machine-type=MACHINE_TYPE \
    --accelerator=type=ACCELERATOR_TYPE,count=ACCELERATOR_COUNT \
    --image-family=IMAGE_FAMILY \
    --image-project=IMAGE_PROJECT \
    --instance-template-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

Completa i seguenti passaggi:

  1. Sostituisci quanto segue:

    • INSTANCE_TEMPLATE_NAME: il nome del template di istanza.
    • MACHINE_TYPE: il tipo di macchina da utilizzare per l'istanza N1 con GPU T4 o V100. Per saperne di più, consulta Tipi di macchine GPU nella documentazione di Compute Engine.
    • ACCELERATOR_COUNT: il numero di GPU che vuoi collegare alla VM N1. Per un elenco dei limiti delle GPU in base al tipo di macchina della VM, consulta le informazioni sulle GPU N1 nella documentazione di Compute Engine.
    • ACCELERATOR_TYPE: il tipo di acceleratore per le VM N1 che vuoi utilizzare. Per i carichi di lavoro di AI, ti consigliamo di utilizzare GPU T4 o V100.
    • IMAGE_FAMILY: la famiglia di immagini dell'immagine del sistema operativo che vuoi utilizzare. Per un elenco di tutti i sistemi operativi supportati, vedi 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_TYPE: il tipo di disco di avvio. Per saperne di più sui tipi di dischi supportati per il tuo tipo di macchina, consulta Macchine GPU nella famiglia di macchine ottimizzate per l'acceleratore nella documentazione di Compute Engine.
    • DISK_SIZE: le dimensioni del disco di avvio in GB. Per ulteriori informazioni, consulta Limiti di dimensioni di Google Cloud Hyperdisk o Limiti di dimensioni di Persistent Disk in base al tipo di disco.
    • RESERVATION_AFFINITY: le prenotazioni che l'istanza può utilizzare, se possibile. Specifica una delle seguenti opzioni:

      • any (la capacità di prenotazione è facoltativa): questa è l'opzione predefinita. L'istanza tenta di utilizzare la capacità di una prenotazione consumata automaticamente, il che si verifica solo se è disponibile la capacità di prenotazione corrispondente. In caso contrario, l'istanza utilizza la capacità on demand.

      • none (è necessaria la capacità on demand): impedisci all'istanza di utilizzare qualsiasi capacità di prenotazione.

  2. Per impostazione predefinita, l'istanza viene riavviata automaticamente in caso di arresto anomalo o se Compute Engine la arresta per un arresto programmato, ad esempio un evento di manutenzione. Se vuoi disattivare il riavvio automatico, aggiungi il seguente flag:

    --no-restart-on-failure
  3. (Facoltativo) Per collegare dischi SSD locali, aggiungi il seguente flag --local-ssd per ogni disco SSD locale.

    Assicurati che il numero di dischi SSD locali che colleghi sia consentito per il tuo tipo di macchina. Per i dettagli, consulta Informazioni sui dischi SSD locali nella documentazione di Compute Engine.

    --local-ssd interface=INTERFACE_TYPE
    

    Sostituisci quanto segue:

    • INTERFACE_TYPE: il tipo di interfaccia del disco che vuoi utilizzare per il disco SSD locale. Se l'immagine del disco di avvio ha driver NVMe ottimizzati, specifica NVME. Specifica SCSI per le altre immagini.

    Dopo aver creato una VM con dischi SSD locali, per poterla utilizzare devi prima formattare e montare ogni dispositivo.

  4. Esegui il comando.

Avvio flessibile

Prima di eseguire il comando, esamina tutti i passaggi seguenti per determinare se includere flag aggiuntivi.

gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
    --machine-type=MACHINE_TYPE \
    --accelerator=type=ACCELERATOR_TYPE,count=ACCELERATOR_COUNT \
    --image-family=IMAGE_FAMILY \
    --image-project=IMAGE_PROJECT \
    --instance-template-region=REGION \
    --boot-disk-type=DISK_TYPE \
    --boot-disk-size=DISK_SIZE \
    --scopes=cloud-platform \
    --reservation-affinity=none \
    --instance-termination-action=DELETE \
    --max-run-duration=RUN_DURATION \
    --maintenance-policy=TERMINATE \
    --provisioning-model=FLEX_START

Completa i seguenti passaggi:

  1. Sostituisci quanto segue:

    • INSTANCE_TEMPLATE_NAME: il nome del template di istanza.
    • MACHINE_TYPE: il tipo di macchina da utilizzare per l'istanza N1 con GPU T4 o V100. Per saperne di più, consulta Tipi di macchine GPU nella documentazione di Compute Engine.
    • ACCELERATOR_COUNT: il numero di GPU che vuoi collegare alla VM N1. Per un elenco dei limiti delle GPU in base al tipo di macchina della VM, consulta le informazioni sulle GPU N1 nella documentazione di Compute Engine.
    • ACCELERATOR_TYPE: il tipo di acceleratore per le VM N1 che vuoi utilizzare. Per i carichi di lavoro di AI, ti consigliamo di utilizzare GPU T4 o V100.
    • IMAGE_FAMILY: la famiglia di immagini dell'immagine del sistema operativo che vuoi utilizzare. Per un elenco di tutti i sistemi operativi supportati, vedi 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_TYPE: il tipo di disco di avvio. Per saperne di più sui tipi di dischi supportati per il tuo tipo di macchina, consulta Macchine GPU nella famiglia di macchine ottimizzate per l'acceleratore nella documentazione di Compute Engine.
    • DISK_SIZE: le dimensioni del disco di avvio in GB. Per ulteriori informazioni, consulta Limiti di dimensioni di Google Cloud Hyperdisk o Limiti di dimensioni di Persistent Disk in base al tipo di disco.
    • RUN_DURATION: la durata per cui vuoi eseguire le VM richieste. Devi formattare il valore come numero di giorni, ore, minuti o secondi seguito rispettivamente da d, h, m e s. Ad esempio, specifica 30m per 30 minuti o 1d2h3m4s per un giorno, due ore, tre minuti e quattro secondi. Il valore deve essere compreso tra 10 minuti e sette giorni.
  2. (Facoltativo) Per collegare dischi SSD locali, aggiungi il seguente flag --local-ssd per ogni disco SSD locale.

    Assicurati che il numero di dischi SSD locali che colleghi sia consentito per il tuo tipo di macchina. Per i dettagli, consulta Informazioni sui dischi SSD locali nella documentazione di Compute Engine.

    --local-ssd interface=INTERFACE_TYPE
    

    Sostituisci quanto segue:

    • INTERFACE_TYPE: il tipo di interfaccia del disco che vuoi utilizzare per il disco SSD locale. Se l'immagine del disco di avvio ha driver NVMe ottimizzati, specifica NVME. Specifica SCSI per le altre immagini.

    Dopo aver creato una VM con dischi SSD locali, per poterla utilizzare devi prima formattare e montare ogni dispositivo.

  3. Esegui il comando.

Spot

Prima di eseguire il comando, esamina tutti i passaggi seguenti per determinare se includere flag aggiuntivi.

gcloud compute instance-templates create INSTANCE_TEMPLATE_NAME \
    --machine-type=MACHINE_TYPE \
    --accelerator=type=ACCELERATOR_TYPE,count=ACCELERATOR_COUNT \
    --image-family=IMAGE_FAMILY \
    --image-project=IMAGE_PROJECT \
    --instance-template-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

Completa i seguenti passaggi:

  1. Sostituisci quanto segue:

    • INSTANCE_TEMPLATE_NAME: il nome del template di istanza.
    • MACHINE_TYPE: il tipo di macchina da utilizzare per l'istanza N1 con GPU T4 o V100. Per saperne di più, consulta Tipi di macchine GPU nella documentazione di Compute Engine.
    • ACCELERATOR_COUNT: il numero di GPU che vuoi collegare alla VM N1. Per un elenco dei limiti delle GPU in base al tipo di macchina della VM, consulta le informazioni sulle GPU N1 nella documentazione di Compute Engine.
    • ACCELERATOR_TYPE: il tipo di acceleratore per le VM N1 che vuoi utilizzare. Per i carichi di lavoro di AI, ti consigliamo di utilizzare GPU T4 o V100.
    • IMAGE_FAMILY: la famiglia di immagini dell'immagine del sistema operativo che vuoi utilizzare. Per un elenco di tutti i sistemi operativi supportati, vedi 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_TYPE: il tipo di disco di avvio. Per saperne di più sui tipi di dischi supportati per il tuo tipo di macchina, consulta Macchine GPU nella famiglia di macchine ottimizzate per l'acceleratore nella documentazione di Compute Engine.
    • DISK_SIZE: le dimensioni del disco di avvio in GB. Per ulteriori informazioni, consulta Limiti di dimensioni di Google Cloud Hyperdisk o Limiti di dimensioni di Persistent Disk in base al tipo di disco.
    • TERMINATION_ACTION: l'azione da intraprendere quando Compute Engine prerilascia l'istanza, ovvero STOP (impostazione predefinita) o DELETE.

  2. (Facoltativo) Per collegare dischi SSD locali, aggiungi il seguente flag --local-ssd per ogni disco SSD locale.

    Assicurati che il numero di dischi SSD locali che colleghi sia consentito per il tuo tipo di macchina. Per i dettagli, consulta Informazioni sui dischi SSD locali nella documentazione di Compute Engine.

    --local-ssd interface=INTERFACE_TYPE
    

    Sostituisci quanto segue:

    • INTERFACE_TYPE: il tipo di interfaccia del disco che vuoi utilizzare per il disco SSD locale. Se l'immagine del disco di avvio ha driver NVMe ottimizzati, specifica NVME. Specifica SCSI per le altre immagini.

    Dopo aver creato una VM con dischi SSD locali, per poterla utilizzare devi prima formattare e montare ogni dispositivo.

  3. Esegui il comando.

REST

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

I parametri da specificare dipendono dall'opzione di consumo che utilizzi per questo deployment. Seleziona la scheda corrispondente all'opzione di consumo.

Prenotazione

Le istanze N1 con GPU T4 o V100 supportano i seguenti tipi di prenotazioni:

  • Prenotazioni on demand
  • Prenotazioni future standard

Per utilizzare questi tipi di prenotazioni, un'istanza deve utilizzare il modello di provisioning standard. Ad esempio, utilizza i seguenti parametri di creazione.

Prima di inviare la richiesta, esamina tutti i passaggi seguenti per determinare se includere campi aggiuntivi.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceTemplates
{
  "name": "INSTANCE_TEMPLATE_NAME",
  "properties": {
    "machineType": "MACHINE_TYPE",
    "guestAccelerators": [
      {
        "acceleratorCount": ACCELERATOR_COUNT,
        "acceleratorType": "projects/PROJECT_ID/zones/ZONE/acceleratorTypes/ACCELERATOR_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"
    ]
  }
  }
}

Completa i seguenti passaggi:

  1. Sostituisci quanto segue:

    • INSTANCE_TEMPLATE_NAME: il nome del template di istanza.
    • MACHINE_TYPE: il tipo di macchina da utilizzare per l'istanza N1 con GPU T4 o V100. Per saperne di più, consulta Tipi di macchine GPU nella documentazione di Compute Engine.
    • ACCELERATOR_COUNT: il numero di GPU che vuoi collegare alla VM N1. Per un elenco dei limiti delle GPU in base al tipo di macchina della VM, consulta le informazioni sulle GPU N1 nella documentazione di Compute Engine.
    • ACCELERATOR_TYPE: il tipo di acceleratore per le VM N1 che vuoi utilizzare. Per i carichi di lavoro di AI, ti consigliamo di utilizzare GPU T4 o V100.
    • IMAGE_FAMILY: la famiglia di immagini dell'immagine del sistema operativo che vuoi utilizzare. Per un elenco di tutti i sistemi operativi supportati, vedi 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. Per ulteriori informazioni, consulta Limiti di dimensioni di Google Cloud Hyperdisk o Limiti di dimensioni di Persistent Disk in base al tipo di disco.
    • DISK_TYPE: il tipo di disco di avvio. Per saperne di più sui tipi di dischi supportati per il tuo tipo di macchina, consulta Macchine GPU nella famiglia di macchine ottimizzate per l'acceleratore nella documentazione di Compute Engine.
    • AUTOMATIC_RESTART: se l'istanza si riavvia automaticamente in caso di arresto anomalo o se Compute Engine la arresta per un arresto programmato, ad esempio un evento di manutenzione. Specifica true per attivare il riavvio automatico (impostazione predefinita) o false per disattivarlo.

    • RESERVATION_AFFINITY: le prenotazioni che l'istanza può utilizzare, se possibile. Specifica una delle seguenti opzioni:

      • ANY_RESERVATION (la capacità di prenotazione è facoltativa): questa è l'opzione predefinita. L'istanza tenta di utilizzare la capacità di una prenotazione consumata automaticamente, cosa che si verifica solo se è disponibile una capacità di prenotazione corrispondente. In caso contrario, l'istanza utilizza la capacità on demand.

      • SPECIFIC_RESERVATION (è richiesta la capacità di prenotazione): richiede che l'istanza utilizzi la capacità di una prenotazione con target specifico. L'istanza non è autorizzata a utilizzare la capacità on demand. Se la capacità di prenotazione non è disponibile, la creazione dell'istanza non riesce.

    • RESERVATION: la prenotazione da utilizzare. Specifica uno dei seguenti valori in base al valore specificato per RESERVATION_AFFINITY:

      • Se hai specificato ANY_RESERVATION, elimina RESERVATION in modo che il valore sia una stringa vuota (""). In alternativa, puoi rimuovere completamente i campi key e values.
      • Se hai specificato SPECIFIC_RESERVATION, sostituisci RESERVATION con quanto segue:

        projects/RESERVATION_OWNER_PROJECT_ID/reservations/RESERVATION_NAME

        Sostituisci quanto segue:

        • RESERVATION_OWNER_PROJECT_ID: l'ID progetto del progetto in cui è stata creata la prenotazione.
        • RESERVATION_NAME: il nome della prenotazione.
  2. (Facoltativo) Per utilizzare i dischi SSD locali, aggiungi il seguente campo al campo disks[] per ogni disco SSD locale. Separa ogni sottocampo disks[] (incluso il disco di avvio) con una virgola.

    Assicurati che il numero di dischi SSD locali che colleghi sia consentito per il tuo tipo di macchina. Per i dettagli, consulta Informazioni sui dischi SSD locali nella documentazione di Compute Engine.

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

    Sostituisci quanto segue:

    • ZONE: la zona specificata.
    • INTERFACE_TYPE: il tipo di interfaccia del disco che vuoi utilizzare per il disco SSD locale. Se l'immagine del disco di avvio ha driver NVMe ottimizzati, specifica NVME. Specifica SCSI per le altre immagini.

    Dopo aver creato una VM con dischi SSD locali, per poterla utilizzare devi prima formattare e montare ogni dispositivo.

  3. Invia la richiesta.

On demand

Prima di inviare la richiesta, esamina tutti i passaggi seguenti per determinare se includere campi aggiuntivi.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceTemplates
{
  "name": "INSTANCE_TEMPLATE_NAME",
  "properties": {
    "machineType": "MACHINE_TYPE",
    "guestAccelerators": [
      {
        "acceleratorCount": ACCELERATOR_COUNT,
        "acceleratorType": "projects/PROJECT_ID/zones/ZONE/acceleratorTypes/ACCELERATOR_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"
  }
  }
}

Completa i seguenti passaggi:

  1. Sostituisci quanto segue:

    • INSTANCE_TEMPLATE_NAME: il nome del template di istanza.
    • MACHINE_TYPE: il tipo di macchina da utilizzare per l'istanza N1 con GPU T4 o V100. Per saperne di più, consulta Tipi di macchine GPU nella documentazione di Compute Engine.
    • ACCELERATOR_COUNT: il numero di GPU che vuoi collegare alla VM N1. Per un elenco dei limiti delle GPU in base al tipo di macchina della VM, consulta le informazioni sulle GPU N1 nella documentazione di Compute Engine.
    • ACCELERATOR_TYPE: il tipo di acceleratore per le VM N1 che vuoi utilizzare. Per i carichi di lavoro di AI, ti consigliamo di utilizzare GPU T4 o V100.
    • IMAGE_FAMILY: la famiglia di immagini dell'immagine del sistema operativo che vuoi utilizzare. Per un elenco di tutti i sistemi operativi supportati, vedi 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. Per ulteriori informazioni, consulta Limiti di dimensioni di Google Cloud Hyperdisk o Limiti di dimensioni di Persistent Disk in base al tipo di disco.
    • DISK_TYPE: il tipo di disco di avvio. Per saperne di più sui tipi di dischi supportati per il tuo tipo di macchina, consulta Macchine GPU nella famiglia di macchine ottimizzate per l'acceleratore nella documentazione di Compute Engine.
    • AUTOMATIC_RESTART: se l'istanza si riavvia automaticamente in caso di arresto anomalo o se Compute Engine la arresta per un arresto programmato, ad esempio un evento di manutenzione. Specifica true per attivare il riavvio automatico (impostazione predefinita) o false per disattivarlo.

    • RESERVATION_AFFINITY: le prenotazioni che l'istanza può utilizzare, se possibile. Specifica una delle seguenti opzioni:

      • ANY_RESERVATION (la capacità di prenotazione è facoltativa): questa è l'opzione predefinita. L'istanza tenta di utilizzare la capacità di una prenotazione consumata automaticamente, cosa che si verifica solo se è disponibile una capacità di prenotazione corrispondente. In caso contrario, l'istanza utilizza la capacità on demand.

      • NO_RESERVATION (è necessaria la capacità on demand): impedisci all'istanza di utilizzare qualsiasi capacità di prenotazione.

  2. (Facoltativo) Per utilizzare i dischi SSD locali, aggiungi il seguente campo al campo disks[] per ogni disco SSD locale. Separa ogni sottocampo disks[] (incluso il disco di avvio) con una virgola.

    Assicurati che il numero di dischi SSD locali che colleghi sia consentito per il tuo tipo di macchina. Per i dettagli, consulta Informazioni sui dischi SSD locali nella documentazione di Compute Engine.

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

    Sostituisci quanto segue:

    • ZONE: la zona specificata.
    • INTERFACE_TYPE: il tipo di interfaccia del disco che vuoi utilizzare per il disco SSD locale. Se l'immagine del disco di avvio ha driver NVMe ottimizzati, specifica NVME. Specifica SCSI per le altre immagini.

    Dopo aver creato una VM con dischi SSD locali, per poterla utilizzare devi prima formattare e montare ogni dispositivo.

  3. Invia la richiesta.

Avvio flessibile

Prima di inviare la richiesta, esamina tutti i passaggi seguenti per determinare se includere campi aggiuntivi.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceTemplates
{
  "name": "INSTANCE_TEMPLATE_NAME",
  "properties": {
    "machineType": "MACHINE_TYPE",
    "guestAccelerators": [
      {
        "acceleratorCount": ACCELERATOR_COUNT,
        "acceleratorType": "projects/PROJECT_ID/zones/ZONE/acceleratorTypes/ACCELERATOR_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"
        ]
      }
    ],
    "reservationAffinity": {
        "consumeReservationType": "NO_RESERVATION"
      },
    "scheduling": {
        "instanceTerminationAction": "DELETE",
        "maxRunDuration": {
          "seconds": RUN_DURATION
        },
        "onHostMaintenance": "TERMINATE",
        "provisioningModel": "FLEX_START"
      }

  }
}

Completa i seguenti passaggi:

  1. Sostituisci quanto segue:

    • INSTANCE_TEMPLATE_NAME: il nome del template di istanza.
    • MACHINE_TYPE: il tipo di macchina da utilizzare per l'istanza N1 con GPU T4 o V100. Per saperne di più, consulta Tipi di macchine GPU nella documentazione di Compute Engine.
    • ACCELERATOR_COUNT: il numero di GPU che vuoi collegare alla VM N1. Per un elenco dei limiti delle GPU in base al tipo di macchina della VM, consulta le informazioni sulle GPU N1 nella documentazione di Compute Engine.
    • ACCELERATOR_TYPE: il tipo di acceleratore per le VM N1 che vuoi utilizzare. Per i carichi di lavoro di AI, ti consigliamo di utilizzare GPU T4 o V100.
    • IMAGE_FAMILY: la famiglia di immagini dell'immagine del sistema operativo che vuoi utilizzare. Per un elenco di tutti i sistemi operativi supportati, vedi 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. Per ulteriori informazioni, consulta Limiti di dimensioni di Google Cloud Hyperdisk o Limiti di dimensioni di Persistent Disk in base al tipo di disco.
    • DISK_TYPE: il tipo di disco di avvio. Per saperne di più sui tipi di dischi supportati per il tuo tipo di macchina, consulta Macchine GPU nella famiglia di macchine ottimizzate per l'acceleratore nella documentazione di Compute Engine.
    • RUN_DURATION: la durata, in secondi, per cui vuoi eseguire le VM richieste. Il valore deve essere compreso tra 600, ovvero 600 secondi (10 minuti), e 604800, ovvero 604.800 secondi (sette giorni).
  2. (Facoltativo) Per utilizzare i dischi SSD locali, aggiungi il seguente campo al campo disks[] per ogni disco SSD locale. Separa ogni sottocampo disks[] (incluso il disco di avvio) con una virgola.

    Assicurati che il numero di dischi SSD locali che colleghi sia consentito per il tuo tipo di macchina. Per i dettagli, consulta Informazioni sui dischi SSD locali nella documentazione di Compute Engine.

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

    Sostituisci quanto segue:

    • ZONE: la zona specificata.
    • INTERFACE_TYPE: il tipo di interfaccia del disco che vuoi utilizzare per il disco SSD locale. Se l'immagine del disco di avvio ha driver NVMe ottimizzati, specifica NVME. Specifica SCSI per le altre immagini.

    Dopo aver creato una VM con dischi SSD locali, per poterla utilizzare devi prima formattare e montare ogni dispositivo.

  3. Invia la richiesta.

Spot

Prima di inviare la richiesta, esamina tutti i passaggi seguenti per determinare se includere campi aggiuntivi.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceTemplates
{
  "name": "INSTANCE_TEMPLATE_NAME",
  "properties": {
    "machineType": "MACHINE_TYPE",
    "guestAccelerators": [
      {
        "acceleratorCount": ACCELERATOR_COUNT,
        "acceleratorType": "projects/PROJECT_ID/zones/ZONE/acceleratorTypes/ACCELERATOR_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
    }
  }
}

Completa i seguenti passaggi:

  1. Sostituisci quanto segue:

    • INSTANCE_TEMPLATE_NAME: il nome del template di istanza.
    • MACHINE_TYPE: il tipo di macchina da utilizzare per l'istanza N1 con GPU T4 o V100. Per saperne di più, consulta Tipi di macchine GPU nella documentazione di Compute Engine.
    • ACCELERATOR_COUNT: il numero di GPU che vuoi collegare alla VM N1. Per un elenco dei limiti delle GPU in base al tipo di macchina della VM, consulta le informazioni sulle GPU N1 nella documentazione di Compute Engine.
    • ACCELERATOR_TYPE: il tipo di acceleratore per le VM N1 che vuoi utilizzare. Per i carichi di lavoro di AI, ti consigliamo di utilizzare GPU T4 o V100.
    • IMAGE_FAMILY: la famiglia di immagini dell'immagine del sistema operativo che vuoi utilizzare. Per un elenco di tutti i sistemi operativi supportati, vedi 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. Per ulteriori informazioni, consulta Limiti di dimensioni di Google Cloud Hyperdisk o Limiti di dimensioni di Persistent Disk in base al tipo di disco.
    • DISK_TYPE: il tipo di disco di avvio. Per saperne di più sui tipi di dischi supportati per il tuo tipo di macchina, consulta Macchine GPU nella famiglia di macchine ottimizzate per l'acceleratore nella documentazione di Compute Engine.
    • TERMINATION_ACTION: l'azione da intraprendere quando Compute Engine prerilascia l'istanza, ovvero STOP (impostazione predefinita) o DELETE.

  2. (Facoltativo) Per utilizzare i dischi SSD locali, aggiungi il seguente campo al campo disks[] per ogni disco SSD locale. Separa ogni sottocampo disks[] (incluso il disco di avvio) con una virgola.

    Assicurati che il numero di dischi SSD locali che colleghi sia consentito per il tuo tipo di macchina. Per i dettagli, consulta Informazioni sui dischi SSD locali nella documentazione di Compute Engine.

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

    Sostituisci quanto segue:

    • ZONE: la zona specificata.
    • INTERFACE_TYPE: il tipo di interfaccia del disco che vuoi utilizzare per il disco SSD locale. Se l'immagine del disco di avvio ha driver NVMe ottimizzati, specifica NVME. Specifica SCSI per le altre immagini.

    Dopo aver creato una VM con dischi SSD locali, per poterla utilizzare devi prima formattare e montare ogni dispositivo.

  3. Invia la richiesta.

Dopo aver creato il modello di istanza, puoi visualizzarlo per vedere il suo ID e rivedere le proprietà dell'istanza.

Crea un MIG

Dopo aver completato tutti i passaggi precedenti, crea un gruppo di istanze gestite in base al tuo scenario nel seguente modo:

Scenario Metodo per creare un MIG e le relative VM Esempio
Hai più job paralleli che possono iniziare con un numero qualsiasi di VM. Crea un MIG e utilizza la dimensione target per specificare il numero di VM che vuoi nel gruppo.

Vedi Crea un gruppo di istanze gestite con una dimensione target.

Job di inferenza ML
Hai un job che richiede la distribuzione su un numero esatto di VM. Crea un MIG senza VM e poi crea una richiesta di ridimensionamento nel MIG. La richiesta di ridimensionamento ti aiuta a ottenere le VM tutte insieme.

Consulta Crea un gruppo di istanze gestite e una richiesta di ridimensionamento.

Job di addestramento e ottimizzazione di ML distribuito

Crea un MIG con una dimensione target

Se puoi avviare il job senza creare tutte le VM contemporaneamente, crea un MIG con una dimensione target. Le dimensioni target determinano il numero di VM nel MIG. Il MIG inizia a creare VM in base alla disponibilità attuale delle risorse. Se alcune risorse non sono temporaneamente disponibili, il MIG tenta continuamente di creare VM per raggiungere la dimensione target.

Per creare un MIG con una dimensione target, 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 questo comando:
    gcloud compute instance-groups managed create MIG_NAME \
      --template=INSTANCE_TEMPLATE_URL \
      --size=TARGET_SIZE \
      --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 \
        --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.
  • ZONE: la zona in cui vuoi creare il MIG.
  • REGION: la regione in cui vuoi creare il MIG. 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",
      "targetSize": TARGET_SIZE
    }
    
  • 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
      {
        "name": "MIG_NAME",
        "instanceTemplate": "INSTANCE_TEMPLATE_URL",
        "targetSize": TARGET_SIZE
      }
    
Sostituisci quanto segue:
  • PROJECT_ID: l'ID progetto
  • ZONE: la zona in cui vuoi creare il MIG.
  • REGION: la regione in cui vuoi creare il 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
  • MIG_NAME: il nome del MIG.
  • TARGET_SIZE: il numero di istanze che vuoi nel MIG.

Crea un gruppo di istanze gestite e una richiesta di ridimensionamento

Se hai bisogno di più VM contemporaneamente per avviare un job, crea un gruppo di istanze gestite e una richiesta di ridimensionamento nel gruppo di istanze gestite come descritto in questa sezione.

Per creare una richiesta di ridimensionamento in un gruppo di istanze gestite, seleziona una delle seguenti opzioni:

gcloud

I parametri da specificare dipendono dall'opzione di consumo che utilizzi per questo deployment. Seleziona la scheda corrispondente al modello di provisioning dell'opzione di consumo.

Prenotazione

Crea un gruppo di istanze gestite a livello di zona o di regione e una richiesta di ridimensionamento come segue:

  • Per creare un gruppo di istanze gestite a livello di zona e una richiesta di ridimensionamento al suo interno:

    1. Crea un MIG a livello di zona utilizzando il comando instance-groups managed create come segue.

      gcloud compute instance-groups managed create MIG_NAME \
          --template=INSTANCE_TEMPLATE_URL \
          --size=0 \
          --zone=ZONE
      
    2. Crea una richiesta di ridimensionamento nel gruppo di istanze gestite a livello di zona utilizzando il comando instance-groups managed resize-requests create come segue. Questo comando specifica il numero di VM che vuoi creare. Se il tuo workload richiede nomi VM specifici, allora crea una richiesta di ridimensionamento specificando un elenco di nomi VM.

      gcloud compute instance-groups managed resize-requests create MIG_NAME \
          --resize-request=RESIZE_REQUEST_NAME \
          --resize-by=COUNT \
          --zone=ZONE
      
  • Per creare un gruppo di istanze gestite a livello di regione e una richiesta di ridimensionamento al suo interno:

    1. Crea un gruppo di istanze gestite a livello di regione utilizzando il comando instance-groups managed create come segue.

      gcloud compute instance-groups managed create MIG_NAME \
          --template=INSTANCE_TEMPLATE_URL \
          --size=0 \
          --zones=ZONE \
          --target-distribution-shape=any-single-zone \
          --instance-redistribution-type=none
        
    2. Crea una richiesta di ridimensionamento nel gruppo di istanze gestite a livello di regione utilizzando il comando instance-groups managed resize-requests create come segue. Questo comando specifica il numero di VM che vuoi creare. Se il tuo workload richiede nomi VM specifici, allora crea una richiesta di ridimensionamento specificando un elenco di nomi VM.

      gcloud compute instance-groups managed resize-requests create MIG_NAME \
          --resize-request=RESIZE_REQUEST_NAME \
          --resize-by=COUNT \
          --region=REGION
      

On demand

Crea un gruppo di istanze gestite a livello di zona o di regione e una richiesta di ridimensionamento come segue:

  • Per creare un gruppo di istanze gestite a livello di zona e una richiesta di ridimensionamento al suo interno:

    1. Crea un MIG a livello di zona utilizzando il comando instance-groups managed create come segue.

      gcloud compute instance-groups managed create MIG_NAME \
          --template=INSTANCE_TEMPLATE_URL \
          --size=0 \
          --zone=ZONE
      
    2. Crea una richiesta di ridimensionamento nel gruppo di istanze gestite a livello di zona utilizzando il comando instance-groups managed resize-requests create come segue. Questo comando specifica il numero di VM che vuoi creare. Se il tuo workload richiede nomi VM specifici, allora crea una richiesta di ridimensionamento specificando un elenco di nomi VM.

      gcloud compute instance-groups managed resize-requests create MIG_NAME \
          --resize-request=RESIZE_REQUEST_NAME \
          --resize-by=COUNT \
          --zone=ZONE
      
  • Per creare un gruppo di istanze gestite a livello di regione e una richiesta di ridimensionamento al suo interno:

    1. Crea un gruppo di istanze gestite a livello di regione utilizzando il comando instance-groups managed create come segue.

      gcloud compute instance-groups managed create MIG_NAME \
          --template=INSTANCE_TEMPLATE_URL \
          --size=0 \
          --zones=ZONE \
          --target-distribution-shape=any-single-zone \
          --instance-redistribution-type=none
        
    2. Crea una richiesta di ridimensionamento nel gruppo di istanze gestite a livello di regione utilizzando il comando instance-groups managed resize-requests create come segue. Questo comando specifica il numero di VM che vuoi creare. Se il tuo workload richiede nomi VM specifici, allora crea una richiesta di ridimensionamento specificando un elenco di nomi VM.

      gcloud compute instance-groups managed resize-requests create MIG_NAME \
          --resize-request=RESIZE_REQUEST_NAME \
          --resize-by=COUNT \
          --region=REGION
      

Avvio flessibile

Crea un gruppo di istanze gestite a livello di zona o di regione e una richiesta di ridimensionamento come segue:

  • Per creare un gruppo di istanze gestite a livello di zona e una richiesta di ridimensionamento al suo interno:

    1. Crea un MIG a livello di zona utilizzando il comando instance-groups managed create come segue.

      gcloud compute instance-groups managed create MIG_NAME \
          --template=INSTANCE_TEMPLATE_URL \
          --size=0 \
          --default-action-on-vm-failure=do-nothing \
          --zone=ZONE
      
    2. Crea una richiesta di ridimensionamento nel gruppo di istanze gestite a livello di zona utilizzando il comando instance-groups managed resize-requests create come segue. Questo comando specifica il numero di VM che vuoi creare. Se il tuo workload richiede nomi VM specifici, allora crea una richiesta di ridimensionamento specificando un elenco di nomi VM.

      gcloud compute instance-groups managed resize-requests create MIG_NAME \
          --resize-request=RESIZE_REQUEST_NAME \
          --resize-by=COUNT \
          --zone=ZONE
      
  • Per creare un gruppo di istanze gestite a livello di regione e una richiesta di ridimensionamento al suo interno:

    1. Crea un gruppo di istanze gestite a livello di regione utilizzando il comando instance-groups managed create come segue.

      gcloud compute instance-groups managed create MIG_NAME \
          --template=INSTANCE_TEMPLATE_URL \
          --size=0 \
          --default-action-on-vm-failure=do-nothing \
      
          --region=REGION \
          --target-distribution-shape=any-single-zone \
          --instance-redistribution-type=none
        
    2. Crea una richiesta di ridimensionamento nel gruppo di istanze gestite a livello di regione utilizzando il comando instance-groups managed resize-requests create come segue. Questo comando specifica il numero di VM che vuoi creare. Se il tuo workload richiede nomi VM specifici, allora crea una richiesta di ridimensionamento specificando un elenco di nomi VM.

      gcloud compute instance-groups managed resize-requests create MIG_NAME \
          --resize-request=RESIZE_REQUEST_NAME \
          --resize-by=COUNT \
          --region=REGION
      

Spot

Crea un gruppo di istanze gestite a livello di zona o di regione e una richiesta di ridimensionamento come segue:

  • Per creare un gruppo di istanze gestite a livello di zona e una richiesta di ridimensionamento al suo interno:

    1. Crea un MIG a livello di zona utilizzando il comando instance-groups managed create come segue.

      gcloud compute instance-groups managed create MIG_NAME \
          --template=INSTANCE_TEMPLATE_URL \
          --size=0 \
          --zone=ZONE
      
    2. Crea una richiesta di ridimensionamento nel gruppo di istanze gestite a livello di zona utilizzando il comando instance-groups managed resize-requests create come segue. Questo comando specifica il numero di VM che vuoi creare. Se il tuo workload richiede nomi VM specifici, allora crea una richiesta di ridimensionamento specificando un elenco di nomi VM.

      gcloud compute instance-groups managed resize-requests create MIG_NAME \
          --resize-request=RESIZE_REQUEST_NAME \
          --resize-by=COUNT \
          --zone=ZONE
      
  • Per creare un gruppo di istanze gestite a livello di regione e una richiesta di ridimensionamento al suo interno:

    1. Crea un gruppo di istanze gestite a livello di regione utilizzando il comando instance-groups managed create come segue.

      gcloud compute instance-groups managed create MIG_NAME \
          --template=INSTANCE_TEMPLATE_URL \
          --size=0 \
          --zones=ZONE \
          --target-distribution-shape=any-single-zone \
          --instance-redistribution-type=none
        
    2. Crea una richiesta di ridimensionamento nel gruppo di istanze gestite a livello di regione utilizzando il comando instance-groups managed resize-requests create come segue. Questo comando specifica il numero di VM che vuoi creare. Se il tuo workload richiede nomi VM specifici, allora crea una richiesta di ridimensionamento specificando un elenco di nomi VM.

      gcloud compute instance-groups managed resize-requests create MIG_NAME \
          --resize-request=RESIZE_REQUEST_NAME \
          --resize-by=COUNT \
          --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
  • ZONE: la zona in cui vuoi creare il MIG. Anche per un MIG a livello di regione, devi specificare una zona. Questa zona deve essere la zona che contiene il profilo per la tua rete VPC e deve essere una zona in cui è disponibile il tipo di macchina. Per ulteriori informazioni, vedi Limitazioni.
  • RESIZE_REQUEST_NAME: il nome della richiesta di ridimensionamento, che deve essere univoco all'interno del gruppo di istanze gestite specificato. In caso contrario, la creazione della richiesta di ridimensionamento non va a buon fine.
  • COUNT: il numero di istanze da aggiungere contemporaneamente al gruppo di istanze gestite.
  • REGION: la regione in cui vuoi creare il MIG.

Crea una richiesta di ridimensionamento specificando un elenco di nomi VM

Se il tuo workload richiede nomi VM specifici, specifica un elenco di nomi per creare le VM. Il numero di nomi specificato determina il numero di VM che il MIG crea contemporaneamente.

Per creare una richiesta di ridimensionamento con nomi VM specifici in un MIG, utilizza il comando beta gcloud compute instance-groups managed resize-requests create con il flag --instances:

  • In un MIG a livello di zona, esegui il seguente comando:

    gcloud beta compute instance-groups managed resize-requests create MIG_NAME \
        --resize-request=RESIZE_REQUEST_NAME \
        --instances=INSTANCE_NAMES \
        --zone=ZONE
    
  • In un MIG a livello di regione, esegui il seguente comando:

    gcloud beta compute instance-groups managed resize-requests create MIG_NAME \
        --resize-request=RESIZE_REQUEST_NAME \
        --instances=INSTANCE_NAMES \
        --region=REGION
    
Sostituisci INSTANCE_NAMES con un elenco separato da virgole di nomi per le VM. Ad esempio, instance-1,instance-2,instance-3.

REST

I parametri da specificare dipendono dall'opzione di consumo che utilizzi per questo deployment. Seleziona la scheda corrispondente al modello di provisioning dell'opzione di consumo.

Prenotazione

Crea un gruppo di istanze gestite a livello di zona o di regione e una richiesta di ridimensionamento come segue:

  • Per creare un gruppo di istanze gestite a livello di zona e una richiesta di ridimensionamento al suo interno, procedi nel seguente modo:
    1. Crea un MIG a livello di zona inviando una richiesta POST al metodo instanceGroupManagers.insert come segue.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers
      {
        "versions": [
          {
            "instanceTemplate": "INSTANCE_TEMPLATE_URL"
          }
        ],
        "name": "MIG_NAME",
        "targetSize": 0
      }
      
    2. Crea una richiesta di ridimensionamento nel gruppo di istanze gestite a livello di zona inviando una richiesta POST al metodo instanceGroupManagerResizeRequests.insert come segue. Questa richiesta specifica il numero di VM che vuoi creare. Se il tuo workload richiede nomi VM specifici, allora crea una richiesta di ridimensionamento specificando un elenco di nomi VM.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequests
      {
        "name": "RESIZE_REQUEST_NAME",
        "resizeBy": COUNT
      }
      
  • Per creare un gruppo di istanze gestite a livello di regione e una richiesta di ridimensionamento al suo interno, procedi nel seguente modo:
    1. Crea un gruppo di istanze gestite a livello di regione inviando una richiesta POST al metodo regionInstanceGroupManagers.insert come segue.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers
      {
        "versions": [
          {
            "instanceTemplate": "INSTANCE_TEMPLATE_URL"
          }
        ],
        "name": "MIG_NAME",
        "targetSize": 0,
        "distributionPolicy": {
          "targetShape": "ANY_SINGLE_ZONE",
          "zones": [
            {
              "zone": "projects/PROJECT_ID/zones/ZONE"
            }
          ]
        },
        "updatePolicy": {
          "instanceRedistributionType": "NONE"
        }
      }
      
    2. Crea una richiesta di ridimensionamento nel gruppo di istanze gestite a livello di regione effettuando una richiesta POST al metodo regionInstanceGroupManagerResizeRequests.insert come segue. Questa richiesta specifica il numero di VM che vuoi creare. Se il tuo workload richiede nomi VM specifici, allora crea una richiesta di ridimensionamento specificando un elenco di nomi VM.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME/resizeRequests
      {
        "name": "RESIZE_REQUEST_NAME",
        "resizeBy": COUNT
      }
      

On demand

Crea un gruppo di istanze gestite a livello di zona o di regione e una richiesta di ridimensionamento come segue:

  • Per creare un gruppo di istanze gestite a livello di zona e una richiesta di ridimensionamento al suo interno, procedi nel seguente modo:
    1. Crea un MIG a livello di zona inviando una richiesta POST al metodo instanceGroupManagers.insert come segue.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers
      {
        "versions": [
          {
            "instanceTemplate": "INSTANCE_TEMPLATE_URL"
          }
        ],
        "name": "MIG_NAME",
        "targetSize": 0
      }
      
    2. Crea una richiesta di ridimensionamento nel gruppo di istanze gestite a livello di zona inviando una richiesta POST al metodo instanceGroupManagerResizeRequests.insert come segue. Questa richiesta specifica il numero di VM che vuoi creare. Se il tuo workload richiede nomi VM specifici, allora crea una richiesta di ridimensionamento specificando un elenco di nomi VM.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequests
      {
        "name": "RESIZE_REQUEST_NAME",
        "resizeBy": COUNT
      }
      
  • Per creare un gruppo di istanze gestite a livello di regione e una richiesta di ridimensionamento al suo interno, procedi nel seguente modo:
    1. Crea un gruppo di istanze gestite a livello di regione inviando una richiesta POST al metodo regionInstanceGroupManagers.insert come segue.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers
      {
        "versions": [
          {
            "instanceTemplate": "INSTANCE_TEMPLATE_URL"
          }
        ],
        "name": "MIG_NAME",
        "targetSize": 0,
        "distributionPolicy": {
          "targetShape": "ANY_SINGLE_ZONE",
          "zones": [
            {
              "zone": "projects/PROJECT_ID/zones/ZONE"
            }
          ]
        },
        "updatePolicy": {
          "instanceRedistributionType": "NONE"
        }
      }
      
    2. Crea una richiesta di ridimensionamento nel gruppo di istanze gestite a livello di regione effettuando una richiesta POST al metodo regionInstanceGroupManagerResizeRequests.insert come segue. Questa richiesta specifica il numero di VM che vuoi creare. Se il tuo workload richiede nomi VM specifici, allora crea una richiesta di ridimensionamento specificando un elenco di nomi VM.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME/resizeRequests
      {
        "name": "RESIZE_REQUEST_NAME",
        "resizeBy": COUNT
      }
      

Avvio flessibile

Crea un gruppo di istanze gestite a livello di zona o di regione e una richiesta di ridimensionamento come segue:

  • Per creare un gruppo di istanze gestite a livello di zona e una richiesta di ridimensionamento al suo interno, procedi nel seguente modo:
    1. Crea un MIG a livello di zona inviando una richiesta POST al metodo instanceGroupManagers.insert come segue.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers
      {
        "versions": [
          {
            "instanceTemplate": "INSTANCE_TEMPLATE_URL"
          }
        ],
        "name": "MIG_NAME",
        "targetSize": 0,
        "instanceLifecyclePolicy": {
          "defaultActionOnFailure": "DO_NOTHING"
        }
      }
      
    2. Crea una richiesta di ridimensionamento nel gruppo di istanze gestite a livello di zona inviando una richiesta POST al metodo instanceGroupManagerResizeRequests.insert come segue. Questa richiesta specifica il numero di VM che vuoi creare. Se il tuo workload richiede nomi VM specifici, allora crea una richiesta di ridimensionamento specificando un elenco di nomi VM.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequests
      {
        "name": "RESIZE_REQUEST_NAME",
        "resizeBy": COUNT
      }
      
  • Per creare un gruppo di istanze gestite a livello di regione e una richiesta di ridimensionamento al suo interno, procedi nel seguente modo:
    1. Crea un gruppo di istanze gestite a livello di regione inviando una richiesta POST al metodo regionInstanceGroupManagers.insert come segue.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers
      {
        "versions": [
          {
            "instanceTemplate": "INSTANCE_TEMPLATE_URL"
          }
        ],
        "name": "MIG_NAME",
        "targetSize": 0,
        "distributionPolicy": {
          "targetShape": "ANY_SINGLE_ZONE",
          "zones": [
            {
              "zone": "projects/PROJECT_ID/zones/ZONE"
            }
          ]
        },
        "updatePolicy": {
          "instanceRedistributionType": "NONE"
        },
        "instanceLifecyclePolicy": {
          "defaultActionOnFailure": "DO_NOTHING"
        }
      }
      
    2. Crea una richiesta di ridimensionamento nel gruppo di istanze gestite a livello di regione effettuando una richiesta POST al metodo regionInstanceGroupManagerResizeRequests.insert come segue. Questa richiesta specifica il numero di VM che vuoi creare. Se il tuo workload richiede nomi VM specifici, allora crea una richiesta di ridimensionamento specificando un elenco di nomi VM.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME/resizeRequests
      {
        "name": "RESIZE_REQUEST_NAME",
        "resizeBy": COUNT
      }
      

Spot

Crea un gruppo di istanze gestite a livello di zona o di regione e una richiesta di ridimensionamento come segue:

  • Per creare un gruppo di istanze gestite a livello di zona e una richiesta di ridimensionamento al suo interno, procedi nel seguente modo:
    1. Crea un MIG a livello di zona inviando una richiesta POST al metodo instanceGroupManagers.insert come segue.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers
      {
        "versions": [
          {
            "instanceTemplate": "INSTANCE_TEMPLATE_URL"
          }
        ],
        "name": "MIG_NAME",
        "targetSize": 0
      }
      
    2. Crea una richiesta di ridimensionamento nel gruppo di istanze gestite a livello di zona inviando una richiesta POST al metodo instanceGroupManagerResizeRequests.insert come segue. Questa richiesta specifica il numero di VM che vuoi creare. Se il tuo workload richiede nomi VM specifici, allora crea una richiesta di ridimensionamento specificando un elenco di nomi VM.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME/resizeRequests
      {
        "name": "RESIZE_REQUEST_NAME",
        "resizeBy": COUNT
      }
      
  • Per creare un gruppo di istanze gestite a livello di regione e una richiesta di ridimensionamento al suo interno, procedi nel seguente modo:
    1. Crea un gruppo di istanze gestite a livello di regione inviando una richiesta POST al metodo regionInstanceGroupManagers.insert come segue.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers
      {
        "versions": [
          {
            "instanceTemplate": "INSTANCE_TEMPLATE_URL"
          }
        ],
        "name": "MIG_NAME",
        "targetSize": 0,
        "distributionPolicy": {
          "targetShape": "ANY_SINGLE_ZONE",
          "zones": [
            {
              "zone": "projects/PROJECT_ID/zones/ZONE"
            }
          ]
        },
        "updatePolicy": {
          "instanceRedistributionType": "NONE"
        }
      }
      
    2. Crea una richiesta di ridimensionamento nel gruppo di istanze gestite a livello di regione effettuando una richiesta POST al metodo regionInstanceGroupManagerResizeRequests.insert come segue. Questa richiesta specifica il numero di VM che vuoi creare. Se il tuo workload richiede nomi VM specifici, allora crea una richiesta di ridimensionamento specificando un elenco di nomi VM.
      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME/resizeRequests
      {
        "name": "RESIZE_REQUEST_NAME",
        "resizeBy": COUNT
      }
      
Sostituisci quanto segue:
  • PROJECT_ID: l'ID progetto
  • ZONE: la zona in cui vuoi creare il MIG. Questa zona deve essere la stessa che contiene il profilo per la tua rete VPC e deve essere una zona in cui è disponibile il tipo di macchina scelto. Per ulteriori informazioni, vedi Limitazioni.
  • REGION: la regione in cui vuoi creare il MIG. Questa regione deve essere la stessa che contiene il profilo per la tua rete VPC e deve contenere una zona in cui è disponibile il tipo di macchina scelto. Per ulteriori informazioni, vedi Limitazioni.
  • 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.
  • RESIZE_REQUEST_NAME: il nome della richiesta di ridimensionamento, che deve essere univoco all'interno del gruppo di istanze gestite specificato. In caso contrario, la creazione della richiesta di ridimensionamento non va a buon fine.
  • COUNT: il numero di istanze da aggiungere contemporaneamente al MIG

Crea una richiesta di ridimensionamento specificando un elenco di nomi VM

Se il tuo workload richiede nomi VM specifici, specifica un elenco di nomi per creare le VM. Il numero di nomi specificato determina il numero di VM che il MIG crea contemporaneamente.

Per creare una richiesta di ridimensionamento con nomi VM specifici in un MIG, utilizza uno dei seguenti metodi:

Ad esempio, per specificare due nomi di VM, includi quanto segue nel corpo della richiesta:

{
  "name": "RESIZE_REQUEST_NAME",
  "instances": [
    {
      "name": "INSTANCE_NAME_1"
    },
    {
      "name": "INSTANCE_NAME_2"
    }
  ]
}

Sostituisci INSTANCE_NAME_1, INSTANCE_NAME_2 con i nomi delle VM.

Installa i driver della GPU

Dopo aver creato un'istanza, questa non può utilizzare le GPU a meno che non siano già installati i driver GPU corretti. Il driver che devi installare dipende dal fatto che l'istanza abbia attivato NVIDIA RTX Virtual Workstation (vWS). Utilizza una delle seguenti opzioni:

Passaggi successivi