Informazioni su sospensione e arresto delle VM in un gruppo di istanze gestite

Questo documento descrive le azioni di sospensione e arresto sulla macchina virtuale (VM) in un gruppo di istanze gestite. Descrive inoltre come la sospensione e l'arresto delle VM in un gruppo di istanze gestite può aiutarti a risparmiare e riducono i tempi di attesa quando sono necessarie più VM nel gruppo.

I gruppi di istanze gestite ti consentono di sospendere e arrestare le VM per:

  • Metti in pausa un'applicazione o un servizio che non utilizzi per risparmiare sui costi senza pagare per le risorse di computing.
  • Accelera lo scale out del MIG avviando VM preinizializzate dal pool di VM arrestate e sospese in standby.

Casi d'uso

Le sezioni seguenti descrivono i casi d'uso tipici per il pool in standby in un gruppo di istanze gestite.

Mettere in pausa un'applicazione o un servizio

Puoi suspend o interrompere VM in un gruppo di istanze gestite per mettere in pausa la tua applicazione e riprenderla quando necessario, in base alle al calcolo, all'orario di lavoro, ai momenti di punta e ai limiti di budget. Puoi mantenere i risultati dei calcoli attuali su dischi permanenti oppure nel caso delle VM sospese, in memoria.

Ad esempio, potresti voler sospendere o arrestare le VM in un gruppo di istanze gestite nella i seguenti scenari:

  • Hai carichi di lavoro intensivi durante i giorni feriali e vuoi sospendere le VM nei fine settimana per risparmiare sui costi.
  • Devi disporre di un ambiente di test necessario durante l'implementazione modifiche e vuoi interromperla quando non stai sviluppando attivamente.

Accelera lo scale out del gruppo di istanze gestite

Puoi mantenere un pool di VM pre-inizializzate in standby pronto per essere avviato quando il gruppo di istanze gestite viene ridimensionato. Invece di creare nuove VM e attendere che l'app venga inizializzata pronti per l'esecuzione, il gruppo di istanze gestite avvia o riprende le VM dal pool in standby. In tal caso, l'inizializzazione della VM viene completata in anticipo, non in una fase critica di aumento del carico.

I pool in standby sono utili per le applicazioni la cui inizializzazione richiede molto tempo, ad esempio nei seguenti scenari:

  • Applicazioni che devono scaricare contenuti aggiornati su dischi permanenti.
  • Applicazioni che necessitano di memorizzare contenuti aggiuntivi nella cache, tramite download da un'unità di archiviazione esterna, da calcoli locali o da una combinazione di entrambi.
  • applicazioni che richiedono l'installazione di un nuovo software durante l'inizializzazione ad esempio i nodi Kubernetes.

Risorse conservate

La tabella seguente mostra le risorse che vengono conservate quando sospendi e arrestare le VM in un gruppo di istanze gestite.

Conservato VM sospesa VM arrestata
Nome VM
IP interno
IP esterno (temporaneo)
IP esterno (statico*)
Dischi
Metadati
Memoria

* Per conservare un IP esterno quando arresti o sospendi una VM in un gruppo di istanze gestite, utilizza configurazione stateful MIG per promuovere l'IP esterno a un IP statico.

Se a una VM sono collegati dischi SSD locali, quando arresti o sospendi della VM, i dati sui dischi SSD locali non vengono conservati.

Comportamento e configurazione

Il pool di standby è formato da pool di VM arrestate e sospese. Tutti interrotti Le VM diventano parte del pool arrestato e tutte le VM sospese entrano a far parte del pool sospeso. Se hai configurato la scalabilità automatica in un gruppo di istanze gestite, dopo aver sospeso o arrestato una VM, il gruppo di istanze gestite crea immediatamente nuove VM per mantenere le dimensioni consigliate del gruppo di istanze gestite.

Dimensioni target dei pool sospesi e arrestati

Analogamente alla dimensione target del gruppo di istanze gestite, i pool arrestati e sospesi hanno le proprie dimensioni target. Puoi controllare la dimensione di destinazione del pool in standby nei seguenti modi:

  • Configurando i valori delle dimensioni target arrestate e sospese.
  • Arrestando e sospendendo manualmente le VM, il che poi modificherà automaticamente dimensioni target.

Quando modifichi le dimensioni di destinazione dei pool arrestati o sospesi, il gruppo di istanze gestite si comporta come segue:

  • Quando aumenti la dimensione dei pool sospesi o arrestati, il gruppo di istanze gestite crea nuove VM, attende l'inizializzazione delle VM, poi sospende o arresta le VM di conseguenza. Per i gruppi di istanze gestite a livello di regione, le VM vengono create in base La forma di distribuzione target configurato.
  • Quando diminuisci la dimensione dei pool sospesi o arrestati, il MIG arbitrariamente e seleziona le VM sospese o arrestate da eliminare.
  • Quando modifichi le dimensioni di destinazione del gruppo di istanze gestite e quelle del pool sospeso o arrestato. contemporaneamente, il gruppo di istanze gestite cerca di ridurre al minimo il numero di operazioni richieste per applicare le modifiche. Ciò significa che il gruppo di istanze gestite potrebbe riprendere o avviare le VM il pool in standby, oppure sospendere o arrestare alcune VM in esecuzione.

