MIG mit mehreren Maschinentypen erstellen

In diesem Dokument wird beschrieben, wie Sie eine verwaltete Instanzgruppe (Managed Instance Group, MIG) mit Instanzflexibilität erstellen. Mit dieser Funktion können Sie mehrere Maschinentypen in der MIG angeben.

Die Instanzflexibilität trägt dazu bei, die Verfügbarkeit von Ressourcen zu verbessern, insbesondere für Anwendungen, die auf verschiedenen Maschinentypen ausgeführt werden können und die eine große Kapazität oder Hardware mit hoher Nachfrage erfordern. Weitere Informationen finden Sie unter Instanzflexibilität.

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 Cloud de Confiance by S3NS Dienste und APIs überprüft. Wenn Sie Code oder Beispiele aus einer lokalen Entwicklungsumgebung ausführen möchten, können Sie sich bei Compute Engine authentifizieren, indem Sie eine der folgenden Optionen auswählen:

    Wählen Sie den Tab für die Verwendung der Beispiele auf dieser Seite aus:

    Console

    Wenn Sie über die Cloud de Confiance Console auf Cloud de Confiance by S3NS Dienste und APIs zugreifen, müssen Sie die Authentifizierung nicht einrichten.

    gcloud

    1. Installieren Sie die Google Cloud CLI und melden Sie sich dann mit Ihrer föderierten Identität in der gcloud CLI an. Nach der Anmeldung, initialisieren Sie die Google Cloud CLI mit dem folgenden Befehl:

      gcloud init
  • Legen Sie eine Standardregion und -zone fest.
  • 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.

    1. Installieren Sie die Google Cloud CLI.

    2. Konfigurieren Sie die gcloud CLI für die Verwendung Ihrer föderierten Identität.

      Weitere Informationen finden Sie unter Mit Ihrer föderierten Identität in der gcloud CLI anmelden.

    3. Erstellen Sie lokale Anmeldedaten zur Authentifizierung für Ihr Nutzerkonto:

      gcloud auth application-default login

      Wenn ein Authentifizierungsfehler zurückgegeben wird und Sie einen externen Identitätsanbieter (IdP) verwenden, prüfen Sie, ob Sie sich mit Ihrer föderierten Identität in der gcloud CLI angemeldet haben.

    Weitere Informationen finden Sie unter Authentifizierung für eine lokale Entwicklungsumgebung einrichten.

    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 und melden Sie sich dann mit Ihrer föderierten Identität in der gcloud CLI an.

    Weitere Informationen finden Sie in der Cloud de Confiance Authentifizierungsdokumentation unter Für die Verwendung von REST authentifizieren.

MIG mit mehreren Maschinentypen erstellen

Console

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

    Zu den Instanzgruppen

  2. Klicken Sie auf Instanzgruppe erstellen.

  3. Geben Sie im Feld Name einen Namen für die MIG ein.

  4. Wählen Sie in der Liste Instanzvorlage die Instanzvorlage aus, die Sie für die MIG verwenden möchten.

  5. Bevor Sie die Anzahl der Instanzen angeben und Instanzauswahlen hinzufügen können, müssen Sie Folgendes tun:

    1. Rufen Sie den Abschnitt Standort auf der Seite auf und legen Sie einen Standort fest:

      1. Wählen Sie Mehrere Zonen aus.

      2. Wählen Sie in den Drop-down-Menüs Regionen und Zonen eine Region und die Zonen aus, in denen Sie die VMs in der MIG erstellen möchten. Wenn Sie eine regionale Instanzvorlage ausgewählt haben, wird die Region dieser Vorlage standardmäßig ausgewählt.

      3. Wählen Sie im Feld Zielverteilungsform die Option Ausgeglichen, Beliebig oder Beliebige einzelne Zone aus.

        • Wenn Sie Ausgeglichen oder Beliebige einzelne Zone auswählen, klicken Sie im angezeigten Dialogfeld auf Umverteilung von Instanzen deaktivieren.

        • Wenn Sie Beliebig auswählen, darf das Kästchen Umverteilung von Instanzen zulassen nicht ausgewählt sein.

    2. Rufen Sie den Abschnitt Autoscaling auf der Seite auf und löschen Sie die Autoscaling-Konfiguration:

      1. Klicken Sie im Drop-down-Menü Autoscaling-Modus auf Autoscaling-Konfiguration löschen.

      2. Klicken Sie im angezeigten Dialogfeld auf Löschen.

    3. Scrollen Sie zurück zum Feld Anzahl der Instanzen.

  6. Geben Sie im Feld Anzahl der Instanzen die Anzahl der VMs an, die Sie in der Gruppe haben möchten.

  7. Klicken Sie im Abschnitt Instanzauswahlen auf Auswahlen hinzufügen.

    Das Fenster Instanzauswahlen wird geöffnet.

    1. Klicken Sie auf Instanzauswahl hinzufügen.

    2. Führen Sie im Abschnitt Neue Instanzauswahl folgende Schritte aus:

      1. Geben Sie im Feld Name einen Namen für die Instanzauswahl ein.

      2. Klicken Sie im Abschnitt Maschinentypen auf Maschinentyp hinzufügen, wählen Sie einen Maschinentyp aus, den Sie in der Instanzauswahl hinzufügen möchten, und klicken Sie dann auf Fertig.

        Wiederholen Sie diesen Schritt für jeden Maschinentyp, den Sie der Instanzauswahl hinzufügen möchten.

      3. Wenn Sie alle gewünschten Maschinentypen hinzugefügt haben, klicken Sie auf Fertig.

  8. Klicken Sie im Fenster Instanzauswahlen auf Fertig.

  9. Lassen Sie die anderen Felder in den Standardeinstellungen oder ändern Sie sie nach Bedarf.

  10. Klicken Sie auf Erstellen.

