In un gruppo di istanze gestite a livello di regione, per mantenere un numero pari di istanze di macchine virtuali (VM) nell'ambito zone della regione, utilizza ridistribuzione proattiva delle istanze. Questa opzione di configurazione massimizza la disponibilità dell'applicazione nel di un errore a livello di zona.
La ridistribuzione proattiva delle istanze è attivata per impostazione predefinita per i gruppi di istanze gestite a livello di regione. Quando la ridistribuzione proattiva delle istanze è disattivata, il gruppo non tenta per ridistribuire proattivamente le VM tra le zone. Disattivazione dell'istanza proattiva in corso... ridistribuzione è utile se devi:
- Elimina o abbandona le VM dal gruppo senza influire sulle altre VM in esecuzione. Ad esempio, puoi eliminare una VM di worker batch al termine del job senza influire sugli altri worker.
- Proteggi le VM con carichi di lavoro stateful da eliminazioni automatiche indesiderate grazie alla ridistribuzione proattiva.
- Imposta la forma di distribuzione target del gruppo di istanze gestite su
BALANCED
oANY_SINGLE_ZONE
.
Puoi disabilitare la ridistribuzione proattiva delle istanze quando crei un un gruppo di istanze gestite a livello di regione. Puoi anche abilitarlo o disabilitarlo per un gruppo di istanze gestite a livello di regione esistente.
Prima di iniziare
-
Se non l'hai già fatto, configura l'autenticazione.
Autenticazione è
Il processo di verifica dell'identità per l'accesso ai servizi e alle API di Google Cloud.
Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti su Compute Engine come segue.
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
REST
Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, utilizzi le credenziali che fornisci a gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Per ulteriori informazioni, vedi Esegui l'autenticazione per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud.
-
Creazione di un gruppo con ridistribuzione proattiva delle istanze disabilitata
Per creare un gruppo di istanze gestite a livello di regione con ridistribuzione proattiva delle istanze disabilitata, Utilizza la console Google Cloud , il gcloud CLI Terraform o REST.
Console
- Nella console Google Cloud, vai alla pagina Gruppi di istanze.
- Fai clic su Crea gruppo di istanze per creare un nuovo gruppo di istanze.
- 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. Per carichi di lavoro ad alta disponibilità, ricordati di provisioning di VM a sufficienza per supportare la tua applicazione in caso di errore di una zona.
- In Località, seleziona Più zone.
- Scegli un'area geografica e seleziona le zone che vuoi utilizzare.
- Per disabilitare la ridistribuzione proattiva delle istanze, in Ridistribuzione istanze, deseleziona Consenti ridistribuzione istanze casella di controllo.
- Continua con il resto della procedura di creazione del gruppo di istanze gestite.
gcloud
crea un nuovo gruppo di istanze gestite a livello di regione senza un'istanza proattiva
ridistribuzione, utilizza
Comando gcloud compute instance-groups managed create
con il flag --instance-redistribution-type
impostato su NONE
.
gcloud compute instance-groups managed create INSTANCE_GROUP_NAME \ --template INSTANCE_TEMPLATE_NAME \ --size TARGET_SIZE \ --zones ZONES \ --instance-redistribution-type NONE
Sostituisci quanto segue:
INSTANCE_GROUP_NAME
: il nome del gruppo di istanze gestiteINSTANCE_TEMPLATE_NAME
: il nome dell'istanza modello da utilizzare per il gruppoTARGET_SIZE
: la dimensione target del gruppoZONES
: l'elenco di zone in una singola regione in cui vuoi eseguire il deployment delle VM
Ad esempio:
gcloud compute instance-groups managed create example-rmig \ --template example-template \ --size 30 \ --zones us-east1-b,us-east1-c \ --instance-redistribution-type NONE
Terraform
Se non hai già creato un modello di istanza, che specifica tipo di macchina, immagine disco di avvio, rete e altre proprietà VM per ogni VM nel gruppo di istanze gestite, crea un modello di istanza.
Per creare un gruppo di istanze gestite a livello di regione, utilizza google_compute_region_instance_group_manager
risorsa.
Per disabilitare la ridistribuzione proattiva delle istanze in un gruppo di istanze gestite a livello di regione, includi il parametro
update_policy
e imposta il campo instance_redistribution_type
su
NONE
.
Per scoprire come applicare o rimuovere una configurazione Terraform, consulta: Comandi Terraform di base.
REST
Per creare un gruppo di istanze gestite a livello di regione senza scalabilità automatica senza
di ridistribuzione delle istanze, effettua una richiesta POST
regionInstanceGroupManagers.insert
. Nel corpo della richiesta, includi la proprietà updatePolicy
e imposta il relativo campo instanceRedistributionType
su NONE
.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME { "name": "INSTANCE_GROUP_NAME", "instanceTemplate": "global/instanceTemplates/INSTANCE_TEMPLATE_NAME", "targetSize": TARGET_SIZE, "distributionPolicy": { "zones": [ {"zone": "zones/ZONE"}, {"zone": "zones/ZONE"} ] }, "updatePolicy": { "instanceRedistributionType": "NONE" } }
Sostituisci quanto segue:
PROJECT_ID
: l'ID progetto per questa richiestaREGION
: la regione per il gruppo di istanzeINSTANCE_GROUP_NAME
: il nome del gruppo di istanze gestiteINSTANCE_TEMPLATE_NAME
: il nome dell'istanza modello da utilizzare per il gruppoTARGET_SIZE
: la dimensione target del gruppo di istanzeZONE
: il nome di una zona nella regione in cui vuoi eseguire il deployment delle VM
Disattivazione della ridistribuzione proattiva delle istanze
Per disabilitare o riattivare la ridistribuzione proattiva delle istanze, utilizza il metodo Console Google Cloud , il gcloud CLI o REST.
Console
- Nella console Google Cloud, vai alla pagina Gruppi di istanze.
- Nella colonna Nome dell'elenco, fai clic sul nome dell'istanza. gruppo che desideri modificare.
- Fai clic su Modifica per modificare questo gruppo di istanze gestite.
- In Ridistribuzione delle istanze, deseleziona la casella di controllo Consenti ridistribuzione istanze.
- Fai clic su Salva.
gcloud
Per disattivare la ridistribuzione proattiva delle istanze, imposta il parametro
--instance-redistribution-type
per NONE
utilizzando un comando come
che segue:
Per un gruppo di istanze gestite a livello di regione senza scalabilità automatica o un gruppo di istanze gestite a livello di regione con scalabilità automatica con modalità impostato su
OFF
oONLY_SCALE_OUT
, utilizza Comandocompute instance-groups managed update
.Ad esempio:
gcloud compute instance-groups managed update INSTANCE_GROUP_NAME \ --instance-redistribution-type NONE \ --region REGION
Per un gruppo di istanze gestite a livello di regione con scalabilità automatica mode impostata su
ON
, utilizza comandocompute instance-groups managed update
beta.Ad esempio:
gcloud beta compute instance-groups managed update INSTANCE_GROUP_NAME \ --instance-redistribution-type NONE \ --region REGION
Sostituisci quanto segue:
INSTANCE_GROUP_NAME
: il nome del gruppo di istanze gestiteREGION
: la regione del gruppo di istanze
REST
Per disattivare la ridistribuzione proattiva delle istanze, imposta il parametro
instanceRedistributionType
a NONE
utilizzando un metodo come il seguente:
Per un gruppo di istanze gestite a livello di regione senza scalabilità automatica o un gruppo di istanze gestite a livello di regione con scalabilità automatica con modalità impostato su
OFF
oONLY_SCALE_OUT
, utilizzaregionInstanceGroupManagers.patch
.Ad esempio:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME { "updatePolicy": { "instanceRedistributionType": "NONE" } }
Per un gruppo di istanze gestite a livello di regione con scalabilità automatica mode impostata su
ON
, utilizza metodoregionInstanceGroupManagers.patch
beta.Ad esempio:
PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME { "updatePolicy": { "instanceRedistributionType": "NONE" } }
Sostituisci quanto segue:
PROJECT_ID
: l'ID progetto per questa richiestaREGION
: la regione per il gruppo di istanzeINSTANCE_GROUP_NAME
: il nome del gruppo di istanze gestite
Attivazione della ridistribuzione proattiva delle istanze
Per attivare la ridistribuzione proattiva delle istanze, utilizza un comando simile a quello
la disattivazione della ridistribuzione proattiva delle istanze,
ma imposta il tipo di ridistribuzione dell'istanza su PROACTIVE
.
Se hai eliminato o abbandonato manualmente alcune istanze gestite, con una conseguente distribuzione non uniforme delle VM nella regione, prima di poter riattivare la ridistribuzione proattiva delle istanze, devi riequilibrare manualmente il gruppo. La la differenza nel numero di VM tra due zone non deve superare 1 VM.
Un gruppo di istanze gestite a livello di regione non consente l'attivazione proattiva ridistribuzione delle istanze quando le VM sono distribuite in modo non uniforme tra le zone (la differenza nel numero di VM tra due zone è pari o superiore a 2 VM). Questo serve a evitare l'eliminazione automatica non intenzionale delle VM dalle zone con più VM, il che verrebbe attivato per raggiungere una distribuzione uniforme.
Passaggi successivi
- Scopri come visualizzare le informazioni sui gruppi di istanze gestite e sulle relative VM.
- Scopri di più su come lavorare con le VM in un gruppo di istanze gestite, tra cui l'aggiunta, la ricreazione e la rimozione di istanze.