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
- Wenn Sie die API-Beispiele dieser Anleitung verwenden möchten, richten Sie den API-Zugang ein.
- Wenn Sie die Befehlszeilenbeispiele in dieser Anleitung verwenden möchten, installieren Sie das
gcloud
-Befehlszeilentool. - Erstellen Sie eine Instanzvorlage, bei der es sich um einen Baustein für eine verwaltete Instanzgruppe handelt.
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
- Rufen Sie in der Cloud Console die Seite Instanzgruppen auf.
- Klicken Sie auf Instanzgruppe erstellen.
- 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.
- Geben Sie einen Namen für die MIG ein und wählen Sie die Zone aus, in die Gruppe erstellt werden soll.
- Wählen Sie unter Gruppentyp die Option Verwaltete Instanzgruppe aus.
- Wählen Sie unter Instanzvorlage eine Instanzvorlage aus. Wenn keine Vorlagen vorhanden sind, erstellen Sie eine Instanzvorlage.
- Geben Sie an, wie viele Instanzen die Gruppe umfassen soll.
- Optional können Sie für zustandslose MIGs Autoscaling aktivieren, damit die Gruppe basierend auf ihrer Nutzung Instanzen automatisch hinzufügt oder entfernt.
- Aktivieren Sie optional die automatische Reparatur, um anwendungsbasierte Systemdiagnosen auf VMs innerhalb der Gruppe auszuführen.
- 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 MIGzones/ZONE
durchregions/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:
- Automatische Skalierung für zustandslose Anwendungen
- Größe der MIG manuell festlegen
- Instanzen mit bestimmten Namen erstellen, oder bestimmte Instanzen löschen oder verwerfen.
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
- Rufen Sie in der Cloud Console die Seite Instanzgruppen auf.
- Klicken Sie in der Spalte Name der Liste auf die Instanzgruppe, deren Größe Sie anpassen möchten.
- Klicken Sie auf Gruppe bearbeiten, um die verwaltete Instanzgruppe zu bearbeiten.
- 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.
- 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
- Rufen Sie in der Cloud Console die Seite Instanzgruppen auf.
- 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.
- Wählen Sie aus der Liste die zu löschenden Instanzen aus.
- 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
- Rufen Sie in der Cloud Console die Seite Instanzgruppen auf.
- 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.
- Wählen Sie aus der Liste die zu entfernenden Instanzen aus.
- 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
- Rufen Sie in der Cloud Console die Seite Instanzgruppen auf.
- Wählen Sie aus der Liste eine oder mehrere zu löschende Gruppen aus.
- 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
- Rufen Sie in der Cloud Console die Seite Instanzvorlagen auf.
- Klicken Sie auf Neue Instanzvorlage.
- Legen Sie die Attribute der Instanzvorlage fest.
- Klicken Sie auf Erweiterte Optionen ansehen, um den Bereich Verfügbarkeitsrichtlinien zu maximieren.
- Legen Sie für Präemptivität die Einstellung An fest.
- Klicken Sie auf Erstellen, um die Vorlage anzulegen.
- 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
- Mit verwalteten Instanzen arbeiten, z. B. Löschen, Verwerfen und Neuerstellen von Instanzen
- Informationen zu verwalteten Instanzgruppen und verwalteten Instanzen abrufen
- Einen Load-Balancer auswählen oder eine Instanzgruppe zu einem Load-Balancer hinzufügen
- Automatische Reparatur für die verwaltete Instanzgruppe aktivieren
- Autoscaling für die verwaltete Instanzgruppe aktivieren
- Weitere Anleitungen:
- Fehler bei verwalteten Instanzgruppen beheben