Criterio di standby

Il criterio di standby definisce il comportamento del pool in standby in base al i seguenti parametri da te specificati:

  • Modalità: la modalità in cui il gruppo di istanze gestite utilizza le app sospese delle VM arrestate. Può essere in modalità manual o scale-out-pool.
  • Ritardo iniziale: l'ora per cui il gruppo di istanze gestite esegue una nuova creazione una VM prima di sospenderla o arrestarla. Configura il ritardo iniziale per consentire tempo sufficiente per pre-inizializzare l'app e renderla pronta per essere eseguita quando la VM all'avvio o alla ripresa.

Modalità

Puoi scegliere come gestire i pool in standby impostando la modalità operativa. Le opzioni possibili sono due: modalità manual e modalità scale-out-pool.

Modalità manuale (impostazione predefinita)

In modalità manuale, hai il controllo completo sulle VM arrestate e sospese nel gruppo di istanze gestite. La modalità manuale è la modalità predefinita del pool in standby.

La modalità manuale è utile nei seguenti casi:

  • Per mettere in pausa il carico di lavoro e risparmiare sui costi delle VM in esecuzione inattive.
  • Per integrare il gruppo di istanze gestite con gestori della scalabilità automatica di terze parti che richiedono la gestione delle singole VM.
  • Per arrestare le VM selezionate a scopo di debug.

Con la modalità manuale, il gruppo di istanze gestite non applica alcuna automazione al pool in standby:

  • Quando tu o il gestore della scalabilità automatica aumentano le dimensioni target del gruppo di istanze gestite, quest'ultimo non avvia o riprende automaticamente le VM, ma ne crea di nuove.
  • Quando tu o il gestore della scalabilità automatica riducono le dimensioni target del gruppo di istanze gestite, il gruppo non arresta o sospende automaticamente le VM in esecuzione, ma le elimina.

Scale out della modalità pool

In modalità pool di scale out, il gruppo di istanze gestite utilizza le VM dai pool in standby accelerare lo scale out ripristinandolo o avviandolo. Quindi, il gruppo di istanze gestite reintegra automaticamente il pool in standby con nuove VM per mantenere le dimensioni target.

La modalità pool di scale out è utile per accelerare lo scale out del gruppo di istanze gestite nei seguenti casi:

  • Se usi il gestore della scalabilità automatica di Compute Engine.
  • Se utilizzi gestori della scalabilità automatica di terze parti e vuoi conservare eventuali e integrazione.
  • Se aumenti manualmente la dimensione target delle VM in esecuzione.

In modalità pool di scale out, il gruppo di istanze gestite si comporta come segue:

  • Quando tu o il gestore della scalabilità automatica aumentano la dimensione target delle VM in esecuzione nel gruppo di istanze gestite, Il gruppo di istanze gestite agisce nel seguente ordine:

    1. Il gruppo di istanze gestite riprende le VM sospese nel caso in cui siano disponibili nelle zone in cui il gruppo di istanze gestite fa lo scale out.
    2. Dopo il ripristino delle VM sospese, se la dimensione di destinazione del gruppo di istanze gestite non è non è stato ancora raggiunto, il gruppo di istanze gestite avvia le VM arrestate, se disponibili nelle zone in cui il gruppo di istanze gestite fa lo scale out del gruppo di istanze gestite.
    3. Dopo l'avvio delle VM, se la dimensione di destinazione del gruppo di istanze gestite continua a non creato, crea nuove VM da zero.

    Dopo aver utilizzato il pool in standby per accelerare lo scale out, il gruppo di istanze gestite esegue seguenti:

    1. Crea nuove VM per reintegrare i pool sospesi e arrestati in base sulle dimensioni target e in base alla distribuzione target nel caso di un gruppo di istanze gestite a livello regionale.
    2. Mette le nuove VM in stato di esecuzione.
    3. Sospende o arresta le nuove VM dopo che è trascorso il ritardo iniziale.
  • Quando tu o il gestore della scalabilità automatica riducono le dimensioni target del gruppo di istanze gestite, il gruppo non arresta o sospende automaticamente le VM in esecuzione, ma le elimina.

Ritardo iniziale

Per assicurarti che la VM sia inizializzata correttamente, specifica il ritardo iniziale nel criterio standby. Il ritardo iniziale è il tempo di attesa delle VM prima di essere arrestate o sospese dopo vengono create. In questo modo lo script di inizializzazione ha il tempo di essere completato.

