Verwaltete Instanzgruppen erstellen

In diesem Dokument wird beschrieben, wie Sie eine verwaltete Instanzgruppe (Managed Instance Group, MIG) erstellen. Eine MIG ist eine Gruppe von VM-Instanzen, die Sie als eine Entität steuern. MIGs unterstützen Features wie automatische Reparatur, Load-Balancing, Autoscaling, automatische Updates und zustandsorientierte Arbeitslasten.

Sie können regionale MIGs oder zonale MIGs erstellen. Regionale MIGs bieten eine höhere Verfügbarkeit als zonale MIGs, da die Instanzen in einer regionalen MIG über mehrere Zonen innerhalb einer Region verteilt sind. Dieses Dokument enthält Informationen zum Erstellen zonaler oder regionaler MIGs. Allerdings gibt es für regionale MIGs zusätzliche Optionen und Überlegungen. Weitere Informationen zu regionalen MIGs finden Sie in der Übersicht zu regionalen MIGs.

Konzeptionelle Informationen zu Instanzgruppen und ihren Features finden Sie in der Übersicht zu Instanzgruppen.

Hinweis

Beschränkungen

  • Mit einer regionalen MIG können Sie bis zu 2.000 VMs in einer Region mit maximal 1.000 VMs pro Zone erstellen. Mit einer zonalen MIG können Sie bis zu 1.000 VMs erstellen. Wenden Sie sich bei höherem Bedarf an den Support.
  • Wenn Sie eine MIG aktualisieren, können Sie bis zu 1.000 VMs in einer einzelnen Anfrage angeben.
  • Wenn Sie eine zustandsorientierte MIG wünschen, lesen Sie die Beschränkungen für zustandsorientierte MIGs.

  • Wenn Sie eine regionale MIG wünschen, lesen Sie die Beschränkungen für regionale MIGs.

  • Die Unterstützung für freigegebene VPCs auf anderen Schnittstellen als nic0 wird nur für einzelne VMs unterstützt. Es besteht keine Unterstützung bei Compute Engine-Instanzvorlagen oder verwalteten Instanzgruppen.

Zustandslose oder zustandsorientierte MIGs

Sie können MIGs für zustandslose Bereitstellungs- oder Batcharbeitslasten verwenden, wie z. B. ein Website-Front-End oder eine Bildverarbeitung aus einer Warteschlange, oder für zustandsorientierte Anwendungen wie Datenbanken oder Legacy-Anwendungen.

MIGs für zustandslose Anwendungen verwenden

Zustandslose Anwendungen hängen nicht vom spezifischen Zustand der zugrunde liegenden VM-Instanz ab. Wenn Sie eine zustandslose MIG verwenden, sollte Ihre Anwendung nicht von temporär gespeicherten VM-Attributen abhängig sein, wie z. B. dem Inhalt angehängter Laufwerke oder In-Memory-Daten. Wenn für Ihre Anwendung die Beibehaltung von VM-Attributen erforderlich ist, lesen Sie die Informationen unter Zustandsorientierte MIGs konfigurieren.

Das Standardverhalten für alle nichtflüchtigen Speicher besteht darin, sie zu löschen oder neu zu erstellen, wenn die entsprechende VM gelöscht oder neu erstellt wird. Daher sollten Sie sich nicht auf angehängte Laufwerke als Speicher für nichtflüchtige Daten verlassen. Damit Ihre Daten in einer zustandslosen MIG bleiben, sollten Sie regelmäßig benutzerdefinierte Images mit aktualisierter Software und Konfigurationen pflegen oder Startskripts verwenden und Ihre Anwendungen so konfigurieren, dass die erforderlichen Daten an einem anderen zentralen Ort wie Cloud Storage gesichert werden.

In Ihren Instanzvorlagen können Sie ein Container-Image oder ein benutzerdefiniertes Image sowie relevante Startskripts angeben. Beim Neuerstellen einer VM sind dann die notwendigen Anwendungen installiert und die erforderlichen Daten zugänglich. Weitere Informationen zum Erstellen von Instanzvorlagen finden Sie unter Deterministische Instanzvorlagen.

