Crea un gruppo di istanze gestite che utilizza VM prerilasciabili


Questo documento descrive come creare un gruppo di istanze gestite che utilizza istanze di macchine virtuali (VM) prerilasciabili. Le VM prerilasciabili sono utili se il tuo carico di lavoro può tollerare le interruzioni e vuoi sfruttare i risparmi sui costi associati alle VM prerilasciabili.

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

Prima di iniziare

  • Se non l'hai ancora 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 autenticarti su 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. Install the Google Cloud CLI, then initialize it by running the following command:

      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. Install the Google Cloud CLI.
      2. To initialize the gcloud CLI, run the following command:

        gcloud init
      3. If you're using a local shell, then create local authentication credentials for your user account:

        gcloud auth application-default login

        You don't need to do this if you're using Cloud Shell.

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

      REST

      Per utilizzare gli esempi dell'API REST in questa pagina in un ambiente di sviluppo locale, utilizza le credenziali fornite a gcloud CLI.

        Install the Google Cloud CLI, then initialize it by running the following command:

        gcloud init

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

Limitazioni

Per visualizzare l'elenco completo delle limitazioni dei gruppi di istanze gestite, che varia in base alla configurazione utilizzata, consulta Limitazioni dei gruppi di istanze gestite.

Crea un modello di istanza con VM prerilasciabili

Puoi utilizzare un gruppo di istanze gestite a livello di zona o di regione per creare rapidamente VM prerilasciabili, che possono ridurre dei costi delle VM nei gruppi di istanze gestite. Ad esempio, creare un gruppo di VM prerilasciabili, utilizzarle per eseguire un'elaborazione batch l'attività, quindi elimina il gruppo al termine dell'attività.

Per creare un gruppo di VM prerilasciabili, imposta l'opzione prerilasciabile in una modello di istanza e poi utilizzare il modello per creare il gruppo di istanze gestite.

Console

  1. Nella console, vai alla pagina Modelli di istanza.

    Vai a Modelli di istanza

    I passaggi rimanenti vengono visualizzati nella console Google Cloud.

  2. Fai clic su Crea modello istanza.
  3. Inserisci le proprietà per il modello di istanza.
  4. Fai clic su Opzioni avanzate ed espandi la sezione Gestione.
  5. In Criterio di disponibilità, nell'elenco Modello di provisioning delle VM, scegli Spot.
  6. Fai clic su Crea per creare il modello.

gcloud

Crea un modello di istanza utilizzando il comando instance-templates create. Includi il flag --preemptible.

gcloud compute instance-templates create INSTANCE_TEMPLATE \
    --preemptible

Terraform

L'esempio seguente crea un modello di istanza globale. Per fornire l'opzione preemitiva, includi il blocco scheduling. Per saperne di più sulla risorsa utilizzata nell'esempio, consulta google_compute_instance_template risorsa. Per creare un'istanza a livello di regione usa la risorsa google_compute_region_instance_template.

resource "google_compute_instance_template" "default" {
  name         = "preemptible-template"
  machine_type = "n1-standard-1"
  disk {
    source_image = "debian-cloud/debian-11"
  }
  network_interface {
    network = "default"
  }
  scheduling {
    preemptible       = "true"
    automatic_restart = "false"
  }
}

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

REST

Chiama il Metodo instanceTemplates.insert per creare un nuovo modello di istanza. Includi scheduling.preemptible e impostala su true.

{
"name": "INSTANCE_TEMPLATE",
"properties": {
  "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE",
  "networkInterfaces": [
    {
      "network": "global/networks/default",
      "accessConfigs":
      [
        {
          "name": "external-IP",
          "type": "ONE_TO_ONE_NAT"
        }
      ]
    }
  ],
  "scheduling":
  {
    "preemptible": true
  },
  "disks":
  [
    {
      "type": "PERSISTENT",
      "boot": true,
      "mode": "READ_WRITE",
      "initializeParams":
      {
        "sourceImage": "projects/debian-cloud/global/images/family/debian-9"
      }
    }
  ]
  }
}

Dopo aver creato il modello di istanza, utilizzalo per creare un gruppo di istanze gestite con VM limitate a una singola zona o con VM distribuite in più zone di una regione.

Passaggi successivi