Crea un gruppo di istanze gestite con dischi stateful

Questo documento descrive come creare un gruppo di istanze gestite che conserva i dati sui dischi con un determinato nome dispositivo per tutti VM, anche in caso di nuova creazione di VM, ad esempio quando una VM nel gruppo di istanze gestite viene la riparazione automatica, l'aggiornamento o la nuova creazione. La conservazione dei dischi è utile per alcuni per i carichi di lavoro, ad esempio per database o applicazioni legacy.

Oltre a conservare i dischi per tutte le VM del gruppo, puoi anche configurare un MIG stateful per:

  • Puoi aggiungere e conservare dischi specifici dell'istanza.
  • Puoi aggiungere e conservare metadati specifici dell'istanza.
  • Puoi aggiungere e conservare gli indirizzi IP.

Per ulteriori informazioni, consulta Panoramica di Stateful MIG.

Puoi anche leggere altre informazioni scenari di base per la creazione di un gruppo di istanze gestite.

Prima di iniziare

  • Crea un modello di istanza, necessario per creare un modello gruppo di istanze gestite.
  • Se non l'hai già fatto, configura l'autenticazione. Autenticazione è Il processo di verifica dell'identità per l'accesso ai servizi e alle API di Google Cloud. Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi eseguire l'autenticazione Compute Engine come segue.

    Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

    1. Installa Google Cloud CLI, quindi initialize eseguendo questo comando:

      gcloud init
    2. Set a default region and zone.
    3. Terraform

      Per utilizzare gli esempi di Terraform in questa pagina in un ambiente dell'ambiente di sviluppo, installare e inizializzare gcloud CLI quindi configura Credenziali predefinite dell'applicazione con le tue credenziali utente.

      1. Installa Google Cloud CLI.
      2. Per initialize gcloud CLI, esegui questo comando:

        gcloud init
      3. Crea credenziali di autenticazione locali per il tuo Account Google:

        gcloud auth application-default login

      Per ulteriori informazioni, vedi Set up authentication for a local development environment.

      REST

      Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, utilizzi le credenziali che fornisci a gcloud CLI.

        Installa Google Cloud CLI, quindi initialize eseguendo questo comando:

        gcloud init

      Per ulteriori informazioni, vedi Esegui l'autenticazione per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud.

Limitazioni

Un gruppo di istanze gestite con configurazione stateful: MIG stateful: presenta le seguenti limitazioni:

  • Non puoi utilizzare la scalabilità automatica se il gruppo di istanze gestite ha una configurazione stateful.
  • Se vuoi utilizzare gli aggiornamenti in sequenza automatici, devi impostare il valore metodo di sostituzione a RECREATE.
  • Per i MIG regionali stateful, devi disabilitare la ridistribuzione proattiva (imposta il tipo di ridistribuzione su NONE) per impedire l'eliminazione degli oggetti mediante la ridistribuzione automatica tra zone.
  • Se utilizzi una configurazione di tutte le istanze per sostituire le proprietà del modello di istanza, non puoi specificarle in qualsiasi configurazione per istanza e, contemporaneamente, nella configurazione configurazione di tutte le istanze.

Per visualizzare l'elenco completo delle limitazioni del gruppo di istanze gestite, che varia in base alla configurazione che utilizzi, vedi Limitazioni del gruppo di istanze gestite.

Crea un gruppo di istanze gestite con dischi stateful

Utilizzare la console Google Cloud , il gcloud CLI Terraform, o REST.

Console

  1. Vai alla pagina Gruppi di istanze.

    Vai a Gruppi di istanze

    I passaggi rimanenti vengono visualizzati nella console Google Cloud.

  2. Fai clic su Crea gruppo di istanze.
  3. Seleziona l'opzione Nuovo gruppo di istanze gestite (stateful).
  4. Assegna un nome e, facoltativamente, una descrizione al gruppo di istanze.
  5. Scegli un modello di istanza per il gruppo di istanze o creane uno nuovo.
  6. Nel campo Numero di istanze, specifica il numero iniziale di VM necessarie in questo gruppo.
  7. Nella sezione Configurazione stateful in Configurazione gruppo, fai clic sul disco che vuoi rendere stateful, quindi segui i passaggi riportati di seguito.
    1. Nella sezione Stateful, seleziona .
    2. Nell'elenco Con l'eliminazione definitiva dell'istanza, scegli se vuoi scollegare il disco o eliminarlo quando elimini definitivamente la VM.
    3. Per salvare le impostazioni, fai clic su Fine.
  8. Per creare il gruppo di istanze gestite, fai clic su Crea.

gcloud

specificare quali dischi del modello di istanza devono essere stateful sul gruppo di istanze gestite. creazione, utilizza il flag --stateful-disk con Comando gcloud compute instance-groups managed create:

