MIG in einer einzelnen Zone erstellen


In diesem Dokument wird beschrieben, wie Sie eine verwaltete Instanzgruppe (Managed Instance Group, MIG) in einer einzelnen Zone erstellen. Durch das Platzieren aller VMs Ihrer MIG in einer einzelnen Zone wird die Latenz minimiert. Dies ist für bestimmte Arbeitslasten nützlich, z. B. Batch-Arbeitslasten.

Diese Art von MIG wird auch als zonale MIG bezeichnet.

Weitere Informationen zu anderen grundlegenden Szenarien zum Erstellen einer MIG.

Vorbereitung

  • Erstellen Sie eine Instanzvorlage. Dies ist zum Erstellen einer verwalteten Instanzgruppe erforderlich.
  • Richten Sie die Authentifizierung ein, falls Sie dies noch nicht getan haben. Bei der Authentifizierung wird Ihre Identität für den Zugriff auf Google Cloud-Dienste und APIs überprüft. Zur Ausführung von Code oder Beispielen aus einer lokalen Entwicklungsumgebung können Sie sich bei Compute Engine authentifizieren. Wählen Sie dazu eine der folgenden Optionen aus:

    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

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

      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.

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

      REST

      Verwenden Sie die von der gcloud CLI bereitgestellten Anmeldedaten, um die REST API-Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung zu verwenden.

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

        gcloud init

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

Beschränkungen

Eine vollständige Liste der MIG-Einschränkungen, die je nach verwendeter Konfiguration variieren, finden Sie unter MIG-Einschränkungen.

MIG in einer einzelnen Zone erstellen

Verwenden Sie zum Erstellen einer MIG in einer einzelnen Zone die Google Cloud Console, die gcloud CLI, Terraform oderREST.

Console

  1. Rufen Sie in der Google Cloud Console die Seite Instanzgruppen auf.

    Zu den Instanzgruppen

    Die verbleibenden Schritte werden in der Google Cloud Console angezeigt.

  2. Klicken Sie auf Instanzgruppe erstellen.
  3. Wenn Sie eine zustandsorientierte MIG erstellen möchten, wählen Sie die Option Neue verwaltete Instanzgruppe (zustandsorientiert) aus. Weitere Informationen finden Sie unter Wann werden zustandsorientierte MIGs verwendet?.
  4. Weisen Sie der Instanzgruppe einen Namen und optional eine Beschreibung zu.
  5. Wählen Sie eine Instanzvorlage für die Instanzgruppe aus oder erstellen Sie eine neue Vorlage.
  6. Geben Sie die Anzahl der VMs für diese Gruppe an. Denken Sie daran, genügend VMs bereitzustellen, um den Anwendungsbetrieb bei einem Zonenfehler aufrechtzuerhalten.
  7. Wählen Sie für Standort die Option Einzelne Zone aus.
  8. Wählen Sie die Region und die Zone aus, in der Sie die MIG erstellen möchten. Wenn Sie eine regionale Instanzvorlage ausgewählt haben, wird die Region automatisch anhand der Region der Vorlage ausgewählt.
  9. Für zustandslose MIGs ist Autoscaling standardmäßig aktiviert. Beim Autoscaling fügt Ihre Gruppe entsprechend ihrer Auslastung Instanzen automatisch hinzu oder entfernt diese.
  10. Optional können Sie auch die automatische Reparatur aktivieren, um anwendungsbasierte Systemdiagnosen auf VMs innerhalb der Gruppe auszuführen.
  11. Klicken Sie auf Erstellen, um die neue Gruppe anzulegen.

gcloud

Wenn Sie noch keine Instanzvorlage erstellt haben, die den Maschinentyp, das Bootlaufwerk-Image, das Netzwerk und andere VM-Attribute angibt, die Sie für jede VM in Ihrer MIG verwenden möchten, erstellen Sie eine Instanzvorlage

Erstellen Sie mit dem Befehl instance-groups managed create eine verwaltete Instanzgruppe und geben Sie den Gruppennamen, die Gruppengröße, die Instanzvorlage und die Zone an.

gcloud compute instance-groups managed create INSTANCE_GROUP_NAME \
    --size SIZE \
    --template INSTANCE_TEMPLATE \
    --zone ZONE