MIGs für zustandsorientierte Anwendungen verwenden

Verwaltete Instanzgruppen unterstützen auch zustandsorientierte Anwendungen. Eine zustandsorientierte MIG behält den eindeutigen Status jeder VM (VM-Instanzname, angehängte nichtflüchtige Speicher und/oder Metadaten) bei Neustart, Neuerstellung, automatischer Reparatur oder Aktualisierung der Maschine bei.

Verwenden Sie zustandsorientierte MIGs für Anwendungen mit zustandsorientierten Daten oder Konfigurationen, z. B. Datenbanken, Anwendungen zur Datenverarbeitung, Legacy-Anwendungen sowie Batcharbeitslasten mit langer Ausführungszeit und Prüfpunktausführung.

Sie können zustandsorientierte MIGs immer dann verwenden, wenn Sie eine zustandsorientierte Anwendung oder einen Cluster auf Compute Engine bereitstellen und die Verfügbarkeit durch automatische Reparatur und Bereitstellung in mehreren Zonen verbessern oder Updates durch automatisierte Rolling Updates vereinfachen und beschleunigen möchten.

Informationen zum Erstellen einer zustandsorientierten MIG oder zum Hinzufügen einer zustandsorientierten Konfiguration zu einer vorhandenen MIG finden Sie unter Zustandsorientierte MIGs konfigurieren.

Verwaltete Instanzgruppe erstellen

Eine MIG erstellt jede verwaltete Instanz anhand der von Ihnen angegebenen Instanzvorlagen und einer optionalen zustandsorientierten Konfiguration. Jede verwaltete Instanz ist eine Datenentität innerhalb der MIG, die den aktuellen Status und den beabsichtigten Status für eine tatsächliche VM-Instanz enthält. Mit MIGs kann die Hochverfügbarkeit Ihrer Anwendungen aufrechterhalten werden, da sie proaktiv dafür sorgen, dass die tatsächlichen VMs verfügbar bleiben, also den Status RUNNING haben.

Sie können eine MIG mit der Google Cloud Console, dem gcloud-Tool oder der Compute Engine API erstellen. Wenn Sie lieber eine regionale MIG erstellen möchten, finden Sie unter Regionale MIGs erstellen entsprechende Informationen.

Console

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

    Zu den Instanzgruppen

  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. Geben Sie einen Namen für die MIG ein und wählen Sie die Zone aus, in die Gruppe erstellt werden soll.
  5. Wählen Sie unter Gruppentyp die Option Verwaltete Instanzgruppe aus.
  6. Wählen Sie unter Instanzvorlage eine Instanzvorlage aus. Wenn keine Vorlagen vorhanden sind, erstellen Sie eine Instanzvorlage.
  7. Geben Sie an, wie viele Instanzen die Gruppe umfassen soll.
  8. Optional können Sie für zustandslose MIGs Autoscaling aktivieren, damit die Gruppe basierend auf ihrer Nutzung Instanzen automatisch hinzufügt oder entfernt.
  9. Aktivieren Sie optional die automatische Reparatur, um anwendungsbasierte Systemdiagnosen auf VMs innerhalb der Gruppe auszuführen.
  10. Klicken Sie auf Erstellen, um die neue Gruppe anzulegen.

gcloud

Erstellen Sie eine Instanzgruppe mit dem Befehl instance-groups managed create:

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

Ersetzen Sie Folgendes:

  • 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.
  • ZONE: Eine für Compute Engine verfügbare Zone. Informationen zum Erstellen einer regionalen MIG finden Sie unter Regionale MIGs erstellen und verwalten.

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 ihres 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, lesen Sie die 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

API

Rufen Sie die Methode instanceGroupManagers.insert oder die Methode regionInstanceGroupManagers.insert auf. 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
}

Ersetzen Sie Folgendes:

  • PROJECT_ID: die Projekt-ID für die Anfrage.
  • ZONE: Die Zone für die Anfrage. Ersetzen Sie für eine regionale MIG zones/ZONE durch regions/REGION und geben Sie eine Region an. Weitere Informationen finden Sie unter Regionale MIGs erstellen und verwalten.
  • 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 ihres 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, lesen Sie die 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.

Instanzvorlage für eine verwaltete Instanzgruppe ändern

Unter Instanzen in einer MIG aktualisieren erfahren Sie, wie Sie eine neue Instanzvorlage auf eine MIG anwenden.

Größe einer verwalteten Instanzgruppe anpassen

Sie haben verschiedene Möglichkeiten, VMs zu einer MIG hinzuzufügen oder aus ihr zu entfernen:

Größe einer MIG automatisch anpassen

Verwaltete Instanzgruppen lassen sich so konfigurieren, dass VMs lastabhängig automatisch hinzugefügt oder entfernt werden. So können Ihre Anwendungen ansteigenden Traffic problemlos bewältigen und Sie können Ihre Kosten senken, wenn der Bedarf an Rechenressourcen sinkt. Informationen zum Skalieren verwalteter Instanzgruppen finden Sie unter Autoscaling von Instanzgruppen.

Größe einer MIG manuell festlegen

Wenn für eine verwaltete Instanzgruppe noch keine automatische Skalierung festgelegt ist, können Sie die Größe der Gruppe manuell anpassen, um die Anzahl der Instanzen zu ändern. Wenn Sie die Gruppe vergrößern, werden gemäß der aktuellen Instanzvorlage neue Instanzen hinzugefügt. Verkleinern Sie die Gruppe, werden VMs aus der verwalteten Instanzgruppe gelöscht. Zuerst werden Instanzen mit dem currentAction-Wert DELETING, CREATING und RECREATING gelöscht, anschließend solche ohne geplante Aktionen.

Wenn die Gruppe Teil eines Back-End-Dienstes ist, für den der Verbindungsausgleich aktiviert ist, kann es nach Ablauf des Verbindungsausgleichs bis zu 60 Sekunden dauern, bis die VM-Instanz entfernt oder gelöscht wird.

Die Größe einer verwalteten Instanzgruppe können Sie mit der Google Cloud Console , dem gcloud-Tool oder der Compute Engine API anpassen.

Console

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

    Zu den Instanzgruppen

  2. Klicken Sie in der Spalte Name der Liste auf die Instanzgruppe, deren Größe Sie anpassen möchten.
  3. Klicken Sie auf Gruppe bearbeiten, um die verwaltete Instanzgruppe zu bearbeiten.
  4. Geben Sie unter Anzahl der Instanzen an, wie viele Instanzen die verwaltete Instanzgruppe umfassen soll. Wenn Autoscaling aktiviert ist, werden bei Bedarf automatisch Instanzen zur Gruppe hinzugefügt oder daraus entfernt. Sie können jedoch die Werte für die Mindestzahl von Instanzen und die Maximale Anzahl von Instanzen ändern, um die Gruppengröße über das Autoscaling indirekt anzupassen.
  5. Klicken Sie auf Speichern, um die neue Vorlage anzuwenden.

gcloud

Führen Sie den Befehl resize aus.

gcloud compute instance-groups managed resize INSTANCE_GROUP_NAME \
    --size NEW_SIZE \
    --zone ZONE

API

Rufen Sie die Methode resize für eine zonale oder regionale MIG-Ressource auf. Geben Sie die neue Instanzgruppengröße als Parameter an.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/INSTANCE_GROUP_NAME/resize?size=NEW_SIZE

Wenn es sich um eine regionale verwaltete Instanzgruppe handelt, ersetzen Sie zones/ZONE durch regions/REGION.