gcloud compute instance-groups managed create INSTANCE_GROUP_NAME \
    --template INSTANCE_TEMPLATE \
    --size SIZE \
    --stateful-disk device-name=DEVICE_NAME[,auto-delete=DELETE_RULE]

Sostituisci quanto segue:

  • INSTANCE_GROUP_NAME: il nome dell'account gestito gruppo di istanze gestite.
  • INSTANCE_TEMPLATE: il nome dell'istanza modello da utilizzare durante la creazione delle istanze. Per un'istanza a livello di regione devi specificare l'URL completo o parziale del modello. Un un esempio di URL completo https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1/instanceTemplates/example-regional-instance-template e un URL parziale è projects/example-project/regions/us-central1/instanceTemplates/example-regional-instance-template.
  • SIZE: il numero iniziale di VM di cui hai bisogno in questo gruppo.
  • DEVICE_NAME: il nome del dispositivo di un del disco specificato nel modello di istanza.
  • DELETE_RULE: un valore che indica cosa succederebbe a un disco stateful quando viene eliminata una VM. Disponibile sono:

    • never: (opzione predefinita). Non eliminare mai il disco. scollega del disco quando la rispettiva VM viene eliminata.
    • on-permanent-instance-deletion: elimina il disco quando la rispettiva istanza VM viene eliminata definitivamente dal gruppo di istanze, ad esempio quando l'istanza gestita viene eliminata manualmente o quando la dimensione del gruppo è diminuita.

    A prescindere dal valore della regola di eliminazione, i dischi stateful sono sempre e mantenere le operazioni di riparazione automatica, aggiornamento e ricreazione delle VM.

Terraform

Se non hai già creato un modello di istanza, che specifica tipo di macchina, immagine disco di avvio, rete e altre proprietà VM per ogni VM nel gruppo di istanze gestite, crea un modello di istanza.

specificare quali dischi del modello di istanza devono essere stateful sul gruppo di istanze gestite. creazione, includi il blocco stateful_disk. Il seguente esempio crea un'istanza un gruppo di istanze gestite a livello di zona con dischi stateful. Per ulteriori informazioni sulla risorsa è utilizzata nell'esempio, consulta google_compute_instance_group_manager risorsa.

resource "google_compute_instance_group_manager" "default" {
  name               = "igm-stateful-disk-basic"
  zone               = "us-central1-f"
  base_instance_name = "instance"
  target_size        = 1

  version {
    instance_template = google_compute_instance_template.default.id
  }

  stateful_disk {
    device_name = "example-disk"
    delete_rule = "NEVER"
  }

}

Per scoprire come applicare o rimuovere una configurazione Terraform, consulta: Comandi Terraform di base.

REST

specificare quali dischi del modello di istanza devono essere stateful sul gruppo di istanze gestite. creazione, includile nel campo statefulPolicy del corpo della richiesta. Per un gruppo di istanze gestite a livello di zona, utilizza Metodo instanceGroupManagers.insert o per un gruppo di istanze gestite a livello di regione, utilizza metodo regionInstanceGroupManagers.insert.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/instanceGroupManagers

{
  "name": "NAME",
  "versions": [
    {
      "instanceTemplate": "global/instanceTemplates/TEMPLATE"
    }
  ],
  "targetSize": SIZE,
  "statefulPolicy": {
    "preservedState": {
      "disks": {
        "DEVICE_NAME": {"autoDelete": "DELETE_RULE" },
        "DEVICE_NAME": {"autoDelete": "DELETE_RULE" }
      }
    }
  }
}

Sostituisci quanto segue:

  • PROJECT: l'ID progetto per la richiesta.
  • ZONE: il zona in cui si trova il gruppo di istanze gestite (si applica a un gruppo di istanze gestite a livello di zona).
    • Per un gruppo di istanze gestite a livello di regione, sostituisci zones/ZONE con regions/REGION e specificare la regione il gruppo di istanze gestite.
  • NAME: il nome del gruppo di istanze gestite da creare.
  • TEMPLATE: il nome del modello di istanza da durante la creazione delle istanze.
  • SIZE: il numero iniziale di istanze di cui hai bisogno in questo gruppo.
  • DEVICE_NAME: il nome del dispositivo di un del disco specificato nel modello di istanza.
  • DELETE_RULE: un valore che indica che cosa dovrebbe accadere al disco stateful quando l'istanza VM viene eliminata. Le opzioni disponibili sono:

    • never: (opzione predefinita). Non eliminare mai il disco. scollega il disco viene eliminata.
    • on_permanent_instance_deletion: elimina il disco stateful quando la rispettiva VM è permanente eliminato dal gruppo di istanze, ad esempio quando l'istanza gestita eliminati manualmente o quando la dimensione del gruppo viene ridotta.

    A prescindere dal valore della regola di eliminazione, i dischi stateful mantenimento costante durante la riparazione automatica, l'aggiornamento e la ricreazione dell'istanza operations.

Passaggi successivi