gcloud

Verwenden Sie den instance-groups managed create Befehl wie folgt, um eine regionale MIG mit mehreren Maschinentypen zu erstellen:

gcloud compute instance-groups managed create INSTANCE_GROUP_NAME \
    --region REGION \
    --size TARGET_SIZE \
    --template INSTANCE_TEMPLATE_URL \
    --target-distribution-shape SHAPE \
    --instance-redistribution-type none \
    --instance-selection-machine-types MACHINE_TYPE,MACHINE_TYPE,...

Zonale MIGs unterstützen keine Instanzflexibilität. Wenn Sie jedoch eine MIG in einer einzelnen Zone erstellen möchten, legen Sie die Zielverteilungsform auf any-single-zone fest. Wenn Sie eine bestimmte Zone verwenden möchten, verwenden Sie die any-single-zone Verteilungsform und fügen Sie das --zones ZONE Flag hinzu.

Ersetzen Sie Folgendes:

  • INSTANCE_GROUP_NAME: Name der MIG.
  • REGION: Die Region, in der Sie die MIG erstellen möchten.
  • TARGET_SIZE: Die Anzahl der VMs, die die MIG erstellen und verwalten soll.
  • INSTANCE_TEMPLATE_URL: Die URL der Instanzvorlage, die Sie zum Erstellen von Instanzen in der MIG verwenden möchten. Die URL kann entweder die ID oder den Namen der Instanzvorlage enthalten. Geben Sie einen der folgenden Werte an:
    • Für eine regionale Instanzvorlage: projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID
    • Für eine globale Instanzvorlage: INSTANCE_TEMPLATE_ID
  • SHAPE: Die Zielverteilungsform. Der Wert kann sein balanced, any oder any-single-zone.
  • MACHINE_TYPE: Die Maschinentypen, die Sie in der MIG konfigurieren möchten, z. B. n1-standard-16,n2-standard-16,e2-standard-16.

Terraform

Wenn Sie noch keine Instanzvorlage erstellt haben, die die VM-Attribute angibt, die Sie für jede VM in Ihrer MIG verwenden möchten, erstellen Sie eine Instanzvorlage.

Verwenden Sie die google_compute_region_instance_group_manager Ressource, um eine regionale MIG mit mehreren Maschinentypen zu erstellen.

resource "google_compute_region_instance_group_manager" "default" {
  name               = "flex-igm"
  base_instance_name = "tf-test-flex-igm"
  region             = "us-central1"

  target_size                      = 3
  distribution_policy_target_shape = "ANY_SINGLE_ZONE"

  version {
    instance_template = google_compute_instance_template.default.id
  }

  instance_flexibility_policy {
    instance_selections {
      name          = "default-instance-selection"
      machine_types = ["n1-standard-16", "n2-standard-16", "e2-standard-16"]
    }
  }

  update_policy {
    instance_redistribution_type = "NONE"
    type                         = "OPPORTUNISTIC"
    minimal_action               = "REPLACE"
    max_surge_fixed              = 0
    max_unavailable_fixed        = 6
  }
}

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

REST

Senden Sie eine POST Anfrage an die regionInstanceGroupManagers.insert Methode, um eine regionale MIG mit mehreren Maschinentypen zu erstellen.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers

{
  "name": "INSTANCE_GROUP_NAME",
  "targetSize": TARGET_SIZE,
  "instanceTemplate": "INSTANCE_TEMPLATE_URL",
  "distributionPolicy": {
    "targetShape": "SHAPE"
  },
  "updatePolicy": {
    "instanceRedistributionType": "NONE"
  },
  "instanceFlexibilityPolicy": {
    "instanceSelections": {
      "INSTANCE_SELECTION": {
        "machineTypes": [
          "MACHINE_TYPE_1",
          "MACHINE_TYPE_2",
          ...
        ]
      }
    }
  }
}

Zonale MIGs unterstützen keine Instanzflexibilität. Wenn Sie jedoch eine MIG in einer einzelnen Zone erstellen möchten, legen Sie die Zielverteilungsform auf ANY_SINGLE_ZONE fest. Wenn Sie eine bestimmte Zone verwenden möchten, verwenden Sie die Verteilungsform ANY_SINGLE_ZONE und fügen Sie das Feld distributionPolicy.zones[].zone in die Anfrage ein.

Ersetzen Sie Folgendes:

  • PROJECT_ID: Ihre Projekt-ID.
  • REGION: Die Region, in der Sie die MIG erstellen möchten.
  • INSTANCE_GROUP_NAME: Name der MIG.
  • TARGET_SIZE: Die Anzahl der VMs, die die MIG erstellen und verwalten soll.
  • INSTANCE_TEMPLATE_URL: Die URL der Instanzvorlage, die Sie zum Erstellen von Instanzen in der MIG verwenden möchten. Die URL kann entweder die ID oder den Namen der Instanzvorlage enthalten. Geben Sie einen der folgenden Werte an:
    • Für eine regionale Instanzvorlage: projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID
    • Für eine globale Instanzvorlage: INSTANCE_TEMPLATE_ID
  • SHAPE: Die Zielverteilungsform. Der Wert kann sein BALANCED, ANY, oder ANY_SINGLE_ZONE.
  • INSTANCE_SELECTION: Der Name für die Liste der Maschinentypen.
  • MACHINE_TYPE: Die Maschinentypen, die Sie in der MIG konfigurieren möchten, z. B. "n1-standard-16","n2-standard-16","e2-standard-16".

Nächste Schritte