Nach einer Anfrage zur Änderung der Größe einer verwalteten Instanzgruppe, werden die VMs gestartet oder beendet, sobald das System sie bereitstellen oder löschen kann. Je nachdem, wie viele Instanzen die Gruppe umfasst, kann dies einige Zeit dauern. Prüfen Sie den Status der Instanzen in Ihrer verwalteten Instanzgruppe.

Modus für die wiederholte Erstellung während der Größenänderung deaktivieren

Wenn bei der erstmaligen Erstellung einer VM-Instanz ein Fehler auftritt, versucht die verwaltete Instanzgruppe standardmäßig kontinuierlich, die VM zu erstellen, bis ihre Erstellung erfolgreich war. Wenn Sie dies verhindern möchten, können Sie den Wiederholungsmodus deaktivieren. Geben Sie dazu beim Ändern der Größe der Instanzgruppe das Flag --nocreation-retries an. Dann versucht die verwaltete Instanzgruppe nur einmal, alle Instanzen zu erstellen. Wenn während der Instanzerstellung ein Fehler auftritt, gibt die verwaltete Instanzgruppe diese Instanz auf, entfernt sie aus der Liste der verwalteten Instanzen und verringert die Zielgröße der verwalteten Instanzgruppe.

Dieser Modus gilt nur für den ersten Versuch, eine VM zu erstellen. Wenn eine VM erfolgreich erstellt wurde, während dieser Modus aktiviert ist, verhält sich die VM auf dieselbe Weise wie alle anderen VMs, die durch eine reguläre Größenanpassungsanfrage erstellt wurden. Fällt eine ausgeführte VM zu einem späteren Zeitpunkt unerwartet aus und muss daher neu erstellt werden, wirkt sich der Modus nicht auf die Neuerstellung aus.

Den Modus für die wiederholte Erstellung zu deaktivieren, ist besonders nützlich, wenn Systeme automatisch Gruppen von VMs erstellen, bei denen die genaue Anzahl der VMs keine große Bedeutung hat. In solchen Fällen kann es wichtiger sein, die verwaltete Instanzgruppe schnell stabil zum Laufen zu bringen, während Sie bei der Zahl der enthaltenen VMs flexibel sind. Dadurch müssen Sie nicht eine unbestimmte Zeit warten, bis alle angeforderten Instanzen erstellt wurden. Die Erstellung kann sich aufgrund von Kontingentfehlern oder anderen Problemen nämlich vorübergehend oder dauerhaft verzögern.

Wenn Sie die Größe einer verwalteten Instanzgruppe im deaktivierten Modus für die wiederholte Erstellung anpassen möchten, verwenden Sie das gcloud-Tool oder die Compute Engine API.

gcloud

Verwenden Sie den Befehl resize (Beta) mit dem Flag --no-creation-retries:

gcloud beta compute instance-groups managed resize INSTANCE_GROUP_NAME --size NEW_SIZE \
    --no-creation-retries \
    --zone ZONE

API

Rufen Sie die Methode resizeAdvanced (Beta) für eine zonale oder regionale MIG-Ressource auf. Geben Sie die neue Gruppengröße und das Feld noCreationRetries im Anfragetext an.

POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/INSTANCE_GROUP_NAME/resizeAdvanced

{
 "targetSize": SIZE
 "noCreationRetries": true
}

Wenn es sich um eine regionale verwaltete Instanzgruppe handelt, ersetzen Sie zones/ZONE durch regions/REGION.

Mit der Methode listManagedInstances können Sie herausfinden, welche Instanzen in welchem Modus erstellt werden. Instanzen, die bei deaktiviertem Modus für die wiederholte Erstellung angelegt werden, haben für currentAction den Wert CREATING_WITHOUT_RETRIES.

Instanzen mit bestimmten Namen in MIGs erstellen

Wenn Sie ein System haben, das von bestimmten Namen abhängig ist, können Sie VMs mit diesen Namen erstellen. Die Namen, die Sie diesen verwalteten Instanzen zuweisen, bleiben bei der Neuerstellung der VM erhalten. Weitere Informationen finden Sie unter Instanzen mit bestimmten Namen hinzufügen.

