Un gruppo di istanze gestite è una raccolta di istanze di macchine virtuali (VM) che puoi gestire come una singola entità.
Compute Engine offre due tipi di gruppi di istanze VM, gestiti e non gestiti:
I gruppi di istanze gestite (MIG) ti consentono di utilizzare le app su più VM identiche. Puoi rendere i tuoi workload scalabili e ad alta affidabilità sfruttando i servizi MIG automatizzati, tra cui: scalabilità automatica, ripristino automatico, deployment regionale (più zone) e aggiornamento automatico.
I gruppi di istanze non gestite ti consentono di eseguire il bilanciamento del carico in un parco risorse di VM che gestisci autonomamente.
Provalo
Se non conosci Google Cloud, crea un account per valutare le prestazioni di Compute Engine in scenari reali. I nuovi clienti ricevono anche 300 $ di crediti senza addebiti per l'esecuzione, il test e il deployment dei workload.
Fai una prova senza costi di Compute EngineGruppi di istanze gestite (MIG)
Utilizza un gruppo di istanze gestite (MIG) per scenari come questi:
- Workload di pubblicazione stateless, ad esempio il frontend di un sito web
- Workload di computing in batch, ad alte prestazioni o a throughput elevato stateless, come l'elaborazione di immagini da una coda
- Applicazioni stateful, come database, applicazioni legacy e operazioni di computing in batch a lunga esecuzione con checkpointing
Compute Engine gestisce ciascuna delle istanze gestite del MIG in base alla configurazione specificata in un template di istanza e in una facoltativa configurazione stateful.
Per informazioni su come creare un MIG, consulta Creazione di gruppi di istanze gestite.
Vantaggi
I MIG offrono i seguenti vantaggi:
- Alta affidabilità.
- Riparazione automatica delle VM con errori. Se una VM nel gruppo si arresta, subisce un arresto anomalo, viene prerilasciata (VM spot) o viene eliminata da un'azione non avviata dal MIG, il MIG la ricrea automaticamente in base alla configurazione originale (stesso nome della VM, stesso template) in modo che la VM possa riprendere il lavoro.
- Ripristino automatico basato sulle applicazioni. Puoi anche configurare un controllo di integrità basato su applicazione per verificare periodicamente che l'applicazione risponda come previsto su ogni istanza del MIG. Se un'applicazione non risponde su una VM, il gruppo di istanze gestite la ricrea automaticamente. Verificare che un'applicazione risponda offre un controllo più preciso rispetto alla semplice verifica che la VM sia attiva e in esecuzione.
- Copertura regionale (più zone). I MIG regionali consentono di distribuire il carico delle app su più zone. Questa replica protegge da eventuali errori a livello di zona. In tal caso, l'app può continuare a gestire il traffico proveniente dalle istanze in esecuzione nelle zone disponibili rimanenti della stessa regione.
- Bilanciamento del carico. I MIG collaborano con i servizi di bilanciamento del carico per distribuire il traffico su tutte le istanze del gruppo.
- Scalabilità. Quando le tue app richiedono risorse di calcolo aggiuntive, i gruppi di istanze gestite con scalabilità automatica possono aumentare automaticamente il numero di istanze nel gruppo per soddisfare la domanda. Se la domanda diminuisce, i gruppi di istanze gestite con scalabilità automatica possono diminuire automaticamente per ridurre i costi.
- Aggiornamenti automatici. Lo strumento di aggiornamento automatico dei gruppi di istanze gestite consente di eseguire in sicurezza il deployment di nuove versioni del software nelle istanze all'interno del gruppo di istanze gestite e supporta una gamma flessibile di scenari di implementazione, come aggiornamenti in sequenza e aggiornamenti canary. Puoi controllare la velocità e l'ambito del deployment, nonché il livello di interruzione del servizio.
- Supporto per i workload stateful. Puoi utilizzare i MIG per creare deployment ad alta disponibilità e automatizzare le operazioni delle applicazioni con dati o configurazioni stateful, ad esempio database, server DNS, applicazioni monolitiche legacy o calcoli in batch di lunga durata con checkpoint. I MIG stateful conservano lo stato univoco di ogni istanza (nome dell'istanza, dischi permanenti collegati e metadati) in caso di eventi di riavvio, ricreazione, riparazione automatico e aggiornamento delle macchine.
- Crea più VM GPU contemporaneamente. Quando hai un job batch, ad esempio un addestramento di AI o ML, che richiede un numero esatto di VM GPU, la creazione di una richiesta di ridimensionamento in un MIG può aiutarti a creare più VM contemporaneamente. Puoi specificare la durata per la quale vuoi che le VM vengano eseguite, migliorando così la disponibilità di risorse molto richieste come le GPU.
Riparazione automatica e ripristino automatico
I gruppi di istanze gestite preservano l'alta affidabilità delle tue applicazioni, mantenendo proattivamente disponibili le istanze VM. Un MIG ripara automaticamente le istanze con errore ricreandole.
Se vuoi anche riparare le istanze quando un'applicazione si blocca, si arresta in modo anomalo o esaurisce la memoria. Il ripristino automatico basato sull'applicazione migliora la disponibilità dell'applicazione facendo affidamento su un indicatore di controllo di integrità che rileva problemi specifici dell'applicazione, come blocchi, arresti anomali o sovraccarichi. Se un controllo di integrità determina che un'applicazione ha avuto esito negativo su una VM, il gruppo ricrea automaticamente l'istanza VM.
Per ulteriori informazioni, consulta Informazioni sulla riparazione delle VM in un MIG.
Controllo di integrità
I controlli di integrità utilizzati per monitorare i MIG sono simili
ai controlli di integrità utilizzati per il bilanciamento del carico, con alcune differenze di comportamento. I controlli di integrità del bilanciamento del carico aiutano a indirizzare il traffico lontano dalle istanze con mancata risposta e verso quelle integre. Questi controlli di integrità non fanno sì che Compute Engine ricrei le istanze. Invece, i
controlli di integrità dei gruppi di istanze gestite
segnalano in modo proattivo l'eliminazione e la creazione di nuove istanze il cui stato diviene UNHEALTHY
.
Per la maggior parte degli scenari, utilizza controlli di integrità distinti per il bilanciamento del carico e per il ripristino automatico. I controlli di integrità del bilanciamento del carico possono e devono essere più aggressivi, in quanto determinano se un'istanza riceve traffico utente. Poiché i clienti potrebbero fare affidamento sui tuoi servizi, è importante individuare subito le istanze che non rispondono per poter reindirizzare il traffico all'occorrenza. Per contro, il controllo di integrità per il ripristino automatico fa sì che i MIG sostituiscano proattivamente le istanze che non funzionano, pertanto questo controllo di integrità sarà più prudente rispetto a quello del bilanciamento del carico.
Per ulteriori informazioni, consulta Configura un controllo di integrità e il ripristino automatico basati sull'applicazione.
Gruppi a livello di zona o di regione
Puoi creare due tipi di MIG:
- Un MIG a livello di zona, che esegue il deployment di istanze in una singola zona.
- Un MIG a livello di regione, che esegue il deployment di istanze in più zone della stessa regione.
Entrambi i tipi offrono tutti i vantaggi dei MIG. I MIG a livello di regione offrono una maggiore disponibilità distribuendo il carico dell'applicazione su più zone, proteggendo il tuo carico di lavoro da guasti a livello di zona e offrendo una maggiore capacità. Per impostazione predefinita, puoi creare fino a 2000 VM in un MIG a livello di regione e 1000 VM in un MIG a livello di zona. Se hai bisogno di altre VM, puoi aumentare il limite di dimensioni del tuo MIG o contattare l'assistenza.
Bilanciamento del carico
Il bilanciamento del caricoGoogle Cloud può utilizzare i gruppi di istanze per gestire il traffico. A seconda del tipo di bilanciatore del carico che scegli, puoi aggiungere gruppi di istanze a un pool di destinazione o a un servizio di backend.
Per ulteriori informazioni, consulta Aggiunta di un gruppo di istanze a un bilanciatore del carico.
Scalabilità automatica
I MIG supportano la scalabilità automatica che aggiunge o rimuove dinamicamente le istanze VM dal gruppo in risposta agli aumenti o alle diminuzioni del carico. Puoi configurare una policy di scalabilità automatica per specificare come vuoi scalare il gruppo. Nella policy di scalabilità automatica, puoi impostare uno o più indicatori per scalare il gruppo in base a utilizzo della CPU, capacità di bilanciamento del carico, metriche di Cloud Monitoring, pianificazioni o, per i MIG a livello di zona, utilizzando un workload basato su code come Pub/Sub.
Per ulteriori informazioni, consulta Scalabilità automatica dei gruppi di istanze.
Aggiornamento automatico
Puoi eseguire facilmente e in sicurezza il deployment di nuove versioni del software nelle istanze di un MIG. L'implementazione di un aggiornamento avviene automaticamente in base alle tue specifiche: puoi controllare la velocità e l'ambito dell'implementazione dell'aggiornamento per ridurre al minimo le interruzioni dell'applicazione. Facoltativamente, puoi eseguire implementazioni parziali, che consentono di eseguire test canary.
Consulta la sezione Aggiornamento dei MIG.
Supporto per i workload stateful
Puoi creare deployment ad alta affidabilità di carichi di lavoro stateful su VM utilizzando gruppi di istanze gestite stateful (MIG stateful). I carichi di lavoro stateful includono applicazioni con dati o configurazione stateful, come database, applicazioni monolitiche legacy e computing in batch a lunga esecuzione con checkpointing.
Puoi migliorare l'uptime e la resilienza di queste applicazioni con il ripristino automatico, gli aggiornamenti controllati e i deployment multizona, preservando al contempo lo stato univoco di ogni istanza, inclusi il nome dell'istanza personalizzabile, i dischi permanenti e i metadati.
Per ulteriori informazioni, consulta la sezione MIG stateful.
Crea più VM GPU contemporaneamente
Puoi creare una richiesta di ridimensionamento in un MIG con VM GPU per creare tutte le VM richieste contemporaneamente quando la capacità richiesta diventa disponibile. Quando crei una richiesta di ridimensionamento in un gruppo di istanze gestite, Compute Engine pianifica la creazione delle VM in base al numero di VM richieste, alla durata di esecuzione richiesta e alla disponibilità delle risorse richieste nelle zone del MIG. Poi, al momento della consegna pianificata delle risorse, il MIG crea contemporaneamente il numero di VM richiesto. Le VM vengono eseguite fino al termine della loro durata o fino a quando non le elimini.
Per ulteriori informazioni, consulta la pagina Informazioni sulle richieste di ridimensionamento in un MIG.
Gruppi di istanze preemptible
Per i workload in cui i costi minimi sono più importanti della velocità di esecuzione, puoi ridurre il costo del tuo workload utilizzando istanze VM preemptible nel tuo gruppo di istanze. Le istanze preemptible durano fino a 24 ore e vengono prerilasciate in modo corretto: la tua applicazione ha 30 secondi di tempo per uscire correttamente. Le istanze preemptible possono essere eliminate in qualsiasi momento, ma il ripristino automatico le ripristinerà quando la capacità preemptible sarà di nuovo disponibile.
Container
Puoi semplificare il deployment delle applicazioni eseguendo il deployment dei container nelle istanze dei gruppi di istanze gestite. Quando specifichi un'immagine del container in un template di istanza e poi utilizzi quel template per creare un gruppo di istanze gestite, ogni VM viene creata con un sistema operativo ottimizzato per i container che include Docker e il contenitore si avvia automaticamente su ogni VM del gruppo. Consulta Deployment di container su VM e MIG.
Rete e subnet
Quando crei un gruppo di istanze gestite, devi fare riferimento a un
template di istanza esistente. Il template di istanza definisce la rete VPC
e la subnet utilizzate dalle istanze membro. Se ometti una rete VPC,
Google Cloud tenta di utilizzare la rete VPC denominata
default
e la subnet creata automaticamente nella regione specificata nel
template.
Per saperne di più, consulta Reti e subnet.
Se vuoi che il gruppo di istanze gestite includa istanze VM che utilizzano l'indirizzamento IPv6, devi utilizzare l'impostazione dual-stack quando crei il template di istanza. Per ulteriori informazioni, consulta Crea un template di istanza con indirizzi IPv6.
Demo delle funzionalità di un MIG
La seguente presentazione video di 45 minuti, registrata al Google Cloud NEXT '18, contiene dimostrazioni e best practice per la configurazione, l'esecuzione e l'aggiornamento di deployment scalabili e ad alta affidabilità utilizzando i gruppi di istanze gestite di Compute Engine.
Il video mostra come eseguire il deployment di un container in un gruppo di istanze gestite, configurare una policy di ripristino automatico, utilizzare un gruppo regionale per proteggerti da un errore di zona, configurare la scalabilità automatica per soddisfare i target della CPU e le richieste in base alla coda e gestire gli aggiornamenti canary e in sequenza.
Gruppi di istanze non gestite
I gruppi di istanze non gestite possono contenere istanze eterogenee che puoi aggiungere e rimuovere arbitrariamente dal gruppo. I gruppi di istanze non gestite non supportano la scalabilità automatica, il ripristino automatico, gli aggiornamenti in sequenza, il supporto multizona o l'utilizzo di template di istanze e non sono adatti per il deployment di carichi di lavoro scalabili e ad alta affidabilità. Utilizza i gruppi di istanze non gestite se devi applicare il bilanciamento del carico a gruppi di istanze eterogenee o se devi gestire le istanze autonomamente. Puoi aggiungere fino a 2000 VM a un gruppo. Se vuoi aggiungere più di 2000 VM al gruppo, contatta l'assistenza.
Se devi creare gruppi di istanze non gestite, consulta Gruppi di istanze non gestite.
Prezzi
Non sono previsti costi aggiuntivi per l'utilizzo di gruppi di istanze gestiti o non gestiti. Ti vengono addebitati i costi in base alle risorse utilizzate dal tuo gruppo. Per informazioni sui prezzi di Compute Engine, consulta Prezzi.
Passaggi successivi
Scopri di più sui template di istanza o crea un template di istanza da utilizzare per configurare le VM in un MIG.
Scopri di più sugli scenari di base per la creazione di un gruppo di istanze gestite.
Scopri di più sull'aggiornamento dei MIG per utilizzare una nuova configurazione.
Prova un tutorial: