Questo documento descrive come configurare il gruppo di istanze gestite in modo da applicare il modello di istanza e le configurazioni per istanza più recenti quando viene ricreata una VM durante le operazioni di riparazione. L'applicazione dell'ultima configurazione disponibile durante un'operazione di riparazione è nota anche come aggiornamento durante la riparazione. Questo documento descrive anche come verificare se l'aggiornamento alla riparazione è abilitato nel MIG e, se abilitato, come disattivarlo.
Per impostazione predefinita, durante una riparazione, un gruppo di istanze gestite ricrea una VM utilizzando la stessa configurazione dell'istanza utilizzata inizialmente per crearla. Se sono disponibili aggiornamenti per il modello di istanza o le configurazioni per istanza del gruppo, puoi applicare queste modifiche a una VM in fase di riparazione.
Se vuoi applicare automaticamente gli aggiornamenti di configurazione a tutte le VM o a un insieme di VM (PROACTIVE
) o aggiornare in modo selettivo istanze specifiche (OPPORTUNISTIC
), consulta la pagina relativa all'applicazione di nuove configurazioni alle VM in un gruppo di istanze gestite.
Prima di iniziare
-
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.
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.
-
Configurare l'aggiornamento in caso di riparazione
Per configurare l'aggiornamento al termine della riparazione, utilizza la console Google Cloud, gcloud CLI o REST.
Nella console Google Cloud, vai alla pagina Gruppi di istanze.
Fai clic sul nome del gruppo di istanze gestite in cui vuoi configurare l'aggiornamento al termine della riparazione.
Fai clic su Modifica per modificare il gruppo di istanze gestite.
Nella sezione Ciclo di vita dell'istanza VM, per Aggiornamenti durante la riparazione delle istanze VM, seleziona Aggiorna la configurazione dell'istanza.
Fai clic su Salva.
Per un gruppo MIG esistente, utilizza il
comando update
:
gcloud compute instance-groups managed updateMIG_NAME \ --force-update-on-repair
Per un nuovo gruppo di istanze gestite, utilizza il
comando create
:
gcloud compute instance-groups managed createMIG_NAME \ --templateINSTANCE_TEMPLATE \ --sizeSIZE \ --force-update-on-repair
Sostituisci quanto segue:
MIG_NAME
: il nome del gruppo di istanze.INSTANCE_TEMPLATE
: il nome del modello di istanza da utilizzare per il gruppo.SIZE
: la dimensione target del gruppo di istanze.
Per un gruppo di istanze gestite di zona esistente, utilizza il
metodo instanceGroupManagers.patch
oppure, per un gruppo di istanze gestite regionale esistente, utilizza il
metodo regionInstanceGroupManagers.patch
.
Esegui la seguente chiamata per configurare l'aggiornamento al termine della riparazione in un gruppi di istanze gestite zonale esistente:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID /zones/ZONE /instanceGroupManagers/MIG_NAME { "instanceLifecyclePolicy": { "forceUpdateOnRepair": YES } }
Per un nuovo gruppo di istanze gestite a livello di zona, utilizza il
metodo instanceGroupManagers.insert
oppure, per un nuovo gruppo di istanze gestite a livello di regione, utilizza il
metodo regionInstanceGroupManagers.insert
.
Esegui la seguente chiamata per configurare l'aggiornamento al termine della riparazione quando crei un gruppo di istanze gestite a livello di zona:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID /zones/ZONE /instanceGroupManagers { "name": "MIG_NAME ", "instanceTemplate": "INSTANCE_TEMPLATE ", "targetSize":SIZE , "instanceLifecyclePolicy": { "forceUpdateOnRepair": YES } }
Sostituisci quanto segue:
PROJECT_ID
: il tuo ID progetto.ZONE
: la zona in cui si trova il gruppo di istanze gestite.MIG_NAME
: il nome del gruppo di istanze.INSTANCE_TEMPLATE
: il nome del modello di istanza da utilizzare per il gruppo.SIZE
: la dimensione target del gruppo di istanze.
Controlla se l'aggiornamento durante la riparazione è attivo
Per impostazione predefinita, un gruppo di istanze gestite non aggiorna una VM durante una riparazione. Per verificare se l'aggiornamento al termine della riparazione è abilitato per il tuo MIG, utilizza la console Google Cloud, l'interfaccia a riga di comando gcloud o REST per visualizzare la configurazione dell'aggiornamento al termine della riparazione.
Nella console Google Cloud, vai alla pagina Gruppi di istanze.
Fai clic sul nome del gruppo di istanze gestite di cui vuoi controllare la configurazione.
Fai clic sulla scheda Dettagli.
Nella sezione Ciclo di vita delle istanze VM, controlla l'opzione selezionata per Aggiornamenti durante la riparazione delle istanze VM. Se è selezionata l'opzione Aggiorna la configurazione dell'istanza, l'aggiornamento al termine della riparazione è abilitato.
Utilizza il
comando describe
come segue:
gcloud compute instance-groups managed describeMIG_NAME \ --format="(instanceLifecyclePolicy)"
Nel corpo della risposta, controlla il campo forceUpdateOnRepair
, che deve avere uno dei seguenti valori:
NO
: valore predefinito. Il gruppo di istanze gestite non aggiorna le VM quando vengono riparate.YES
: il gruppo di istanze gestite aggiorna le VM durante la riparazione.
Di seguito è riportato un output di esempio:
instanceLifecyclePolicy: forceUpdateOnRepair: YES
Per un gruppo di istanze gestite a livello di zona, utilizza il
metodo instanceGroupManagers.get
oppure, per un gruppo di istanze gestite a livello di regione, utilizza il
metodo regionInstanceGroupManagers.get
.
Ad esempio, in un gruppo di istanze gestite zonale, utilizza il seguente comando:
GET https://compute.googleapis.com/compute/v1/PROJECT_ID /zones/ZONE /instanceGroupManagers/MIG_NAME
Nel corpo della risposta, controlla il campo instanceLifecyclePolicy.forceUpdateOnRepair
, che ha uno dei seguenti valori:
NO
: valore predefinito. Il gruppo di istanze gestite non aggiorna le VM quando vengono riparate.YES
: il gruppo di istanze gestite aggiorna le VM durante la riparazione.
Di seguito è riportato un esempio di risposta:
{ ... "name": "example-mig", "targetSize": 12, ... "instanceLifecyclePolicy": { "forceUpdateOnRepair": "YES" }, ... }
Sostituisci quanto segue:
PROJECT_ID
: il tuo ID progetto.ZONE
: la zona in cui si trova il gruppo di istanze gestite.MIG_NAME
: il nome del gruppo di istanze.
Disattivare l'aggiornamento durante la riparazione
Quando il gruppo di istanze gestite ripara una VM, se vuoi che utilizzi il modello di istanza originale o le configurazioni per istanza utilizzate per crearla, devi disattivare l'aggiornamento durante la riparazione. Per impostazione predefinita, l'aggiornamento alla riparazione è disabilitato per un gruppo di istanze gestite.
Utilizza la console Google Cloud, l'interfaccia a riga di comando gcloud o REST per disattivare l'aggiornamento durante la riparazione.
Nella console Google Cloud, vai alla pagina Gruppi di istanze.
Fai clic sul nome del gruppo di istanze gestite in cui vuoi disattivare l'aggiornamento al termine della riparazione.
Fai clic su Modifica per modificare il gruppo di istanze gestite.
Nella sezione Ciclo di vita dell'istanza VM, per Aggiornamenti durante la riparazione delle istanze VM, seleziona Mantieni la stessa configurazione dell'istanza.
Fai clic su Salva.
Utilizza il comando update
per impostare il flag --no-force-update-on-repair
come segue:
gcloud compute instance-groups managed updateMIG_NAME \ --no-force-update-on-repair
Per un gruppo di istanze gestite a livello di zona, utilizza il
metodo instanceGroupManagers.patch
oppure, per un gruppo di istanze gestite a livello di regione, utilizza il
metodo regionInstanceGroupManagers.patch
.
Ad esempio, per disattivare l'aggiornamento durante la riparazione per un gruppo di istanze gestite zonale, utilizza il seguente comando:
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME { "instanceLifecyclePolicy": { "forceUpdateOnRepair": NO } }
Sostituisci quanto segue:
PROJECT_ID
: il tuo ID progetto.ZONE
: la zona in cui si trova il gruppo di istanze gestite.MIG_NAME
: il nome del gruppo di istanze.
Passaggi successivi
- Configura il controllo di integrità e la riparazione automatica dell'applicazione.
- Se hai configurato un controllo di integrità basato su applicazione per il tuo gruppo di istanze gestite, monitora le modifiche dello stato di integrità della VM.