Bestimmte Instanzen aus einer Gruppe löschen

Sie können einzelne VMs aus einer verwalteten Instanzgruppe löschen. Dadurch verringert sich der angegebene Wert der Instanzgruppe für targetSize und die VMs werden aus allen Zielpools entfernt, denen sie bisher angehört haben.

Das Löschen von Instanzen aus einer verwalteten Instanzgruppe hat keine Auswirkungen auf die Autoscaling-Einstellungen. Wenn Sie Instanzen aus einer Gruppe entfernen, stellt das Autoscaling unter Umständen eine Steigerung der Arbeitslast auf den anderen Instanzen fest und erhöht die Gruppengröße wieder auf das bisherige Niveau. Um dies zu verhindern, sollten Sie das Autoscaling deaktivieren oder löschen, bevor Sie die Instanzen löschen.

Wenn die Gruppe Teil eines Back-End-Dienstes ist, für den der Verbindungsausgleich aktiviert ist, kann es nach Ablauf des Verbindungsausgleichs bis zu 60 Sekunden dauern, bis die VM-Instanz entfernt oder gelöscht wird.

Zum Löschen von Instanzen aus einer verwalteten Instanzgruppe können Sie die Google Cloud Console, das gcloud-Tool oder die Compute Engine API verwenden.

Console

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

    Zu den Instanzgruppen

  2. Klicken Sie in der Spalte Name der Liste auf die Instanzgruppe, aus der Sie einzelne Instanzen löschen möchten. Ihnen wird eine Seite mit den Attributen der Instanzgruppe und einer Liste der zur Gruppe gehörenden Instanzen angezeigt.
  3. Wählen Sie aus der Liste die zu löschenden Instanzen aus.
  4. Klicken Sie auf Löschen. Die ausgewählten Instanzen werden gelöscht.

gcloud

Führen Sie den Befehl delete-instances aus.

gcloud compute instance-groups managed delete-instances INSTANCE_GROUP_NAME \
    --instances example-i3n2,example-z2x9 \
    --zone ZONE

API

Rufen Sie die Methode deleteInstances für eine zonale oder regionale MIG-Ressource auf. Fügen Sie in den Anfragetext die URLs der zu löschenden Instanzen ein.

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

{
 "instances": [
  "zones/ZONE/instances/example-instance-i3n2",
  "zones/ZONE/instances/example-instance-l6n1"
 ]
}

Wenn es sich um eine regionale verwaltete Instanzgruppe handelt, ersetzen Sie zones/ZONE durch regions/REGION.

Nach einer Anfrage zum Löschen von Instanzen in einer verwalteten Instanzgruppe werden die Instanzen angehalten, sobald das System sie löschen kann. Je nachdem, wie viele Instanzen Sie aus der Gruppe löschen möchten, kann dies einige Zeit dauern. Prüfen Sie den Status der Instanzen in Ihrer verwalteten Instanzgruppe.

Instanzen in einer Gruppe verwerfen

Sie können eine VM-Instanz von einer verwalteten Instanzgruppe trennen, um Fehler in dieser VM leichter zu beheben, ohne die gesamte Gruppe in Mitleidenschaft zu ziehen. Durch das Verwerfen einer VM wird diese auch aus den Load-Balancern entfernt, die der verwalteten Instanzgruppe zugewiesen sind. Bestimmten Instanzen manuell zugeteilte Zielpools werden dagegen nicht entfernt.

Das Verwerfen von Instanzen reduziert den angegebenen Wert targetSize der Instanzgruppe, ändert jedoch keine der festgelegten Autoscaling-Einstellungen. Verwaltete Instanzgruppen, für die Autoscaling eingerichtet ist, fügen bei Bedarf weiterhin automatisch VMs hinzu oder entfernen diese.

