Quando vuoi ottenere un numero elevato di istanze di macchine virtuali (VM) identiche e indipendenti l'una dall'altra, creale in blocco utilizzando Google Cloud CLI o l'API Compute Engine. Puoi creare le VM in tutte le zone di una regione o solo in alcune di queste.
Per ulteriori dettagli e limitazioni associate, consulta Informazioni sulla creazione collettiva di VM. Se vuoi creare istanze con GPU associate, consulta invece Crea più VM GPU contemporaneamente.
Prima di iniziare
- Per le VM e le eventuali risorse correlate che intendi creare, assicurati di disporre di una quota sufficiente e delle autorizzazioni necessarie.
- 
  
  Se non l'hai ancora fatto, configura l'autenticazione.
  L'autenticazione verifica la tua identità per l'accesso a Google Cloud servizi e API. Per eseguire
  codice o esempi da un ambiente di sviluppo locale, puoi autenticarti su
  Compute Engine selezionando una delle seguenti opzioni:
  
   
   
     
   
  
   
   
     
   
  
   
   
     
   
  
 
 
 
  
    
      Select the tab for how you plan to use the samples on this page: gcloud- 
 
 
  
  
   
   
  
   
   
  
   
   
     
   
  
  
   
   
  
   
   
  
   
   
  
 
 
   
   
      Installa Google Cloud CLI. Dopo l'installazione, inizializza Google Cloud CLI eseguendo il seguente comando: gcloud initSe utilizzi un provider di identità (IdP) esterno, devi prima accedere alla gcloud CLI con la tua identità federata. 
- Set a default region and zone.
 RESTPer utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, utilizza le credenziali che fornisci a gcloud CLI. Installa Google Cloud CLI. Dopo l'installazione, inizializza Google Cloud CLI eseguendo il seguente comando: gcloud initSe utilizzi un provider di identità (IdP) esterno, devi prima accedere alla gcloud CLI con la tua identità federata. Per saperne di più, consulta Autenticarsi per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud . Ruoli obbligatoriPer ottenere le autorizzazioni necessarie per creare più VM contemporaneamente, 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 include le autorizzazioni necessarie per creare più VM contemporaneamente. Per visualizzare le autorizzazioni obbligatorie corrette, espandi l'omonima sezione: Autorizzazioni obbligatoriePer creare più VM contemporaneamente, sono necessarie le seguenti autorizzazioni: - 
                  compute.instances.createsul progetto
- 
                Per utilizzare un'immagine personalizzata per creare la VM:
                  compute.images.useReadOnlysull'immagine
- 
                Per utilizzare uno snapshot per creare la VM:
                  compute.snapshots.useReadOnlysullo snapshot
- 
                Per utilizzare un template di istanza per creare la VM: compute.instanceTemplates.useReadOnlysul template di istanza
- 
                Per specificare una subnet per la VM: compute.subnetworks.usesul progetto o sulla subnet scelta
- 
                Per specificare un indirizzo IP statico per la VM: compute.addresses.usesul progetto
- 
                Per assegnare un indirizzo IP esterno alla VM quando utilizzi una rete VPC: compute.subnetworks.useExternalIpsul progetto o sulla subnet scelta
- 
                Per assegnare una rete legacy alla VM: compute.networks.usesul progetto
- 
                Per assegnare un indirizzo IP esterno alla VM quando utilizzi una rete legacy: compute.networks.useExternalIpsul progetto
- 
                Per impostare i metadati dell'istanza VM per la VM: compute.instances.setMetadatasul progetto
- 
                Per impostare i tag per la VM: compute.instances.setTagssulla VM
- 
                Per impostare le etichette per la VM: compute.instances.setLabelssulla VM
- 
                Per impostare un service account che la VM possa utilizzare: compute.instances.setServiceAccountsulla VM
- 
                Per creare un nuovo disco per la VM: compute.disks.createsul progetto
- 
                Per collegare un disco esistente in modalità di sola lettura o di lettura e scrittura: compute.disks.usesul disco
