MIG erstellen, die VMs auf Abruf verwendet

In diesem Dokument wird gezeigt, wie Sie eine verwaltete Instanzgruppe (MIG) erstellen, die VM-Instanzen auf Abruf nutzt. VMs auf Abruf sind hilfreich, wenn Ihre Arbeitslast in der Lage ist, Unterbrechungen zu tolerieren, und Sie von den Kosteneinsparungen profitieren möchten, die mit VMs auf Abruf verbunden sind.

Über den Link erhalten Sie weitere Informationen zu anderen grundlegenden Szenarien zum Erstellen einer verwalteten Instanzgruppe.

Hinweis

  • Richten Sie die Authentifizierung ein, falls dies noch nicht geschehen ist. Bei der Authentifizierung wird Ihre Identität für den Zugriff auf Dienste und APIs von Google Cloud überprüft. Zum Ausführen von Code oder Beispielen aus einer lokalen Entwicklungsumgebung können Sie sich so bei der Compute Engine authentifizieren:

    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. Installieren Sie die Google Cloud CLI. Initialisieren Sie die Google Cloud CLI nach der Installation mit dem folgenden Befehl:

      gcloud init

      Wenn Sie einen externen Identitätsanbieter (IdP) verwenden, müssen Sie sich zuerst mit Ihrer föderierten Identität in der gcloud CLI anmelden.

    2. Set a default region and zone.

    Terraform

    Wenn Sie die Terraform-Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung verwenden möchten, installieren und initialisieren Sie die gcloud CLI und richten Sie dann die Standardanmeldedaten für Anwendungen mit Ihren Nutzeranmeldedaten ein.

      Installieren Sie die Google Cloud CLI.

      Wenn Sie einen externen Identitätsanbieter (IdP) verwenden, müssen Sie sich zuerst mit Ihrer föderierten Identität in der gcloud CLI anmelden.

      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.

      If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.

    Weitere Informationen finden Sie unter Set up authentication for a local development environment.

    REST

    Wenn Sie die REST API-Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung verwenden möchten, verwenden Sie die Anmeldedaten, die Sie der gcloud CLI bereitstellen.

      Installieren Sie die Google Cloud CLI.

      Wenn Sie einen externen Identitätsanbieter (IdP) verwenden, müssen Sie sich zuerst mit Ihrer föderierten Identität in der gcloud CLI anmelden.

    Weitere Informationen finden Sie in der Dokumentation zur Google Cloud -Authentifizierung unter Für die Verwendung von REST authentifizieren.

Einschränkungen

Eine vollständige Liste der Einschränkungen für verwaltete Instanzgruppen, die je nach verwendeter Konfiguration variieren, finden Sie unter Einschränkungen für verwaltete Instanzgruppen.

Instanzvorlage mit VMs auf Abruf erstellen

Sie können mit einer zonalen oder regionalen verwalteten Instanzgruppe schnell mehrere VMs auf Abruf erstellen. Dadurch lassen sich die Kosten der VMs in Ihren verwalteten Instanzgruppen reduzieren. Legen Sie beispielsweise eine Gruppe von Instanzen auf Abruf an, um eine Aufgabe der Batchverarbeitung auszuführen, und löschen Sie sie wieder, wenn die Aufgabe abgeschlossen ist.

Zum Erstellen einer Gruppe von VMs auf Abruf legen Sie die entsprechende Option in der Instanzvorlage fest und erstellen dann anhand der Vorlage die verwaltete Instanzgruppe.

Console

  1. Rufen Sie in der Console die Seite Instanzvorlagen auf.

    Instanzvorlagen aufrufen

    Die verbleibenden Schritte werden in der Google Cloud Console angezeigt.

  2. Klicken Sie auf Instanzvorlage erstellen.
  3. Legen Sie die Attribute der Instanzvorlage fest.
  4. Klicken Sie auf Erweiterte Optionen und maximieren Sie den Bereich Verwaltung.
  5. Wählen Sie unter Verfügbarkeitsrichtlinie in der Liste VM-Bereitstellungsmodell die Option Spot aus.
  6. Klicken Sie auf Erstellen, um die Vorlagen anzulegen.

gcloud

Erstellen Sie mithilfe des Befehls instance-templates create eine Instanzvorlage. Fügen Sie das Flag --preemptible ein.

gcloud compute instance-templates create INSTANCE_TEMPLATE \
    --preemptible

Terraform

Im folgenden Beispiel wird eine globale Instanzvorlage erstellt. Fügen Sie den Block scheduling ein, um die Option für Instanzen auf Abruf anzugeben. Weitere Informationen zu der im Beispiel verwendeten Ressource finden Sie unter google_compute_instance_template-Ressource. Verwenden Sie zum Erstellen einer regionalen Instanzvorlage die Ressource 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"
  }
}

Informationen zum Anwenden oder Entfernen einer Terraform-Konfiguration finden Sie unter Grundlegende Terraform-Befehle.

REST

Erstellen Sie mit der Methode instanceTemplates.insert eine neue Instanzvorlage. Fügen Sie das Attribut scheduling.preemptible hinzu und legen Sie dafür true fest.

{
"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"
      }
    }
  ]
  }
}

Nachdem Sie die Instanzvorlage angelegt haben, können Sie damit eine verwaltete Instanzgruppe mit VMs erstellen, die auf eine einzige Zone beschränkt sind, oder mit VMs, die über mehrere Zonen in einer Region verteilt sind.

Nächste Schritte