Wenn die Gruppe Teil eines Back-End-Dienstes ist, für den der Verbindungsausgleich aktiviert ist, kann es nach Ablauf des Verbindungsausgleichs bis zu 60 Sekunden dauern, bis die VM-Instanz entfernt oder gelöscht wird.

Zum Verwerfen von Instanzen aus einer verwalteten Instanzgruppe können Sie die Google Cloud Console, das gcloud-Tool oder die Compute Engine API verwenden.

Console

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

    Zu den Instanzgruppen

  2. Klicken Sie in der Spalte Name der Liste auf die Instanzgruppe, aus der Sie Instanzen entfernen möchten. Ihnen wird eine Seite mit den Attributen der Instanzgruppe und einer Liste der zur Gruppe gehörenden Instanzen angezeigt.
  3. Wählen Sie aus der Liste die zu entfernenden Instanzen aus.
  4. Klicken Sie auf Aus Gruppe entfernen. Die ausgewählten Instanzen werden aus der Gruppe entfernt, werden aber weiterhin ausgeführt.

gcloud

Wenn Sie eine Instanz aus der Instanzgruppe entfernen möchten, ohne die Instanz zu löschen, verwenden Sie den Befehl abandon-instances.

gcloud compute instance-groups managed abandon-instances INSTANCE_GROUP_NAME \
    --instances example-i3n2,example-z2x9 \
    --zone ZONE

API

Rufen Sie die Methode abandonInstances für eine zonale oder regionale MIG-Ressource auf. In den Anfragetext fügen Sie die URLs der zu verwerfenden Instanzen ein:

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

{
 "instances": [
  "zones/ZONE/instances/example-instance-i3n2",
  "zones/ZONE/instances/example-instance-l6n1"
 ]
}

Wenn es sich um eine regionale verwaltete Instanzgruppe handelt, ersetzen Sie zones/ZONE durch regions/REGION.

Nach einer Anfrage zum Verwerfen von Instanzen aus einer verwalteten Instanzgruppe werden diese so bald wie möglich aus der Gruppe entfernt. Prüfen Sie den Status der Instanzen in Ihrer verwalteten Instanzgruppe.

Instanzen in einer Gruppe neu erstellen

Beim Neuerstellen einer verwalteten Instanz wird die angegebene VM gelöscht und anhand der Instanzvorlage, die der verwalteten Instanzgruppe zugewiesen ist, neu erstellt.

Verwenden Sie diese Methode, um ausgewählte VMs mit der neuesten Instanzvorlage zu aktualisieren. Wenn Sie alle VMs in einer verwalteten Instanzgruppe neu erstellen müssen, starten Sie stattdessen ein Rolling Update.

Wenn die Gruppe Teil eines Back-End-Dienstes ist, für den der Verbindungsausgleich aktiviert ist, kann es nach Ablauf des Verbindungsausgleichs bis zu 60 Sekunden dauern, bis die VM-Instanz entfernt oder gelöscht wird.

Verwenden Sie zum Neuerstellen bestimmter VMs in der verwalteten Instanzgruppe das gcloud-Tool oder die Compute Engine API.

gcloud

Führen Sie den Befehl recreate-instances aus.

gcloud compute instance-groups managed recreate-instances INSTANCE_GROUP_NAME \
    --instances example-i3n2,example-z2x9 \
    --zone ZONE

API

Rufen Sie die Methode recreateInstances für eine zonale oder regionale MIG-Ressource auf. Fügen Sie in den Anfragetext die URLs der neu zu erstellenden Instanzen ein.

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

{
 "instances": [
  "zones/ZONE/instances/example-instance-i3n2",
  "zones/ZONE/instances/example-instance-l6n1"
 ]
}

Wenn es sich um eine regionale verwaltete Instanzgruppe handelt, ersetzen Sie zones/ZONE durch regions/REGION.

Nach einer Anfrage zum Neuerstellen von Instanzen in einer verwalteten Instanzgruppe werden die neuen VMs gestartet, sobald das System sie bereitstellen kann. Je nachdem, wie viele Instanzen Sie neu erstellen lassen, kann dies einige Zeit dauern. Prüfen Sie den Status der Instanzen in Ihrer verwalteten Instanzgruppe.