- 
                Per collegare un disco esistente in modalità di sola lettura: compute.disks.useReadOnlysul disco
 Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti. Crea più VM contemporaneamente in una regionePer creare più VM contemporaneamente in una regione, utilizza gcloud CLI o l'API Compute Engine. Se specifichi un tipo di macchina o un supporto per un hardware aggiuntivo come una GPU o un'unità SSD locale, Compute Engine posiziona le VM in una zona all'interno della regione che supporta quel tipo di macchina e quell'hardware aggiuntivo. gcloudPer creare più VM contemporaneamente in una regione, utilizza il seguente comando gcloud compute instances bulk create:gcloud compute instances bulk create \ ( --name-pattern="NAME_PATTERN" | --predefined-names=[PREDEFINED_NAMES] ) \ --region=REGION \ --count=COUNT \ [ --min-count=MIN_COUNT \ ] [--location-policy=LOCATION_POLICY \ ] [--target-distribution-shape=TARGET_DISTRIBUTION_SHAPE ]Sostituisci quanto segue: - NAME_PATTERN: il pattern del nome delle VM. Utilizza una sequenza di caratteri hash ( - #) per consentire a Compute Engine di sostituirla con una sequenza di numeri. Ad esempio, l'utilizzo di- vm-#per il pattern del nome genera VM con nomi come- vm-1e- vm-2, fino al numero di VM specificato da- --count, che deve essere inferiore o uguale al numero di VM consentito dal pattern del nome.- Quando utilizzi un pattern del nome, Compute Engine cerca di evitare eventuali conflitti controllando i nomi delle VM esistenti create da richieste precedenti. 
- PREDEFINED_NAMES: un elenco di nomi predefiniti per le VM da creare. Se utilizzi questo flag e specifichi - COUNT,- COUNTdeve corrispondere al numero di nomi forniti.
- REGION: la regione in cui creare le VM 
- COUNT: il numero di VM da creare. Questo deve essere inferiore o uguale al numero di VM consentito da - NAME_PATTERN. In alternativa, se utilizzi- --predefined-names, non devi specificare- COUNT, ma se lo fai, questo deve corrispondere al numero di nomi forniti.
- MIN_COUNT: il numero minimo di VM da creare. La tabella seguente descrive il comportamento della richiesta a seconda di come viene impostato questo flag: - Valore - Descrizione - Non impostato - Il valore predefinito è - COUNT. Se Compute Engine non riesce a creare il numero di VM specificato da- COUNT, la richiesta non va a buon fine e non viene creata alcuna VM.- 1- Compute Engine crea il maggior numero possibile di VM, fino a - COUNT.- Maggiore di - 1e inferiore a- COUNT- Compute Engine crea almeno - MIN_COUNTVM fino a un massimo di- COUNT. Se non è possibile creare- MIN_COUNTVM, la richiesta non va a buon fine e non viene creata alcuna VM.
- LOCATION_POLICY: le zone da includere o escludere all'interno di una regione. Utilizza un elenco di coppie chiave/valore, con la zona come chiave e la policy come valore. I valori validi per la policy sono - allow, ovvero il valore predefinito, e- deny. Di seguito è riportato un valore di esempio per questo flag:- --location-policy=us-east1-b=allow,us-east1-c=deny 
- TARGET_DISTRIBUTION_SHAPE: la distribuzione delle VM tra le zone specificate. Utilizza il flag - --location-policyper specificare le zone. La tabella seguente mostra i valori validi per questo flag:- Valore - Descrizione - ANY_SINGLE_ZONE- Applica il posizionamento delle VM in una singola zona e dà la priorità all'utilizzo delle prenotazioni inutilizzate. Utilizza questo valore per evitare il traffico in uscita dalla rete tra zone o per ridurre la latenza della rete. Questo è il valore predefinito. - BALANCED- Tenta di distribuire le VM in modo uniforme in tutte le zone della regione. - ANY- Consente la distribuzione delle VM in più zone di una regione. Sceglie zone con risorse disponibili e che massimizzano le prenotazioni di zona non utilizzate. 
 RESTPer creare più VM contemporaneamente in una regione, utilizza il seguente metodo instances.bulkInsert:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instances/bulkInsert { ... "namePattern": "NAME_PATTERN", "perInstanceProperties": { "PREDEFINED_NAME_1": {}, "PREDEFINED_NAME_2": {}, ... }, "count": COUNT, "minCount": MIN_COUNT, "locationPolicy": { "LOCATION_POLICY" }, "targetShape": "TARGET_DISTRIBUTION_SHAPE" ... }Sostituisci quanto segue: - PROJECT_ID: l'ID progetto 
- REGION: la regione in cui creare le VM 
- NAME_PATTERN: il pattern del nome delle VM. Specifica questa opzione o - perInstanceProperties. Utilizza una sequenza di caratteri hash (- #) per consentire a Compute Engine di sostituirla con una sequenza di numeri. Ad esempio, l'utilizzo di- vm-#per il pattern del nome genera VM con nomi come- vm-1e- vm-2, fino al numero di VM specificato da- --count, che deve essere inferiore o uguale al numero di VM consentito dal pattern del nome.- Quando utilizzi un pattern del nome, Compute Engine cerca di evitare eventuali conflitti controllando i nomi delle VM esistenti create da richieste precedenti. 
- PREDEFINED_NAME_1, PREDEFINED_NAME_2, ...: un elenco di nomi predefiniti per le VM da creare. Specifica questa opzione o - namePattern. Se utilizzi questo flag e specifichi- COUNT,- COUNTdeve corrispondere al numero di nomi forniti.
- COUNT: il numero di VM da creare. Questo deve essere inferiore o uguale al numero di VM consentito da - NAME_PATTERN. In alternativa, se utilizzi- perInstanceProperties, non devi specificare- COUNT, ma se lo fai, questo deve corrispondere al numero di nomi forniti.
- MIN_COUNT: il numero minimo di VM da creare. La tabella seguente descrive il comportamento della richiesta a seconda di come viene impostato questo flag: - Valore - Descrizione - Non impostato - Il valore predefinito è - COUNT. Se Compute Engine non riesce a creare il numero di VM specificato da- COUNT, la richiesta non va a buon fine e non viene creata alcuna VM.- 1- Compute Engine crea il maggior numero possibile di VM, fino a - COUNT.- Maggiore di - 1e inferiore a- COUNT- Compute Engine crea almeno - MIN_COUNTVM fino a un massimo di- COUNT. Se non è possibile creare- MIN_COUNTVM, la richiesta non va a buon fine e non viene creata alcuna VM.
- LOCATION_POLICY: le zone da includere o escludere all'interno di una regione. Utilizza un elenco di coppie chiave/valore, con la zona come chiave e la policy come valore. I valori validi per la policy sono - ALLOW, ovvero il valore predefinito, e- DENY. Di seguito è riportato un valore di esempio per questo campo:- "locations": { "zones/us-central1-a": { "preference": "ALLOW" }, "zones/us-central1-c": { "preference": "DENY" }, ... },
- TARGET_DISTRIBUTION_SHAPE: la distribuzione delle VM nelle zone specificate. Utilizza il campo - locationPolicyper specificare le zone. La tabella seguente mostra i valori validi per questo campo:- Valore - Descrizione - ANY_SINGLE_ZONE- Applica il posizionamento delle VM in una singola zona e dà la priorità all'utilizzo delle prenotazioni inutilizzate. Utilizza questo valore per evitare il traffico in uscita dalla rete tra zone o per ridurre la latenza della rete. Questo è il valore predefinito. - BALANCED- Tenta di distribuire le VM in modo uniforme in tutte le zone della regione. - ANY- Consente la distribuzione delle VM in più zone di una regione. Sceglie zone con risorse disponibili e che massimizzano le prenotazioni di zona non utilizzate. 
 Crea più VM contemporaneamente in una zonaPer creare più VM contemporaneamente in una zona, utilizza gcloud CLI o l'API Compute Engine. gcloudPer creare più VM contemporaneamente in una specifica zona, utilizza il seguente comando gcloud compute instances bulk create.gcloud compute instances bulk create \ ( --name-pattern="NAME_PATTERN" | --predefined-names=[PREDEFINED_NAMES] ) \ --zone=ZONE \ --count=COUNT \ [ --min-count=MIN_COUNT ]Sostituisci quanto segue: - NAME_PATTERN: il pattern del nome delle VM. Utilizza una sequenza di caratteri hash ( - #) per consentire a Compute Engine di sostituirla con una sequenza di numeri. Ad esempio, l'utilizzo di- vm-#per il pattern del nome genera VM con nomi come- vm-1e- vm-2, fino al numero di VM specificato da- --count, che deve essere inferiore o uguale al numero di VM consentito dal pattern del nome.- Quando utilizzi un pattern del nome, Compute Engine cerca di evitare eventuali conflitti controllando i nomi delle VM esistenti create da richieste precedenti. 
- PREDEFINED_NAMES: un elenco di nomi predefiniti per le VM da creare. Se utilizzi questo flag e specifichi - COUNT,- COUNTdeve corrispondere al numero di nomi forniti.
- ZONE: la zona in cui creare le VM 
- COUNT: il numero di VM da creare. Questo deve essere inferiore o uguale al numero di VM consentito da - NAME_PATTERN. In alternativa, se utilizzi- --predefined-names, non devi specificare- COUNT, ma se lo fai, questo deve corrispondere al numero di nomi forniti.
- MIN_COUNT: il numero minimo di VM da creare. La tabella seguente descrive il comportamento della richiesta a seconda di come viene impostato questo flag: - Valore - Descrizione - Non impostato - Il valore predefinito è - COUNT. Se Compute Engine non riesce a creare il numero di VM specificato da- COUNT, la richiesta non va a buon fine e non viene creata alcuna VM.- 1- Compute Engine crea il maggior numero possibile di VM, fino a - COUNT.- Maggiore di - 1e inferiore a- COUNT- Compute Engine crea almeno - MIN_COUNTVM fino a un massimo di- COUNT. Se non è possibile creare- MIN_COUNTVM, la richiesta non va a buon fine e non viene creata alcuna VM.
 RESTPer creare più VM contemporaneamente in una zona, utilizza il seguente metodo instances.bulkInsert:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/bulkInsert { ... "namePattern": "NAME_PATTERN", "perInstanceProperties": { "PREDEFINED_NAME_1": {}, "PREDEFINED_NAME_2": {}, ... }, "count": COUNT, "minCount": MIN_COUNT, ... }Sostituisci quanto segue: - PROJECT_ID: l'ID progetto 
- ZONE: la zona in cui creare le VM 
- NAME_PATTERN: il pattern del nome delle VM. Specifica questa opzione o - perInstanceProperties. Utilizza una sequenza di caratteri hash (- #) per consentire a Compute Engine di sostituirla con una sequenza di numeri. Ad esempio, l'utilizzo di- vm-#per il pattern del nome genera VM con nomi come- vm-1e- vm-2, fino al numero di VM specificato da- --count, che deve essere inferiore o uguale al numero di VM consentito dal pattern del nome.- Quando utilizzi un pattern del nome, Compute Engine cerca di evitare eventuali conflitti controllando i nomi delle VM esistenti create da richieste precedenti. 
- PREDEFINED_NAME_1, PREDEFINED_NAME_2, ...: un elenco di nomi predefiniti per le VM da creare. Specifica questa opzione o - namePattern. Se utilizzi questo flag e specifichi- COUNT,- COUNTdeve corrispondere al numero di nomi forniti.
- COUNT: il numero di VM da creare. Questo deve essere inferiore o uguale al numero di VM consentito da - NAME_PATTERN. In alternativa, se utilizzi- perInstanceProperties, non devi specificare- COUNT, ma se lo fai, questo deve corrispondere al numero di nomi forniti.
- MIN_COUNT: il numero minimo di VM da creare. La tabella seguente descrive il comportamento della richiesta a seconda di come viene impostato questo flag: - Valore - Descrizione - Non impostato - Il valore predefinito è - COUNT. Se Compute Engine non riesce a creare il numero di VM specificato da- COUNT, la richiesta non va a buon fine e non viene creata alcuna VM.- 1- Compute Engine crea il maggior numero possibile di VM, fino a - COUNT.- Maggiore di - 1e inferiore a- COUNT- Compute Engine crea almeno - MIN_COUNTVM fino a un massimo di- COUNT. Se non è possibile creare- MIN_COUNTVM, la richiesta non va a buon fine e non viene creata alcuna VM.
 Crea più VM contemporaneamente con nomi host personalizzatiPuoi creare più VM con nomi host personalizzati in una regione o in una zona utilizzando gcloud CLI o l'API Compute Engine. Devi configurare manualmente il record DNS per il nome host personalizzato. Per ulteriori informazioni, consulta le limitazioni. Se non specifichi un nome host, Compute Engine ne imposta uno per le VM su uno dei seguenti valori: - VM_NAME.c.PROJECT_ID.internalquando attivi il DNS globale
- VM_NAME.ZONE.c.PROJECT_ID.internalquando attivi il DNS di zona
 Per ulteriori informazioni, consulta Nomi DNS interni. gcloudPer creare più VM contemporaneamente con nomi host personalizzati in una regione specifica, utilizza il seguente comando gcloud beta compute instances bulk create.gcloud beta compute instances bulk create \ ( --name-pattern="NAME_PATTERN" | --predefined-names=[PREDEFINED_NAMES] ) \ --per-instance-hostnames=[VM_NAME=HOSTNAME,...] \ --zone=REGION \ --count=COUNT \ [ --min-count=MIN_COUNT ] [--location-policy=LOCATION_POLICY \ ] [--target-distribution-shape=TARGET_DISTRIBUTION_SHAPE ]Sostituisci quanto segue: - NAME_PATTERN: il pattern del nome delle VM. Utilizza una sequenza di caratteri hash ( - #) per consentire a Compute Engine di sostituirla con una sequenza di numeri. Ad esempio, l'utilizzo di- vm-#per il pattern del nome genera VM con nomi come- vm-1e- vm-2, fino al numero di VM specificato da- --count, che deve essere inferiore o uguale al numero di VM consentito dal pattern del nome.- Quando utilizzi un pattern del nome, Compute Engine cerca di evitare eventuali conflitti controllando i nomi delle VM esistenti create da richieste precedenti. 
- PREDEFINED_NAMES: un elenco di nomi predefiniti per le VM da creare. Se utilizzi questo flag e specifichi - COUNT,- COUNTdeve corrispondere al numero di nomi forniti.
- [VM_NAME=HOSTNAME, ...]: un elenco di coppie chiave/valore di nomi predefiniti per le VM e nomi host di dominio completi da assegnare alle VM. I nomi host personalizzati devono essere conformi ai requisiti per i nomi host validi definiti nel documento RFC 1035. 
- REGION: la zona in cui creare le VM. 
- COUNT: il numero di VM da creare. Questo deve essere inferiore o uguale al numero di VM consentito da - NAME_PATTERN. In alternativa, se utilizzi- --predefined-names, non devi specificare- COUNT, ma se lo fai, questo deve corrispondere al numero di nomi forniti.
- MIN_COUNT: il numero minimo di VM da creare. La tabella seguente descrive il comportamento della richiesta a seconda di come viene impostato questo flag: - Valore - Descrizione - Non impostato - Il valore predefinito è - COUNT. Se Compute Engine non riesce a creare il numero di VM specificato da- COUNT, la richiesta non va a buon fine e non viene creata alcuna VM.- 1- Compute Engine crea il maggior numero possibile di VM, fino a - COUNT.- Maggiore di - 1e inferiore a- COUNT- Compute Engine crea almeno - MIN_COUNTVM fino a un massimo di- COUNT. Se non è possibile creare- MIN_COUNTVM, la richiesta non va a buon fine e non viene creata alcuna VM.
- LOCATION_POLICY: le zone da includere o escludere all'interno di una regione. Utilizza un elenco di coppie chiave/valore, con la zona come chiave e la policy come valore. I valori validi per la policy sono - ALLOW, ovvero il valore predefinito, e- DENY. Di seguito è riportato un valore di esempio per questo campo:- "locations": { "zones/us-central1-a": { "preference": "ALLOW" }, "zones/us-central1-c": { "preference": "DENY" }, ... },
- TARGET_DISTRIBUTION_SHAPE: la distribuzione delle VM nelle zone specificate. Utilizza il campo - locationPolicyper specificare le zone. La tabella seguente mostra i valori validi per questo campo:- Valore - Descrizione - ANY_SINGLE_ZONE- Applica il posizionamento delle VM in una singola zona e dà la priorità all'utilizzo delle prenotazioni inutilizzate. Utilizza questo valore per evitare il traffico in uscita dalla rete tra zone o per ridurre la latenza della rete. Questo è il valore predefinito. - BALANCED- Tenta di distribuire le VM in modo uniforme in tutte le zone della regione. - ANY- Consente la distribuzione delle VM in più zone di una regione. Sceglie zone con risorse disponibili e che massimizzano le prenotazioni di zona non utilizzate. 
 RESTPer creare più VM contemporaneamente con nomi host personalizzati in una regione specifica, utilizza il seguente metodo instances.bulkInsert:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instances/bulkInsert { ... "namePattern": "NAME_PATTERN", "perInstanceProperties": { "PREDEFINED_NAME_1": {"hostname": HOSTNAME_1}, "PREDEFINED_NAME_2": {"hostname": HOSTNAME_2}, ... }, "count": COUNT, "minCount": MIN_COUNT, "locationPolicy": { "LOCATION_POLICY" }, "targetShape": "TARGET_DISTRIBUTION_SHAPE" ... }Sostituisci quanto segue: - PROJECT_ID: l'ID progetto 
- REGION: la regione in cui creare le VM 
- NAME_PATTERN: il pattern del nome delle VM. Specifica questa opzione o - perInstanceProperties. Utilizza una sequenza di caratteri hash (- #) per consentire a Compute Engine di sostituirla con una sequenza di numeri. Ad esempio, l'utilizzo di- vm-#per il pattern del nome genera VM con nomi come- vm-1e- vm-2, fino al numero di VM specificato da- --count, che deve essere inferiore o uguale al numero di VM consentito dal pattern del nome.- Quando utilizzi un pattern del nome, Compute Engine cerca di evitare eventuali conflitti controllando i nomi delle VM esistenti create da richieste precedenti. 
- PREDEFINED_NAME_1, PREDEFINED_NAME_2, ...: un elenco di nomi predefiniti per le VM da creare. Specifica questa opzione o - namePattern. Se utilizzi questo flag e specifichi- COUNT,- COUNTdeve corrispondere al numero di nomi forniti.
- HOSTNAME_1, HOSTNAME_2, ...: i nomi host di dominio completi che vuoi assegnare alle VM. I nomi host personalizzati devono essere conformi ai requisiti per i nomi host validi definiti nel documento RFC 1035. - Ad esempio, per creare due VM - vm-1e- vm-2con nomi host personalizzati, rispettivamente- my-host1234.example.come- test.example.com, specifica la proprietà- hostnamein- perInstancePropertiescome segue:- { ... "perInstanceProperties": { "vm-1": { "hostname": "my-host1234.example.com" }, "vm-2": { "hostname": "test.example.com" }, ...} },
- COUNT: il numero di VM da creare. Questo deve essere inferiore o uguale al numero di VM consentito da - NAME_PATTERN. In alternativa, se utilizzi- perInstanceProperties, non devi specificare- COUNT, ma se lo fai, questo deve corrispondere al numero di nomi forniti.
- MIN_COUNT: il numero minimo di VM da creare. La tabella seguente descrive il comportamento della richiesta a seconda di come viene impostato questo flag: - Valore - Descrizione - Non impostato - Il valore predefinito è - COUNT. Se Compute Engine non riesce a creare il numero di VM specificato da- COUNT, la richiesta non va a buon fine e non viene creata alcuna VM.- 1- Compute Engine crea il maggior numero possibile di VM, fino a - COUNT.- Maggiore di - 1e inferiore a- COUNT- Compute Engine crea almeno - MIN_COUNTVM fino a un massimo di- COUNT. Se non è possibile creare- MIN_COUNTVM, la richiesta non va a buon fine e non viene creata alcuna VM.
- LOCATION_POLICY: le zone da includere o escludere all'interno di una regione. Utilizza un elenco di coppie chiave/valore, con la zona come chiave e la policy come valore. I valori validi per la policy sono - ALLOW, ovvero il valore predefinito, e- DENY. Di seguito è riportato un valore di esempio per questo campo:- "locations": { "zones/us-central1-a": { "preference": "ALLOW" }, "zones/us-central1-c": { "preference": "DENY" }, ... },
- TARGET_DISTRIBUTION_SHAPE: la distribuzione delle VM nelle zone specificate. Utilizza il campo - locationPolicyper specificare le zone. La tabella seguente mostra i valori validi per questo campo:- Valore - Descrizione - ANY_SINGLE_ZONE- Applica il posizionamento delle VM in una singola zona e dà la priorità all'utilizzo delle prenotazioni inutilizzate. Utilizza questo valore per evitare il traffico in uscita dalla rete tra zone o per ridurre la latenza della rete. Questo è il valore predefinito. - BALANCED- Tenta di distribuire le VM in modo uniforme in tutte le zone della regione. - ANY- Consente la distribuzione delle VM in più zone di una regione. Sceglie zone con risorse disponibili e che massimizzano le prenotazioni di zona non utilizzate. 
 Controlla lo stato di una richiesta di creazione collettiva di VMQuando crei una richiesta di mutazione, Compute Engine restituisce una risorsa operationdi cui puoi eseguire il polling per ottenere lo stato dell'operazione. Per ulteriori informazioni, consulta Gestione di risposte dell'API.Per conoscere lo stato di una richiesta di inserimento collettivo, invia una richiesta HTTP GETalla risorsaoperation:GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/operations/OPERATION_ID Per conoscere lo stato di una richiesta di inserimento collettivo a livello di regione, invia quanto segue: GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/operations/OPERATION_ID Sostituisci quanto segue: - PROJECT_ID: l'ID del progetto in cui stai creando le VM
- REGION: la regione in cui stai creando le VM
- ZONE: la zona in cui stai creando le VM
- OPERATION_ID: l'ID dell'operazione di inserimento collettivo
 L'oggetto instancesBulkInsertOperationMetadatanella risposta contiene i dettagli dell'operazione per zona nel campoperLocationStatus. Per ogni zona inclusa nella richiesta di creazione collettiva,perLocationStatuscontiene i seguenti campi:- status: lo stato è uno dei seguenti:- CREATING: la creazione della VM è in corso nella zona.
- ROLLING_BACK: la richiesta non è riuscita nella zona e viene eseguito il rollback.
- DONE: la creazione o il rollback della VM è stato completato correttamente nella zona.
 
- targetVmCount: il numero di VM che Compute Engine tenta di creare nella zona. Compute Engine determina questo conteggio dopo i controlli iniziali e non cambia durante l'operazione. Quando controlli lo stato dell'operazione, questo campo è sempre presente per ogni zona.
- createdVmCount: il numero di VM già create nella zona. Questo valore non supera- targetVmCountper una determinata zona.- failedToCreateVmCount: il numero di VM non create nella zona.
- deletedVmCount: Il numero di VM eliminate nella zona nell'ambito del rollback di un'operazione non riuscita.
 
 Il campo progressnella risposta rappresenta la percentuale di completamento dell'operazione.Lo stato dell'operazione di inserimento collettivo è RUNNINGfinché Compute Engine non crea correttamente almeno un numero minimo di VM e non viene eseguita più alcuna creazione di VM o rollback della richiesta.Quando l'operazione di inserimento collettivo è in corso, dovresti visualizzare una risposta simile alla seguente: { "kind" : "compute#operation", "id": "4653028658507445766", "name": "operation-1587661030638-5a3f823c143e3-e33bbfa3-bd72185c", "operationType": "bulkInsert", "targetLink": "https://www.googleapis.com/compute/v1/projects/my-project" "targetId": 4653028658507445766, "status": "RUNNING", "progress": 2, "user": "example@google.com", "insertTime": "2023-04-23T09:57:13.474-07:00", "startTime": "2023-04-23T09:57:13.474-07:00", "selfLink": "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/operations/operation-1587661030638-5a3f823c143e3-e33bbfa3-bd72185c", "operationGroupId": "4653028658507445766", "metadata": "instances_bulk_insert_operation_metadata": { "per_location_status": { "zones/us-central1-a": { "status": "CREATING", "targetVmCount": 50, "createdVmCount": 1 } } } }In questo esempio, è stata creata un'istanza e l'operazione è completata per il 2%. L'operazione restituisce lo stato DONEquando Compute Engine crea correttamente almeno un numero minimo di VM specificato daminCounto quando completa il rollback della richiesta. Dopo aver creato correttamente il numero richiesto di VM, ricevi una risposta simile alla seguente:{ "endTime": "2023-04-23T09:58:13.474-07:00", "id": "5053101474378293244", "insertTime": "2023-04-23T09:57:13.474-07:00", "instancesBulkInsertOperationMetadata": { "perLocationStatus": { "zones/us-central1-a": { "status": "DONE", "createdVmCount": 50, "targetVmCount": 50 } } }, "kind": "compute#operation", "name": "operation-1587661030638-5a3f823c143e3-e33bbfa3-bd72185c", "operationGroupId": "4653028658507445766", "operationType": "bulkInsert", "progress": 100, "selfLink": "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/operations/operation-1587661030638-5a3f823c143e3-e33bbfa3-bd72185c", "startTime": "2023-09-11T16:21:55.629-07:00", "status": "DONE", "targetId": "625521788110", "targetLink": "https://www.googleapis.com/compute/v1/projects/my-project", "user": "example@google.com", "zone": "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a" }Per ulteriori informazioni, consulta la documentazione relativa all'oggetto instancesBulkInsertOperationMetadata.Controlla lo stato di una singola VMPer controllare lo stato di una singola VM creata da una richiesta di creazione collettiva di VM, utilizza gcloud CLI o l'API Compute Engine. gcloud- Da - Operationrestituito dalla richiesta, ottieni il valore della proprietà- operationGroupId.
- Utilizza la proprietà - operationGroupIdcome filtro con il comando- gcloud compute operations listper cercare in tutte le operazioni e in tutte le zone del progetto le VM associate alla richiesta a livello di regione o zona:- gcloud compute operations list \ --filter=(operationGroupId=OPERATION_GROUP_ID) 
- Per ottenere le altre proprietà della VM, esegui una delle seguenti operazioni: - Nell'elenco delle operazioni, - targetLinkrappresenta il percorso della VM. Utilizza il comando- gcloud compute instances describecon questo percorso come nome della VM per ottenere le relative proprietà:- gcloud compute instances describe VM_NAME 
- Utilizza il comando - gcloud compute instances listcon un filtro che includa i nomi delle VM dall'elenco delle operazioni:- gcloud compute instances list VM_NAME \ --filter=(name=VM_NAME_1) OR (name=VM_NAME_2) 
- Utilizza il comando - gcloud compute instances listper recuperare le proprietà delle VM di tutte le zone e regioni e filtrare in base a un'etichetta univoca per le istanze o ai relativi nomi:- gcloud compute instances list \ --filter=(name=VM_NAME_1) OR (name=VM_NAME_2) 
 
 REST- Da - Operationrestituito dalla richiesta, ottieni il valore della proprietà- operationGroupId.
- Utilizza la proprietà - operationGroupIdper ottenere l'elenco delle operazioni VM associate alla richiesta a livello di regione o zona:- Se hai inviato una richiesta a livello di regione, per eseguire una ricerca tra tutte le operazioni e tutte le zone del progetto, utilizza il metodo - globalOperations.aggregatedListe includi la proprietà- operationGroupIdcome filtro:- GET https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/aggregated/operations?filter=(operationGroupId=OPERATION_GROUP_ID) 
- Se hai inviato una richiesta a livello di zona, per elencare le operazioni in quella zona, utilizza il metodo - zoneOperations.gete includi la proprietà- operationGroupIdnel corpo della richiesta:- GET https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE/instances/bulkInsert { ... "operationGroupId":"OPERATION_GROUP_ID" ... }
 
- Per ottenere le altre proprietà della VM, esegui una delle seguenti operazioni: - Nell'elenco delle operazioni, - targetLinkrappresenta il percorso della VM. Utilizza il metodo- instances.getcon questo percorso come nome della VM per ottenere tutte le relative proprietà:- GET https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE/instances/VM_NAME 
- Utilizza il metodo - instances.getcon un filtro che includa i nomi delle VM dall'elenco delle operazioni:- GET https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/zones/ZONE/instances?filter=(name=VM_NAME_1) OR (name=VM_NAME_2) 
- Utilizza il metodo - instances.aggregatedListper recuperare le proprietà delle VM di tutte le zone e regioni e filtrare in base a un'etichetta univoca per le istanze o ai relativi nomi:- GET https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/aggregated/instances?filter=(name=VM_NAME_1) OR (name=VM_NAME_2) 
 
 Esempi di pseudocodiceGli esempi di pseudocodice riportati di seguito mostrano come personalizzare le richieste per la creazione collettiva di VM. Crea più VM contemporaneamente in una regione a partire da un insieme di regioniIl seguente pseudocodice descrive come creare 1000 VM in una regione a partire da un insieme di regioni. Quando si tenta di creare più VM contemporaneamente in una regione da un insieme di regioni, la richiesta controlla innanzitutto la capacità. Se la capacità non è sufficiente, la richiesta non va immediatamente a buon fine e viene eseguito un nuovo tentativo con la regione successiva all'interno dell'insieme. - Specifica il numero di VM da creare all'interno di una zona. - nTarget = 1000
- Designa le regioni in cui tentare di creare le VM. - acceptableRegions = ["us-central1", "us-east1", "us-west1"]
- Esegui l'iterazione delle regioni e tenta di creare le VM in ogni regione fino a che l'operazione non va a buon fine. - for region in acceptableRegions: call bulk API: region=region, location-policy=location-policy, count=nTarget if request succeeds and the operation succeeds: break
 Crea più VM contemporaneamente in una zonasu un tipo di macchina Il seguente pseudocodice descrive come creare più VM in una zona su un tipo di macchina specificato. Quando si tenta di creare più VM contemporaneamente sullo stesso tipo di macchina, la richiesta controlla innanzitutto la disponibilità di questi tipi di macchine. Se il tipo di macchine disponibile non è sufficiente, la richiesta non va immediatamente a buon fine immediatamente e viene eseguito un nuovo tentativo con il tipo di macchina successivo. - Specifica il numero di VM da creare e la regione in cui crearle. - nTarget = 1000 region = "us-central1"
- Specifica le famiglie di macchine su cui tentare di creare le VM. - acceptableMachineFamilies = ["n2","c2","e2","n1"]
- Esegui l'iterazione all'interno di un insieme di tipi di macchina e prova a creare le VM su un tipo specifico finché l'operazione non va a buon fine. - for family in acceptableMachineFamilies: call bulk APIs: region=region, count=nTarget, machineFamily=family if request succeeds and the operation succeeds: break
 Crea più di 5000 VM in una zonaQuando esegui un'operazione di creazione collettiva delle VM, puoi creare solo 5000 VM per ciascuna richiesta. Il seguente pseudocodice descrive come creare più di 5000 VM in una zona inviando più richieste. - Specifica il numero di VM da creare, un contatore per tenere traccia del numero totale di VM create, la regione in cui creare le VM e una variabile per memorizzare la zona in cui Compute Engine crea le VM. - nTarget = 10000 nCreated = 0 region = "us-central1" targetZone = ""
- Invia una richiesta iniziale per creare 5000 VM, salva la zona restituita dalla richiesta e aggiorna il contatore del numero di VM create. - call bulk API: region=region, count=5000 targetZone = zone chosen by bulk API nCreated += # of VMs created
- Continua a emettere richieste per creare fino a 5000 VM alla volta nella zona fino a quando Compute Engine non crea il numero specificato di VM. - while(nTarget - nCreated > 0): call bulk API: zone=targetZone, count=5000 nCreated += # of VMs created
 Crea più VM contemporaneamente e visualizzane lo statoLa procedura seguente mostra come creare un gruppo di VM con nomi predefiniti e visualizzarne lo stato: - Specifica il numero di VM da creare, la zona in cui crearle e una struttura di dati in cui memorizzare i nomi. - nTarget = 1000 targetZone = "us-central-1a" names = []
- Genera i nomi con pattern per le VM e aggiungili alla struttura di dati. - for n in range(0, 1000): names.push("instance-%d".format(n))
- Crea le VM e utilizza - perInstancePropertiesper specificare i nomi.- call bulk API(zone=targetZone, count=nTarget, names=perInstanceProperties)
- Ottieni i dettagli delle VM utilizzando il metodo - instances.listcon un filtro per i nomi delle VM di cui vuoi visualizzare i dettagli.- instances.list(filter=(name = "instance-1") OR (name = "instance-2") ...)
 Passaggi successiviDopo aver creato più VM contemporaneamente, esegui una o entrambe le seguenti operazioni per semplificarne la gestione: - Aggiungi le VM a un gruppo di istanze non gestite. L'aggiunta di VM a un gruppo di istanze non gestite consente di utilizzare Cloud Monitoring. I gruppi di istanze non gestite non forniscono un bilanciamento del carico o una gestione del ciclo di vita della VM. 
- Utilizza le etichette. Le etichette ti consentono di organizzare le risorse utilizzando coppie chiave/valore. 
 Salvo quando diversamente specificato, i contenuti di questa pagina sono concessi in base alla licenza Creative Commons Attribution 4.0, mentre gli esempi di codice sono concessi in base alla licenza Apache 2.0. Per ulteriori dettagli, consulta le norme del sito di Google Developers. Java è un marchio registrato di Oracle e/o delle sue consociate. Ultimo aggiornamento 2025-10-19 UTC. -