Questa pagina spiega come configurare le istanze di macchine virtuali (VM) in un gruppo di istanze gestite (MIG) e i metodi che puoi utilizzare per applicare la configurazione alle VM esistenti nel gruppo.
Specifica la configurazione prevista per le VM in un MIG utilizzando i seguenti componenti di configurazione delle VM:
- (Obbligatorio) Template di istanza
- (Facoltativo) Configurazione di tutte le istanze
- (Facoltativo) Configurazione stateful
Ogni volta che aggiorni la configurazione prevista utilizzando questi componenti, Compute Engine applica automaticamente la configurazione aggiornata alle nuove VM aggiunte al gruppo.
Per applicare una configurazione aggiornata alle VM esistenti, utilizza i metodi descritti in questa pagina:
- Implementazioni automatiche con un budget per le interruzioni e aggiornamenti canary facoltativi dei nuovi template
- Aggiornamenti manuali selettivi solo per VM specifiche, per ridurre al minimo le interruzioni
- Ricreazione di VM specifiche
Puoi anche configurare il MIG in modo che applichi la configurazione più recente disponibile alle VM durante le riparazioni. Per saperne di più, consulta Applica aggiornamenti della configurazione durante le riparazioni.
Se devi solo ridimensionare un MIG, consulta la documentazione su come aggiungere o rimuovere VM in un MIG. Per saperne di più sulla configurazione delle funzionalità dei MIG, consulta la documentazione relativa alla scalabilità automatica, alla riparazione automatica, al bilanciamento del carico e ai workload stateful.
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 di Trusted Cloud by S3NS .
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:
Console
When you use the Trusted Cloud console to access Trusted Cloud by S3NS services and APIs, you don't need to set up authentication.
gcloud
-
Install the Google Cloud CLI, and then sign in to the gcloud CLI with your federated identity. After signing in, initialize the Google Cloud CLI 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, devi utilizzare le credenziali che fornisci a gcloud CLI.
Install the Google Cloud CLI, and then sign in to the gcloud CLI with your federated identity. After signing in, initialize the Google Cloud CLI by running the following command:
gcloud init
Per saperne di più, consulta Autenticarsi per l'utilizzo di REST nella documentazione sull'autenticazione di Trusted Cloud .
Componenti di configurazione per le VM in un MIG
Le VM in un MIG vengono configurate tramite i seguenti componenti:
Componente Proprietà Caso d'uso Template di istanza Tipo di macchina, immagine disco di avvio, etichette, script di avvio e altre proprietà della VM Obbligatorio: utilizza un template di istanza per definire le proprietà obbligatorie e facoltative per tutte le VM del gruppo.
(Facoltativo) Se vuoi eseguire il test canary di una seconda configurazione VM, puoi aggiungere un secondo template di istanza al gruppo e applicarlo a un sottoinsieme di VM del gruppo.Configurazione di tutte le istanze Etichette e metadati (Facoltativo) Utilizza una configurazione di tutte le istanze per eseguire rapidamente l'override delle proprietà del template di istanza per tutte le VM del gruppo. Configurazione stateful Dischi, indirizzi IP e metadati stateful (Facoltativo) Se devi supportare un workload stateful, aggiungi la configurazione stateful alle VM del gruppo. Se aggiorni una configurazione per il gruppo tramite questi componenti, devi applicare la configurazione aggiornata alle VM esistenti nel gruppo per renderla effettiva.
Metodi per applicare una nuova configurazione alle VM esistenti
Dopo aver aggiornato la configurazione delle VM di un MIG, puoi applicare la nuova configurazione alle VM esistenti nel gruppo utilizzando i seguenti metodi:
- Automatico (proattivo): utilizza questo metodo se vuoi che il MIG applichi automaticamente nuove configurazioni a tutte o a un sottoinsieme di VM esistenti nel gruppo. Il livello di interruzione delle VM in esecuzione dipende dalla policy di aggiornamento configurata. Puoi utilizzare questo metodo per eseguire l'aggiornamento canary di nuovi template di istanza. Per utilizzare questo metodo, imposta il tipo di aggiornamento del MIG su "proattivo".
- Selettivo (opportunistico): utilizza questo metodo se vuoi applicare l'aggiornamento manualmente o se vuoi aggiornare contemporaneamente tutte le VM esistenti nel gruppo. Scegli come destinazione una o tutte le VM da aggiornare all'ultima configurazione. Per utilizzare questo metodo, imposta il tipo di aggiornamento del MIG su "opportunistico".
- Ricreazione delle VM: applica nuove configurazioni ricreando VM specifiche.
Per saperne di più su come impostare il tipo di aggiornamento di un MIG, consulta Configura un aggiornamento proattivo o opportunistico.
Automatico (proattivo)
Un tipo di aggiornamento automatico è noto anche come tipo di aggiornamento proattivo. Quando imposti il tipo di aggiornamento del MIG su proattivo, il MIG applica automaticamente le configurazioni aggiornate alle VM, se necessario.
L'impostazione del tipo di aggiornamento del MIG su proattivo offre due vantaggi principali:
- L'implementazione di un aggiornamento avviene automaticamente in base alle tue specifiche, senza bisogno di ulteriori input dopo la richiesta iniziale. Puoi specificare la velocità di deployment, il livello di interruzione del servizio e l'ambito dell'aggiornamento.
- Puoi automatizzare le implementazioni parziali, il che consente di eseguire test canary.
Per scoprire come impostare il tipo di aggiornamento del MIG, consulta Configura un aggiornamento proattivo o opportunistico.
Per saperne di più sulle implementazioni automatiche, consulta Applica automaticamente gli aggiornamenti della configurazione alle VM in un MIG.
Selettivo (opportunistico)
Un tipo di aggiornamento selettivo è noto anche come tipo di aggiornamento opportunistico. Quando imposti il tipo di aggiornamento del MIG su opportunistico, il MIG applica le nuove configurazioni alle VM esistenti solo quando scegli in modo selettivo le VM specifiche da aggiornare.
L'impostazione del tipo di aggiornamento del MIG su opportunistico offre i seguenti vantaggi:
- Puoi selezionare le VM da aggiornare.
- Puoi controllare la tempistica e la sequenza degli aggiornamenti.
- Puoi utilizzare gcloud CLI o REST per aggiornare immediatamente tutte le istanze.
In alcuni scenari, un tipo di aggiornamento selettivo è utile perché non vuoi causare instabilità al sistema, se puoi evitarlo. Ad esempio, prendi in considerazione quanto segue:
Una delle VM nel tuo MIG si arresta e deve essere riparata, ma non vuoi che la relativa configurazione venga modificata. Se imposti il tipo di aggiornamento del MIG su opportunistico e non applichi forzatamente gli aggiornamenti durante le riparazioni, Compute Engine ripara la VM utilizzando la stessa configurazione utilizzata per crearla, anche se il template di istanza originale non esiste più.
Hai un MIG con scalabilità automatica e vuoi applicare un aggiornamento non critico senza alcuna urgenza. Per assicurarti che Compute Engine non elimini le VM esistenti per applicare l'aggiornamento, imposta il tipo di aggiornamento del MIG su opportunistico. Durante lo scale in, il gestore della scalabilità automatica termina preferenzialmente le VM con la vecchia configurazione. Quando il gruppo fa lo scale out, vengono create VM con la configurazione più recente.
Per scoprire come impostare il tipo di aggiornamento del MIG, consulta Configura un aggiornamento proattivo o opportunistico.
Per saperne di più sull'aggiornamento selettivo delle VM, consulta Applica in modo selettivo gli aggiornamenti della configurazione alle VM in un MIG.
Ricreazione delle VM
Puoi ricreare qualsiasi VM in un MIG. In questo caso, il MIG applica qualsiasi configurazione aggiornata che non è stata ancora applicata alla VM. Per saperne di più, consulta Ricreazione delle VM in un MIG.
Configura un aggiornamento proattivo o opportunistico
Per applicare automaticamente nuove configurazioni alle VM esistenti, imposta il tipo di aggiornamento del MIG su "proattivo". Per applicare nuove configurazioni alle VM esistenti solo quando selezioni una VM da aggiornare, imposta il tipo di aggiornamento del MIG su "opportunistico".
Utilizza la console Trusted Cloud , Google Cloud CLI o REST.
Console
Nella console Trusted Cloud , vai alla pagina Gruppi di istanze.
Seleziona il MIG che vuoi aggiornare.
Nella parte superiore della pagina, fai clic su Aggiorna VM.
Per impostare un template diverso per il gruppo, in Nuovo template, seleziona il template di istanza che vuoi utilizzare.
In Aggiorna configurazione, scegli l'aggiornamento automatico o selettivo.
gcloud
Utilizza il comando
rolling-action start-update
e imposta il flag--type
suopportunistic
oproactive
.gcloud compute instance-groups managed rolling-action start-update INSTANCE_GROUP_NAME \ --version=template=NEW_TEMPLATE \ --type=TYPE
Puoi anche utilizzare il comando beta
update
e includere il flag--update-policy-type
.gcloud beta compute instance-groups managed update INSTANCE_GROUP_NAME \ --update-policy-type=TYPE
Sostituisci quanto segue:
INSTANCE_GROUP_NAME
: il nome del gruppoNEW_TEMPLATE
: il nome del nuovo template per il gruppoTYPE
: il tipo di aggiornamento,opportunistic
oproactive
REST
Utilizza il metodo
patch
su una risorsa MIG a livello di zona o di regione.PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME { "updatePolicy": { "type": "TYPE" # Choose an opportunistic or proactive update }, "versions": [{ "instanceTemplate": "global/instanceTemplates/NEW_TEMPLATE", }] }
Sostituisci quanto segue:
PROJECT_ID
: il progetto in cui esiste il MIG.REGION
: la regione in cui si trova il MIG. Per un MIG a livello di zona, sostituisciregions/REGION
conzones/ZONE
.INSTANCE_GROUP_NAME
: il nome del gruppo.NEW_TEMPLATE
: il nome del nuovo template per il gruppo.TYPE
: il tipo di aggiornamento,OPPORTUNISTIC
oPROACTIVE
.
Per saperne di più su come impostare un nuovo template e applicarlo alle VM nuove ed esistenti in un MIG, consulta le seguenti pagine:
- Applica automaticamente gli aggiornamenti della configurazione alle VM in un MIG
- Applica in modo selettivo gli aggiornamenti della configurazione alle VM in un MIG.
Controlla il tipo di policy di aggiornamento del gruppo
Puoi visualizzare il tipo di policy di aggiornamento attualmente configurato del tuo MIG ("opportunistico" o "proattivo") e altre impostazioni della policy di aggiornamento utilizzando gcloud CLI o REST.
gcloud
Utilizza il comando
describe
e includi il flag--format
per elencare solo le impostazioniupdatePolicy
.gcloud beta compute instance-groups managed describe INSTANCE_GROUP_NAME \ --format="(updatePolicy)"
REST
Invia una richiesta
GET
a un MIG a livello di zona o di regione e controlla il campoupdatePolicy
.GET https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME
Per modificare il tipo di policy, consulta Configura un aggiornamento proattivo o opportunistico.
Aggiornamenti per le VM sospese e arrestate
Se hai pool di VM sospese e arrestate in un MIG, puoi aggiornare in modo selettivo (opportunistico) le VM sospese o arrestate come faresti con le altre VM in esecuzione. Se configuri gli aggiornamenti automatici (proattivi), il MIG aggiorna le VM nel seguente ordine:
- VM in esecuzione, sospese e arrestate
- VM con stato
SUSPENDING
oSTOPPING
Per un aggiornamento automatico, il MIG calcola il picco massimo e il numero massimo di istanze non disponibili in base solo al numero di VM in esecuzione di destinazione e non prende in considerazione le VM nel pool di standby.
Se l'aggiornamento automatico richiede la sostituzione delle VM nel gruppo, il MIG esegue queste operazioni:
- Elimina le VM sospese e arrestate.
- Crea nuove VM con il nuovo template di istanza.
- Esegue la procedura di inizializzazione.
- Sospende o arresta le VM.
Se l'aggiornamento automatico richiede solo l'aggiornamento o il riavvio delle VM nel gruppo, il MIG esegue queste operazioni:
- Riprende o avvia le VM.
- Esegue l'aggiornamento delle VM quando sono in esecuzione.
- Esegue la procedura di inizializzazione.
- Sospende o arresta le VM.
Aggiornamenti canary
Se vuoi avviare gli aggiornamenti canary in un MIG con VM sospese o arrestate, si applica quanto segue:
- Nella modalità della policy di standby
manual
, il MIG aggiorna solo le VM in esecuzione in base al numero o alla percentuale di VM a cui vuoi applicare l'aggiornamento. Le VM sospese e arrestate mantengono le versioni precedenti. - Nella modalità della policy di standby
scale-out-pool
, non puoi avviare un aggiornamento canary nel MIG.
Relazione tra i campi
versions
einstanceTemplate
Se utilizzi REST, ti consigliamo di utilizzare i campi
instanceGroupManagers.versions
eregionInstanceGroupManagers.versions
per configurare i template di istanza per i MIG a livello di zona e di regione.Il campo
instanceTemplate
precedente si sovrappone per funzionalità al campoversions
, perché entrambi i campi ti consentono di specificare il template di istanza utilizzato dal MIG per creare le VM. Tuttavia, solo il campoversions
consente di specificare una configurazione avanzata con due template (canary).Per la compatibilità con le versioni precedenti, i MIG continuano a supportare l'impostazione del campo
instanceTemplate
di primo livello, anche se ti consigliamo di passare all'utilizzo del solo campoversions
. L'utilizzo simultaneo del campo di primo livelloinstanceTemplate
e del campoversions
può portare ad ambiguità e confusione.Se specifichi sia il campo
instanceTemplate
sia il campoversions
quando chiamai il metodoupdate()
opatch()
, sono possibili tre risultati:Imposti entrambi i campi sullo stesso valore.
Questa è una richiesta valida. In questo caso, non viene creata alcuna ambiguità e il nuovo template di istanza viene applicato al MIG.
Ad esempio, nella richiesta seguente, il campo di primo livello
instanceTemplate
e il campoversions
specificano lo stesso template di istanza, diverso da quello attualmente esistente, pertanto il MIG viene aggiornato al nuovo template di istanza:{ "instanceTemplate": "global/instanceTemplates/NEW_TEMPLATE", "versions": [ { "instanceTemplate": "global/instanceTemplates/NEW_TEMPLATE" } ], "updatePolicy": { "type": "PROACTIVE" } }
Imposti i due campi su valori diversi, ma solo un valore è diverso dal template di istanza attuale nel MIG.
Questa è una richiesta valida. Il campo diverso dall'impostazione attuale viene considerato come il valore previsto. Ad esempio, chiami il metodo
update()
e fornisci entrambi i campi, ma solo un campo è aggiornato:{ "instanceTemplate": "global/instanceTemplates/CURRENT_TEMPLATE", "versions": [ { "instanceTemplate": "global/instanceTemplates/NEW_TEMPLATE" } ], "updatePolicy": { "type": "PROACTIVE" } }
Imposti i due campi su valori diversi ed entrambi i valori sono diversi dal template di istanza attuale nel MIG.
Questa impostazione non è valida e restituisce un errore perché non è presente un'intenzione chiara.
{ "instanceTemplate": "global/instanceTemplates/NEW_TEMPLATE", "versions": [ { "instanceTemplate": "global/instanceTemplates/A_DIFFERENT_NEW_TEMPLATE" } ], "updatePolicy": { "type": "PROACTIVE" } }
Il campo
versions
, il campoinstanceTemplate
e il metodoget()
Se specifichi solo un template di istanza, tramite il campo
instanceTemplate
di primo livello, tramite il campoversions
o entrambi, il metodoget()
restituisce entrambi i campi nella risposta. In questo modo, il nuovo campoversions
è compatibile con le versioni precedenti. Finché specifichi un singolo template di istanza in uno qualsiasi di questi due campi, non viene apportata alcuna modifica al valore restituito dal metodoget()
nel campoinstanceTemplate
.Se per il campo
versions
sono specificati due template di istanza, il metodoget()
restituisce un campoinstanceTemplate
di primo livello vuoto. Non è possibile esprimere in modo inequivocabile una configurazione di template canary a due istanze nel campoinstanceTemplate
di primo livello, pertanto il campo non viene utilizzato durante un aggiornamento canary.Il campo
versions
e il metodosetInstanceTemplate()
Per la compatibilità con le versioni precedenti, il metodo
setInstanceTemplate()
si comporta come in precedenza, consentendoti di modificare il template utilizzato dal MIG per creare le VM. Quando chiami questo metodo, il campoversions
viene sostituito con il template di istanza specificato dal metodosetInstanceTemplate()
.Il metodo
setInstanceTemplate()
imposta ancheupdatePolicy
suOPPORTUNISTIC
. In questo modo, il MIG impedisce il deployment attivo di un template di istanza non specificato esplicitamente nel campoversions
.Passaggi successivi
- Scopri di più su come implementare automaticamente un nuovo template di istanza in un MIG.
- Scopri di più sull'aggiornamento selettivo delle VM in un MIG.
- Visualizza le informazioni sul MIG e sulle relative VM.
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-08-18 UTC.
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Mancano le informazioni di cui ho bisogno","missingTheInformationINeed","thumb-down"],["Troppo complicato/troppi passaggi","tooComplicatedTooManySteps","thumb-down"],["Obsoleti","outOfDate","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Problema relativo a esempi/codice","samplesCodeIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 2025-08-18 UTC."],[[["This document outlines how to configure virtual machine (VM) instances within a managed instance group (MIG), utilizing instance templates, all-instances configuration, and stateful configuration to define the desired VM setup."],["Updating configurations in a MIG can be applied to existing VMs through automatic rollouts (proactive), selective manual updates (opportunistic), or by re-creating specific VMs."],["Automatic updates, or proactive updates, allow the MIG to automatically apply new configurations, offering control over deployment speed, service disruption, and the ability to automate partial rollouts for canary testing."],["Selective updates, also known as opportunistic, enable users to manually select which VMs to update, offering control over timing and sequencing, useful for non-critical updates or when avoiding system instability."],["When using the REST API to manage instance templates, it is recommended to use the `versions` field instead of the legacy `instanceTemplate` field to avoid ambiguity, especially when implementing advanced two-template configurations like canary updates."]]],[]] -