Verwaltete Instanzgruppe löschen

Wenn Sie eine verwaltete Instanzgruppe löschen, werden alle VMs in der Gruppe gelöscht. Falls Sie VMs aus dieser verwalteten Instanzgruppe beibehalten möchten, verwerfen Sie zuerst diese Instanzen, um die VMs aus der Gruppe zu entfernen. Dann können Sie die verwaltete Instanzgruppe löschen.

Beim Löschen einer verwalteten Instanzgruppe und ihrer Instanzen mithilfe der Google Cloud Console oder dem gcloud-Tool, werden alle angehängten Autoscalings automatisch gelöscht. Wenn Sie jedoch die Compute Engine API verwenden, müssen Sie zuerst separate Anfragen zum Löschen der angehängten Autoscalings mit autoscalers.delete oder regionAutoscalers.delete ausgeben.

Console

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

    Zu den Instanzgruppen

  2. Wählen Sie aus der Liste eine oder mehrere zu löschende Gruppen aus.
  3. Klicken Sie auf Löschen, um die Gruppe und alle VMs in der verwalteten Instanzgruppe zu löschen.

gcloud

Führen Sie den Befehl delete aus.

gcloud compute instance-groups managed delete INSTANCE_GROUP_NAME \
    --zone ZONE

API

Rufen Sie die Methode delete für eine zonale oder regionale MIG-Ressource auf.

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

Wenn es sich um eine regionale verwaltete Instanzgruppe handelt, ersetzen Sie zones/ZONE durch regions/REGION.

Instanzen auf Abruf in Gruppen erstellen

Sie können verwaltete Instanzgruppen verwenden, um schnell mehrere Instanzen auf Abruf zu erstellen, wodurch die Kosten der VMs in Ihren verwalteten Instanzgruppen reduziert werden können. Legen Sie beispielsweise eine Gruppe von Instanzen auf Abruf an, um eine Batchverarbeitungsaufgabe zu erledigen, und löschen Sie sie wieder, wenn die Aufgabe abgeschlossen ist.

Zum Erstellen einer Gruppe von Instanzen auf Abruf richten Sie die entsprechende Option in der Instanzvorlage ein und legen dann anhand der Vorlage die verwaltete Instanzgruppe an.

Console

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

    Zur Seite "Instanzvorlagen"

  2. Klicken Sie auf Neue Instanzvorlage.
  3. Legen Sie die Attribute der Instanzvorlage fest.
  4. Klicken Sie auf Erweiterte Optionen ansehen, um den Bereich Verfügbarkeitsrichtlinien zu maximieren.
  5. Legen Sie für Präemptivität die Einstellung An fest.
  6. Klicken Sie auf Erstellen, um die Vorlage anzulegen.
  7. Verwenden Sie die Vorlage, um eine verwaltete Instanzgruppe zu erstellen.

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

Verwenden Sie die neue Instanzvorlage, um eine verwaltete Instanzgruppe zu erstellen.

API

Rufen Sie die Methode instanceTemplates.insert auf, um eine neue Instanzvorlage zu erstellen. Fügen Sie das Attribut scheduling.preemptible hinzu und legen Sie es auf 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"
      }
    }
  ]
  }
}

Verwenden Sie die neue Instanzvorlage, um eine verwaltete Instanzgruppe zu erstellen.

Informationen zu den Feldern instanceTemplate und versions

Wenn Sie eine verwaltete Instanzgruppe erstellen, geben Sie eine Instanzvorlage an, die die verwaltete Instanzgruppe zum Erstellen einzelner VM-Instanzen verwendet. Standardmäßig beschreibt Compute Engine die verwendete Instanzvorlage in zwei separaten Compute Engine API-Attributen: dem übergeordneten Attribut instanceTemplate und dem Attribut versions. Beachten Sie, dass in der folgenden verwalteten Instanzgruppe z. B. sowohl das Feld instanceTemplate als auch das Feld versions ausgefüllt sind:

