Questo documento descrive come creare un gruppo di istanze gestite in una singola zona. Avere tutte le VM del gruppo di istanze gestite in un'unica zona consente di ridurre al minimo la latenza, aspetto utile per alcuni carichi di lavoro, ad esempio quelli batch.
Questo tipo di gruppo di istanze gestite è noto anche come gruppo di istanze gestite a livello di zona.
Puoi anche leggere altri scenari di base per la creazione di un gruppo di istanze gestite.
Prima di iniziare
- Crea un modello di istanza, necessario per creare un gruppo di istanze gestite.
-
Se non l'hai ancora fatto, configura l'autenticazione.
L'autenticazione è il processo mediante il quale la tua identità viene verificata per l'accesso a servizi e API. Google Cloud
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:
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
Terraform
Per utilizzare gli esempi di Terraform in questa pagina in un ambiente di sviluppo locale, installa e inizializza gcloud CLI, quindi configura le credenziali predefinite dell'applicazione con le tue credenziali utente.
Per ulteriori informazioni, consulta Set up authentication for a local development environment.
REST
Per utilizzare gli esempi dell'API REST in questa pagina in un ambiente di sviluppo locale, utilizza le credenziali fornite a gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Per ulteriori informazioni, consulta Eseguire l'autenticazione per l'utilizzo di REST nella documentazione Google Cloud sull'autenticazione.
-
Limitazioni
Per visualizzare l'elenco completo delle limitazioni dei gruppi di istanze gestite, che varia in base alla configurazione utilizzata, consulta Limitazioni dei gruppi di istanze gestite.
Crea un gruppo di istanze gestite in una singola zona
Per creare un gruppo di istanze gestite in un'unica zona, utilizza la console Google Cloud, la gcloud CLI, Terraform o REST.
Autorizzazioni richieste per questa attività
Per eseguire questa attività, devi disporre delle seguenti autorizzazioni:
- Tutte le autorizzazioni necessarie per chiamare il
metodo
instanceGroupManagers.insert
.
-
Nella console Google Cloud, vai alla pagina Gruppi di istanze.
I passaggi rimanenti vengono visualizzati nella console Google Cloud.
-
Fai clic su
Crea gruppo di istanze . -
Se vuoi creare un gruppo di istanze gestite stateful, seleziona l'opzione
Nuovo gruppo di istanze gestite (stateful) . Per aiutarti a decidere, visita la pagina Quando utilizzare gruppi di istanze gestite stateful. - Assegna un nome e, facoltativamente, una descrizione al gruppo di istanze.
- Scegli un modello di istanza per il gruppo di istanze o creane uno nuovo.
-
Specifica il
numero di VM per questo gruppo. Ricorda di eseguire il provisioning di un numero sufficiente di VM per supportare la tua applicazione in caso di errore della zona. -
In
Località , seleziona Zona singola. - Seleziona la Regione e la Zona in cui vuoi creare il tuo gruppo di istanze gestite. Se hai scelto un modello di istanza regionale, viene selezionata automaticamente l'opzione Regione in base alla regione del modello.
- Per i gruppi di istanze gestite stateless, la scalabilità automatica è abilitata per impostazione predefinita. Con la scalabilità automatica, il tuo gruppo aggiunge o rimuove automaticamente le istanze in base al suo utilizzo.
- Se vuoi, abilita la riparazione automatica per eseguire i controlli di integrità basati su applicazioni sulle VM all'interno del gruppo.
- Fai clic su Crea per creare il nuovo profilo.
Se non hai già creato un modello di istanza che specifica il tipo di macchina, l'immagine del disco di avvio, la rete e altre proprietà della VM che vuoi per ogni VM nel tuo gruppo di istanze gestite, crea un modello di istanza.
Crea un gruppo di istanze gestite con il
comando instance-groups managed create
e specifica il nome del gruppo, la dimensione del gruppo, il modello di istanza e la zona.
gcloud compute instance-groups managed createINSTANCE_GROUP_NAME \ --sizeSIZE \ --templateINSTANCE_TEMPLATE \ --zoneZONE
Sostituisci quanto segue:
INSTANCE_GROUP_NAME
: il nome di questo gruppo di istanze.SIZE
: la dimensione del gruppo di istanze.INSTANCE_TEMPLATE
: il nome del modello di istanza da utilizzare per questo gruppo. Per un modello di istanza regionale, devi specificare l'URL completo o parziale del modello. Un esempio di URL completo èhttps://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1/instanceTemplates/example-regional-instance-template
, mentre un URL parziale èprojects/example-project/regions/us-central1/instanceTemplates/example-regional-instance-template
.ZONE
: una delle zone disponibili per Compute Engine. Se vuoi distribuire le VM del gruppo di istanze gestite in più zone di una regione, consulta Creare un gruppo di istanze gestite a livello di regione.
Facoltativamente, puoi fornire il flag --base-instance-name
. Poiché queste VM si basano su un modello comune, a ogni VM viene assegnata una stringa casuale come parte del nome della VM. Il nome base viene anteposto a questa stringa casuale. Ad esempio, se imposti il nome base su test
, le VM avranno nomi come test-yahs
e test-qtyz
. Se hai bisogno di nomi specifici, consulta
Creare istanze con nomi specifici nei MIG.
Ad esempio, il seguente comando crea un gruppo di istanze denominato
example-group, con il nome della VM di base test
. Il gruppo contiene tre
istanze:
gcloud compute instance-groups managed create example-group \ --base-instance-name test \ --size 3 \ --template an-instance-template \ --zone us-central1-f
Se non hai già creato un modello di istanza che specifica il tipo di macchina, l'immagine del disco di avvio, la rete e altre proprietà della VM che vuoi per ogni VM nel tuo gruppo di istanze gestite, crea un modello di istanza.
Per creare un gruppo di istanze gestite a livello di zona, puoi utilizzare la google_compute_instance_group_manager
risorsa.
Per scoprire come applicare o rimuovere una configurazione Terraform, consulta Comandi Terraform di base.
Se non hai già creato un modello di istanza che specifica il tipo di macchina, l'immagine del disco di avvio, la rete e altre proprietà della VM che vuoi per ogni VM nel tuo gruppo di istanze gestite, crea un modello di istanza.
Crea un gruppo di istanze gestite con il
metodo instanceGroupManagers.insert
.
Nel corpo della richiesta, includi il nome del gruppo, la dimensione del gruppo e l'URL del modello di istanza.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID /zones/ZONE /instanceGroupManagers { "versions": [ { "instanceTemplate": "global/instanceTemplates/INSTANCE_TEMPLATE " } ], "name": "INSTANCE_GROUP_NAME ", "targetSize":SIZE }
Sostituisci quanto segue:
PROJECT_ID
: l'ID progetto per la richiesta.ZONE
: la zona per la richiesta. Se vuoi distribuire le VM del gruppo di istanze gestite in più zone di una regione, sostituirezones/ZONE
conregions/REGION
e specificare una regione. Per ulteriori informazioni, consulta Creare un gruppo di istanze gestite a livello di regione.INSTANCE_GROUP_NAME
: il nome di questo gruppo di istanze.SIZE
: la dimensione del gruppo di istanze.INSTANCE_TEMPLATE
: il modello di istanza da utilizzare per questo gruppo.
Se vuoi, puoi fornire il campo base-name
. Poiché queste VM si basano su un modello comune, a ogni VM viene assegnata una stringa casuale come parte del nome della VM. Il nome base viene anteposto a questa stringa casuale. Ad esempio, se imposti il nome base su test
, le VM avranno nomi come test-yahs
e test-qtyz
. Se hai bisogno di nomi specifici, consulta
Creare istanze con nomi specifici nei MIG.
A seconda di come configuri e intervieni su un gruppo di istanze gestite, vari criteri e azioni possono influire sulle istanze del gruppo. Per determinare quali istanze gestite sono attive, consulta Controllare lo stato delle istanze gestite.
Passaggi successivi
- Configura la riparazione automatica basata su applicazione, che verifica periodicamente che l'applicazione risponda come previsto su ciascuna VM del gruppo di istanze gestite e ricrea automaticamente le VM non rispondenti.
- Attiva la scalabilità automatica per aggiungere o eliminare automaticamente le VM dal tuo gruppo di istanze gestite in base all'aumento o alla riduzione del carico.
- Scopri come applicare una nuova configurazione a tutte le VM o a un sottoinsieme di VM in un gruppo di istanze gestite impostando e applicando un nuovo modello di istanza, una configurazione per tutte le istanze o una configurazione per istanza.
- Conserva i dischi, i metadati e gli indirizzi IP durante eventi invasivi come la ricreazione, la riparazione automatica e gli aggiornamenti di VM aggiungendo una configurazione stateful.
- Scopri come utilizzare le istanze gestite, ad esempio per eliminare, abbandonare e ricreare le VM in un gruppo di istanze gestite.
- Visualizza le informazioni sui gruppi di istanze gestite e sulle relative VM.
- Scopri come aggiungere un frontend del bilanciatore del carico HTTP(S) esterno al tuo gruppo di istanze. Per informazioni su altri tipi di bilanciatori del carico, consulta la Panoramica del bilanciamento del carico.