Leggi le sezioni seguenti per scoprire in che modo varie configurazioni, azioni di gruppi di istanze gestite o eventi del ciclo di vita delle istanze influiscono sullo stato preservato di un'istanza gestita in un gruppo di istanze gestite con stato:
- Riparazione automatica
- Aggiornare le istanze
- Ridimensionamento dei gruppi
- Eliminazione di un'istanza
- Abbandono di un'istanza
- Gruppi regionali
Come la riparazione automatica gestisce lo stato conservato
Quando un'istanza di una macchina virtuale (VM) smette di funzionare o diventa non funzionante, la riparazione automatica ricrea la VM e mantiene lo stato conservato per gli elementi che hai configurato:
- Il gruppo di istanze gestite conserva i dischi e gli indirizzi IP stateful e li ricollega al momento della nuova creazione della VM.
- Il gruppo di istanze gestite conserva i metadati stateful, configurati nelle configurazioni per istanza, e li imposta al momento della ricreazione della VM.
Per evitare errori di ricreazione delle istanze VM a causa di un disco di avvio stateful danneggiato, mantieni il disco di avvio stateless in modo che la riparazione automatica possa ricrearlo da zero utilizzando l'immagine originale.
In che modo le istanze di aggiornamento gestiscono lo stato conservato
Quando aggiorni un'istanza, il gruppo di istanze gestite mantiene lo stato conservato dell'istanza (dischi, indirizzi IP, metadati):
- Il gruppo di istanze gestite conserva i dischi e gli indirizzi IP stateful e li ricollega se l'istanza VM viene ricreata o riavviata durante l'aggiornamento.
- Il gruppo di istanze gestite conserva i metadati stateful, configurati in una configurazione per istanza, e li imposta sull'istanza durante l'aggiornamento.
Quando imposti un nuovo modello di istanza, devi definire tutti i dischi specificati nel criterio stateful. Non è consentito impostare un nuovo modello di istanza che omette un disco definito in un criterio stateful. In questo modo si evita l'eliminazione accidentale dei dischi con stato.
Per rimuovere i dischi stateful da un gruppo di istanze gestite quando questi dischi sono definiti in un criterio stateful, segui la procedura riportata di seguito:
- Rimuovi la configurazione del disco dal criterio con stato.
- (Facoltativo). Scollega i dischi dalle istanze VM se vuoi comunque conservarli.
- Implementa un nuovo modello di istanza che non definisce più i dischi.
Non puoi aggiornare i dischi con stato a una nuova immagine perché questi dischi devono essere conservati durante l'aggiornamento e l'aggiornamento a una nuova immagine richiede la ricreazione di un disco.
Google consiglia di mantenere i dischi di avvio e tutti i dischi con file binari o temporanei senza stato, mantenendo i dati su dischi con stato. Questa configurazione supporta il seguente comportamento:
- Puoi aggiornare facilmente e automaticamente il disco di avvio e i dischi con i binari a immagini più recenti contenenti nuove versioni e patch di sicurezza. Puoi utilizzare l'aggiornamento automatico oppure aggiornare manualmente le istanze per ricreare questi dischi stateless, mantenendo invariati i dati su dischi stateful distinti.
- Puoi conservare i dati sui dischi stateful durante l'implementazione di altri aggiornamenti nelle tue istanze.
Puoi configurare un disco di avvio come stateful, ad esempio per ospitare un'applicazione legacy che conserva i binari e i dati sullo stesso disco. In questo modo, puoi spostare un'applicazione in un gruppo di istanze gestite per usufruire della riparazione automatica. Tuttavia, in questo scenario, devi eseguire autonomamente gli aggiornamenti del software e del sistema operativo, ad esempio aggiornando i singoli pacchetti utilizzando un gestore dei pacchetti come apt sui sistemi Debian o utilizzando strumenti di gestione della configurazione.
Se hai configurato solo nomi di istanze personalizzate e non hai configurato dischi o metadati stateful, puoi utilizzare gli aggiornamenti incrementali automatici. Per gli aggiornamenti graduali automatici, devi impostare il criterio di sostituzione di Updater su RECREATE
.
Non puoi utilizzare il metodo di sostituzione SUBSTITUTE
per aggiornare automaticamente le istanze
nei gruppi di istanze gestite stateful perché questo metodo sostituisce ogni VM esistente con una nuova VM con un nome diverso e uno stato preservato.
In che modo il ridimensionamento del gruppo influisce sullo stato conservato
Diminuire le dimensioni del gruppo
Google sconsiglia di diminuire le dimensioni di un gruppo di istanze stateful perché il gruppo di istanze sceglie le istanze VM da eliminare e potrebbe scegliere le VM che devi conservare. Puoi rimuovere le istanze VM di MIG in modo controllato eliminando istanze specifiche di cui non hai più bisogno.
Se diminuisci le dimensioni del gruppo di istanze gestite, il gruppo di istanze gestite elimina tutte le istanze VM aggiuntive, insieme ai relativi stati conservati. Per evitare questo problema, puoi configurare il MIG in modo da scollegare e conservare i dischi e gli indirizzi IP stateful durante l'eliminazione permanente delle istanze VM. I metadati con stato vengono eliminati insieme allo stato preservato. Per ulteriori informazioni, consulta in che modo l'eliminazione di un'istanza influisce sullo stato preservato.
Aumento del numero di membri del gruppo
Quando aumenti le dimensioni di un gruppo di istanze gestite stateful, il gruppo crea VM dal modello di istanza corrente con nomi generati automaticamente (nome dell'istanza di base + suffisso). Puoi visualizzare la configurazione con stato applicata in preservedStateFromPolicy
dell'istanza gestita corrispondente. Dopo che il servizio MIG ha creato le istanze, puoi definire metadati stateful e dischi o indirizzi IP stateful aggiuntivi nelle configurazioni per istanze per queste istanze.
Puoi scegliere nomi di istanze personalizzati e aumentare le dimensioni del gruppo creando istanze manualmente, con la possibilità di avviarne lo stato fornendo configurazioni per ogni istanza con metadati, indirizzi IP e dischi stateful per ogni istanza.
In che modo l'eliminazione di un'istanza influisce sullo stato conservato
Una VM in un gruppo di istanze gestite viene eliminata definitivamente quando:
- Riduci le dimensioni del gruppo e il gruppo di istanze gestite sceglie questa istanza VM per l'eliminazione oppure
- Eliminare l'intero gruppo oppure
- In particolare, elimini l'istanza dal gruppo MIG.
Quando una VM viene eliminata definitivamente, l'MIG elimina anche la configurazione per istanza e l'istanza gestita corrispondente, inclusa la configurazione dello stato conservato.
L'eliminazione permanente della VM comporta la perdita di tutte le coppie chiave-valore dei metadati con stato.
Puoi configurare se conservare o eliminare i dischi e gli indirizzi IP stateful al momento dell'eliminazione permanente dell'istanza impostando il flag autoDelete
per ogni risorsa nel criterio stateful o in una configurazione per istanza. Il flag supporta due opzioni:
NEVER
: (valore predefinito). Il gruppo di istanze gestite non elimina mai il disco.ON_PERMANENT_INSTANCE_DELETION
: il gruppo di istanze gestite elimina il disco quando l'istanza viene eliminata definitivamente.
Il gruppo di istanze gestite non elimina le risorse stateful durante la riparazione automatica, l'aggiornamento o la ricreazione delle istanze.
Nell'esempio seguente, il gruppo di istanze gestite ha una singola VM node-1
con uno stato conservato definito da una configurazione per istanza. Lo stato conservato include due dischi (blu e verde) e i metadati id:xyz273
. Se regoli il ridimensionamento del gruppo di istanze gestite su zero, il gruppo di istanze gestite attiva l'eliminazione permanente dell'istanza node-1
, con i seguenti effetti:
- Il gruppo MIG elimina l'istanza gestita e la relativa configurazione dello stato preservato.
- Il gruppo MIG elimina la configurazione per istanza dell'istanza.
- Il gruppo di istanze gestite elimina la risorsa dell'istanza VM effettiva.
- I metadati
id:xyz273
vengono persi perché l'istanza VM e la relativa configurazione dello stato conservato vengono eliminate. - Il disco blu con stato viene eliminato perché, per questo disco, la configurazione per istanza ha
autoDelete: ON_PERMANENT_INSTANCE_DELETION
. - Il disco verde stateful è scollegato perché, per questo disco, la configurazione per istanza ha
autoDelete:NEVER
.
In che modo l'abbandono di un'istanza influisce sullo stato conservato
Quando abbandoni un'istanza VM da un gruppo di istanze gestite, lo stato della VM, inclusi i metadati, gli indirizzi IP e i dischi stateful, rimane nell'istanza al di fuori del gruppo di istanze gestite. Poiché la VM non è più gestita dal gruppo di istanze gestite, il gruppo di istanze gestite elimina la configurazione per istanza e l'istanza gestita corrispondente, inclusa la configurazione dello stato preservato dell'istanza.
Nell'esempio seguente, la VM node-1
ha uno stato preservato, definito da un criterio stateful (disco blu) e da una configurazione per istanza (disco verde e metadati id:xyz273
). Se rimuovi l'istanza node-1
dal gruppo di istanze gestite, ecco cosa succede al suo stato preservato:
- L'istanza VM autonoma,
node-1
, conserva il proprio stato: tutti i suoi dischi rimangono collegati e i metadati,id:xyz273
, rimangono impostati sulla VM. - Il gruppo MIG elimina l'istanza gestita e la relativa configurazione dello stato preservato.
- Il gruppo MIG elimina la configurazione per istanza dell'istanza.
- Il criterio stateful rimane invariato perché è applicabile a tutte le istanze nel gruppo di istanze gestite.
In che modo i gruppi di regioni gestiscono lo stato conservato
I MIG regionali stateful gestiscono gli stati conservati delle loro istanze nello stesso modo dei MIG zonali, tranne per il fatto che i MIG regionali creano istanze VM in più zone:
- Quando crei istanze, un gruppo di istanze gestite a livello di area geografica distribuisce uniformemente le VM tra le zone della regione per massimizzare la disponibilità della tua app in caso di errore a livello di zona.
- Per le istanze esistenti, un gruppo di istanze gestite regionali stateful non può ridistribuire o spostare automaticamente le VM esistenti tra le zone perché lo stato conservato viene archiviato in una zona specifica e non può essere spostato. Per questo motivo,
i gruppi di istanze gestite regionali con stato supportano solo un
tipo di ridistribuzione delle istanze
con impostazione
NONE
.
Feedback
Vorremmo conoscere i tuoi casi d'uso, le tue sfide e i tuoi feedback sulle MIG stateful. Condividi il tuo feedback con il nostro team all'indirizzo mig-discuss@google.com.
Passaggi successivi
- Leggi l'articolo Come funzionano i MIG stateful.
- Leggi l'articolo Configurazione di gruppi di istanze gestite stateful per scoprire come supportare i carichi di lavoro stateful conservando i nomi delle istanze, i dischi permanenti e i metadati nelle istanze gestite.
- Scopri di più sui gruppi di istanze gestite.
- Utilizza le istanze gestite.