{

 "name": "example-group",
 "zone": "zones/us-central1-a",
 "instanceTemplate": "global/instanceTemplates/example-it",
 "versions": [
  {
   "name": "v3",
   "instanceTemplate": "global/instanceTemplates/example-it",
   "targetSize": {
    "calculated": 3
   }
  }
 ]...
}

Compute Engine füllt automatisch das übergeordnete Feld instanceTemplate und das Feld versions aus, um die Abwärtskompatibilität zu gewährleisten. Wir empfehlen, Angaben im Feld versions zu machen und das übergeordnete Feld instanceTemplates nach Möglichkeit auszulassen. Wenn Ihr Anwendungscode jedoch derzeit das übergeordnete Feld instanceTemplate ausfüllt, ist diese Anfrage trotzdem gültig.

Weitere Informationen finden Sie unter Beziehung zwischen Versionen und instanceTemplate-Feldern.

(Erweitert) Instanzvorlagen an Teilen verwalteter Instanzgruppen testen

Sie können eine verwaltete Instanzgruppe erstellen, bei der zwei Gruppen von VMs unterschiedliche Instanzvorlagen verwenden. Sie möchten beispielsweise eine verwaltete Instanzgruppe mit 20 VM-Instanzen erstellen, von denen 10 VMs ein bestimmtes Betriebssystem-Image verwenden, der Rest aber ein anderes Betriebssystem-Image verwenden soll. Mit diesem Feature können Sie die beiden verschiedenen Versionen von Instanzvorlagen vergleichen, bevor Sie sich für eine entscheiden.

Weitere Informationen finden Sie unter Canary Updates.

Verwaltete Instanzgruppen und IAM

Alle Vorgänge, die Compute Engine im Rahmen einer verwalteten Instanzgruppe ausführt, werden vom Google APIs-Dienstkonto für Ihr Projekt ausgeführt. Dieses projektbezogene Dienstkonto hat eine E-Mail-Adresse in folgendem Format, wobei PROJECT_ID die numerische ID des entsprechenden Projekts ist:

PROJECT_ID@cloudservices.gserviceaccount.com

Das Google APIs-Dienstkonto unterscheidet sich vom standardmäßigen Compute Engine-Dienstkonto.

Sie müssen dafür sorgen, dass das Dienstkonto, das für die verwaltete Instanzgruppe verwendet wird, über die entsprechenden Berechtigungen verfügt, um mithilfe der Instanzvorlage VM-Instanzen zu erstellen. Das bedeutet insbesondere, dass das Dienstkonto die Rolle compute.instanceAdmin.v1 und gegebenenfalls die Rolle serviceAccountUser haben muss, sodass es in der Instanzgruppe VMs erstellen und verwalten kann. Die Rolle serviceAccountUser ist nur erforderlich, wenn die verwaltete Instanzgruppe VMs erstellt, die als Dienstkonto ausgeführt werden können. Beachten Sie, dass dieses Konto auch von anderen Prozessen wie Deployment Manager genutzt wird.

Wenn Sie eine verwaltete Instanzgruppe erstellen oder eine Instanzvorlage aktualisieren, wird von Compute Engine überprüft, ob das Google APIs-Dienstkonto die folgenden Voraussetzungen erfüllt:

  • Rolle serviceAccountUser. Wichtig, wenn Sie Instanzen erstellen möchten, die als Dienstkonto ausgeführt werden können.
  • Berechtigungen für alle Ressourcen, auf die Instanzvorlagen verweisen, wie Images, Laufwerke, VPC-Netzwerke und Subnetzwerke.

Weitere Informationen zu Dienstkonten finden Sie in der Übersicht zu Dienstkonten.

Alle Instanzen in einer verwalteten Instanzgruppe aktualisieren

Siehe Instanzen in einer MIG aktualisieren.

Nächste Schritte