Il ritardo iniziale si verifica nei seguenti casi:

  • Viene creata una nuova VM con lo stato target previsto: SUSPENDED oppure TERMINATED.
  • Un'istanza esistente nello stato RUNNING è stata sospesa o arrestata.

In entrambi i casi, l'istanza può essere inizializzata prima della sospensione o arrestato.

Quando vuoi utilizzare un pool in standby per accelerare la scalabilità rispetto al gruppo di istanze gestite, ti consigliamo di misurare il tempo necessario affinché la tua domanda inizializzare sul tipo di macchina selezionato per assicurarti che sia sufficiente affinché la tua applicazione sia pronta prima di essere sospesa o arrestata. Altrimenti, Il ripristino o l'avvio delle VM dal pool in standby potrebbe richiedere più tempo rispetto alla creazione delle VM partendo da zero.

Stato target per le VM nei MIG

I gruppi di istanze gestite hanno un'API dichiarativa. Ciò significa che dichiari lo stato target alle VM nel gruppo di istanze gestite, e la richiesta API ha esito positivo quando lo stato della destinazione viene salvato. Il gruppo di istanze gestite esegue quindi le operazioni necessarie per raggiungere il target e controllare azione attuale e lo stato attuale di tutte le VM che utilizzano l'API.

La sospensione e l'arresto delle VM in un gruppo di istanze gestite funziona allo stesso modo dichiarativo. Quando invii una richiesta di sospensione o arresto delle VM, il gruppo di istanze gestite archivia le informazioni sullo stato della destinazione per ogni VM e avvia le operazioni necessarie raggiungerlo.

Quando elencare le VM gestite in un gruppo di istanze gestite, il campo targetStatus. Descrive lo stato finale di una VM, quando il gruppo di istanze gestite è stabile. Può essere uno dei seguenti valori:

  • RUNNING
  • STOPPED
  • SUSPENDED

Le VM in un gruppo di istanze gestite possono avere lo stesso stati del ciclo di vita delle singole VM. Di seguito sono riportati alcuni esempi di possibili operazioni su un gruppo di istanze gestite. valori associati del campo targetStatus:

  • Crea la nuova VM e sospendila dopo l'inizializzazione.
    • Stato della destinazione della VM: SUSPENDED.
  • Riprendere una VM sospesa in precedenza.
    • Stato della destinazione della VM: RUNNING
  • Arresta una VM in esecuzione in precedenza.
    • Stato della destinazione della VM: STOPPED
  • Avviare una VM arrestata in precedenza.
    • Stato della destinazione della VM: RUNNING

Limitazioni

  • Le seguenti limitazioni per la sospensione delle VM autonome si applicano anche alla sospensione delle VM in un gruppo di istanze gestite:
      .
    • Non puoi sospendere un'istanza che utilizza una GPU.
    • Non puoi sospendere un'istanza utilizzando i processi standard creati nell'ambiente ospite. Comandi, ad esempio systemctl suspend in Ubuntu 16.04 e successivi, non sono disponibili. L'indicatore "in-ospite" viene ignorato.
    • Puoi sospendere un'istanza solo per un massimo di 60 giorni prima che la VM interrotto automaticamente.
    • Non puoi sospendere istanze con più di 208 GB di memoria.
    • Puoi sospendere le istanze prerilasciabili, ma quest'ultima potrebbe essere è stato risolto prima della sospensione.
    • Non puoi sospendere una Confidential VM.
    • Non puoi sospendere una VM a cui sono collegati dischi protetti da CSEK.
  • In un gruppo di istanze gestite a livello di regione con forma di distribuzione e istanza di destinazione EVEN ridistribuzione abilitata, non puoi sospendere, interrompere, riprendere o avviare VM nel gruppo. Per gestire un pool in standby, imposta le dimensioni target del sospesi e arrestati i pool.
  • Non puoi utilizzare la modalità pool di scale out se hai configurato una seconda istanza modello per canary update nel gruppo di istanze gestite.
  • Non puoi sospendere o arrestare le VM in un gruppo di istanze gestite se Avere disattivato le riparazioni. nel gruppo di istanze gestite.
  • Puoi sospendere un'istanza solo per un massimo di 60 giorni prima che la VM interrotto automaticamente.

Prezzi

A ogni VM arrestata e sospesa vengono addebitati i costi seguenti:

  • Qualsiasi utilizzo di disco permanente per il disco di avvio ed eventuali dischi aggiuntivi collegate alla VM. Per ulteriori informazioni, vedi Prezzi di Persistent Disk.
  • Eventuali IP statici collegati alla VM. Per ulteriori informazioni, vedi Prezzi di IP.
  • Nel caso delle VM sospese, la memoria della VM e lo stato del dispositivo. Per ulteriori informazioni, vedi Prezzi delle istanze VM.

Passaggi successivi