Dabei gilt:

  • INSTANCE_GROUP_NAME: Der Name dieser Instanzgruppe.
  • SIZE: Die Größe der Instanzgruppe.
  • INSTANCE_TEMPLATE: Der Name der Instanzvorlage, die für diese Gruppe verwendet werden soll. Bei einer regionalen Instanzvorlage müssen Sie die URL der Vorlage vollständig oder teilweise angeben. Ein Beispiel für eine vollständige URL ist https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1/instanceTemplates/example-regional-instance-template und für eine teilweise URL projects/example-project/regions/us-central1/instanceTemplates/example-regional-instance-template.
  • ZONE: Eine für Compute Engine verfügbare Zone. Wenn Sie die VMs der MIG auf mehrere Zonen in einer Region verteilen möchten, lesen Sie die Informationen unter Regionale MIG erstellen.

Optional können Sie das Flag --base-instance-name angeben. Da diese VMs auf einer gemeinsamen Vorlage basieren, wird jeder VM ein zufälliger String als Teil des VM-Namens zugewiesen. Der Basisname wird diesem String vorangestellt. Wenn Sie beispielsweise den Basisnamen als test festlegen, haben VMs Namen wie test-yahs und test-qtyz. Wenn Sie bestimmte Namen benötigen, finden Sie weitere Informationen unter Instanzen mit bestimmten Namen in MIGs erstellen.

Mit dem folgenden Befehl wird beispielsweise eine Instanzgruppe namens "example-group" mit dem Basis-VM-Namen test erstellt. Die Gruppe umfasst drei Instanzen:

gcloud compute instance-groups managed create example-group \
    --base-instance-name test \
    --size 3 \
    --template an-instance-template \
    --zone us-central1-f

Terraform

Wenn Sie noch keine Instanzvorlage erstellt haben, die den Maschinentyp, das Bootlaufwerk-Image, das Netzwerk und andere VM-Attribute angibt, die Sie für jede VM in Ihrer MIG verwenden möchten, erstellen Sie eine Instanzvorlage

Zum Erstellen einer zonalen MIG können Sie die Ressource google_compute_instance_group_manager verwenden.

resource "google_compute_instance_group_manager" "default" {

  name               = "example-group"
  base_instance_name = "test"
  target_size        = 3
  zone               = "us-central1-f"

  version {
    instance_template = google_compute_instance_template.default.id
    name              = "primary"
  }
}

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

REST

Wenn Sie noch keine Instanzvorlage erstellt haben, die den Maschinentyp, das Bootlaufwerk-Image, das Netzwerk und andere VM-Attribute angibt, die Sie für jede VM in Ihrer MIG verwenden möchten, erstellen Sie eine Instanzvorlage

Erstellen Sie eine verwaltete Instanzgruppe mit der Methode instanceGroupManagers.insert. Geben Sie im Anfragetext den Gruppennamen, die Gruppengröße und die URL zur Instanzvorlage an.

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

{
  "versions": [
    {
      "instanceTemplate": "global/instanceTemplates/INSTANCE_TEMPLATE"
    }
  ],
  "name": "INSTANCE_GROUP_NAME",
  "targetSize": SIZE
}

Dabei gilt:

  • PROJECT_ID: die Projekt-ID für die Anfrage.
  • ZONE: die Zone für die Anfrage. Wenn Sie die VMs Ihrer MIG auf mehrere Zonen in einer Region verteilen möchten, ersetzen Sie zones/ZONE durch regions/REGION und geben Sie eine Region an. Weitere Informationen finden Sie unter Regionale MIG erstellen.
  • INSTANCE_GROUP_NAME: Der Name dieser Instanzgruppe.
  • SIZE: Die Größe der Instanzgruppe.
  • INSTANCE_TEMPLATE: Der Name der Instanzvorlage für diese Gruppe.

Optional können Sie das Feld base-name angeben. Da diese VMs auf einer gemeinsamen Vorlage basieren, wird jeder VM ein zufälliger String als Teil des VM-Namens zugewiesen. Der Basisname wird diesem String vorangestellt. Wenn Sie beispielsweise den Basisnamen als test festlegen, haben VMs Namen wie test-yahs und test-qtyz. Wenn Sie bestimmte Namen benötigen, finden Sie weitere Informationen unter Instanzen mit bestimmten Namen in MIGs erstellen.

Je nachdem, wie Sie eine MIG konfigurieren und darauf reagieren, können sich verschiedene Richtlinien und Aktionen auf die Instanzen in der Gruppe auswirken. Informationen darüber, welche verwalteten Instanzen aktiv sind, finden Sie unter Status von verwalteten Instanzen prüfen.

Nächste Schritte