In diesem Dokument wird beschrieben, wie Sie eine automatisch skalierte verwaltete Instanzgruppe (Managed Instance Group, MIG) erstellen, die VMs anhand der durchschnittlichen CPU-Auslastung in der Gruppe automatisch hinzufügt und entfernt. Wenn beispielsweise die CPU-Auslastung der Gruppe niedrig ist, entfernt die Gruppe automatisch VMs, um Kosten zu sparen.
Sie können eine MIG anhand verschiedener Arten von Autoscaling-Signalen automatisch skalieren. Weitere Informationen finden Sie in der Autoscaling-Übersicht.
Weitere Informationen zu anderen grundlegenden Szenarien zum Erstellen einer MIG
Hinweise
- 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 wie folgt bei 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
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
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.
-
Rufen Sie in der Cloud Console die Seite Instanzgruppen auf.
Die verbleibenden Schritte werden automatisch in der Google Cloud Console angezeigt.
-
Wenn Sie eine Instanzgruppe haben, wählen Sie sie aus und klicken Sie auf Bearbeiten. Wenn Sie keine Instanzgruppe haben, klicken Sie auf
Instanzgruppe erstellen . - Geben Sie für eine neue Instanzgruppe einen Namen ein und wählen Sie dann eine Instanzvorlage für die Instanzgruppe aus oder erstellen Sie eine neue Instanzgruppe.
- Wenn keine Autoscaling-Konfiguration vorhanden ist, klicken Sie unter Autoscaling auf Autoscaling konfigurieren.
-
Wählen Sie unter
Autoscaling-Modus die Option Ein: der Gruppe Instanzen hinzufügen und aus ihr entfernen aus, um das Autoscaling zu aktivieren. - Geben Sie die minimale und maximale Anzahl von Instanzen an, die das Autoscaling in dieser Gruppe erstellen soll.
-
Fügen Sie im Abschnitt Messwerte für Autoscaling einen Messwert für die CPU-Auslastung hinzu, falls noch keiner vorhanden ist:
-
Klicken Sie auf
Messwert hinzufügen . -
Wählen Sie unter
Messwerttyp die Option CPU-Auslastung aus. -
Geben Sie die gewünschte CPU-Zielauslastung ein. Dieser Wert wird als Prozentsatz behandelt. Geben Sie daher bei einer CPU-Auslastung von beispielsweise 75 % den Wert
75
ein. -
Wählen Sie unter Vorausschauendes Autoscaling die Option
Aus aus. Weitere Informationen zum vorausschauenden Autoscaling und dazu, ob es für Ihre Arbeitslast geeignet ist, finden Sie unter Anhand von Vorhersagen skalieren. - Klicken Sie auf Fertig.
-
Klicken Sie auf
- Sie können die Initialisierungsphase festlegen, damit Autoscaling weiß, wie lange Ihre Anwendung zur Initialisierung benötigt. Wenn Sie die Initialisierungsphase genau definieren, verbessern Sie die Autoscaling-Entscheidungen. Beim horizontalen Skalieren werden so beispielsweise Daten von VMs ignoriert, die noch initialisiert werden, da diese möglicherweise nicht die normale Nutzung Ihrer Anwendung darstellen. Die Standardinitialisierungsphase beträgt 60 Sekunden.
- Klicken Sie zum Erstellen der MIG auf
Erstellen . - Weitere Informationen zum Autoscaling und zu den verschiedenen Arten von Skalierungssignalen, die Sie einer Autoscaling-Richtlinie hinzufügen können.
- Autoscalings verwalten
- Richten Sie die anwendungsbasierte automatische Reparatur ein. Damit wird regelmäßig überprüft, ob Ihre Anwendung auf jeder VM der MIG wie erwartet reagiert und nicht reagierende VMs automatisch neu erstellt.
- Neue Konfiguration auf alle oder einen Teil der VMs in einer MIG anwenden – durch Festlegen und Anwenden einer neuen Instanzvorlage, instanzübergreifenden Konfiguration oder instanzspezifischen Konfiguration.
- Externes HTTP(S)-Load-Balancer-Frontend zu Ihrer Instanzgruppe hinzufügen Informationen zu anderen Arten von Load-Balancern finden Sie in der Übersicht über das Load-Balancing.
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.
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 erstellen und Autoscaling aktivieren
Verwenden Sie die Google Cloud Console, die gcloud CLI, Terraform oder REST.
Console
gcloud
Bevor Sie Autoscaling aktivieren können, müssen Sie eine MIG erstellen. Folgen Sie der Anleitung, um eine MIG mit VMs zu erstellen, die auf eine einzige Zone beschränkt sind, oder um eine MIG mit VMs zu erstellen, die über mehrere Zonen in einer Region verteilt sind.
Verwenden Sie dann den Unterbefehl
set-autoscaling
, um das Autoscaling für die Gruppe zu aktivieren. Durch den folgenden Befehl wird z. B. ein Autoscaling mit einer CPU-Zielauslastung von 60 % erstellt. Neben dem Parameter--target-cpu-utilization
ist beim Erstellen eines Autoscalings auch der Parameter--max-num-replicas
erforderlich.Optional können Sie
--min-num-replicas
festlegen, die die Mindestanzahl von VMs angibt, die Sie in der Gruppe haben möchten. Wenn Sie das Minimum nicht festlegen, legt die MIG diesen Wert standardmäßig auf 2 fest.Sie können das Flag
--cool-down-period
verwenden, um die Initialisierungsphase festzulegen. Dieser Wert teilt dem Autoscaling mit, wie lange Ihre Anwendung zur Initialisierung benötigt. Wenn Sie die Initialisierungsphase genau definieren, verbessern Sie die Autoscaling-Entscheidungen. Beim horizontalen Skalieren werden so beispielsweise Daten von VMs ignoriert, die noch initialisiert werden, da diese möglicherweise nicht die normale Nutzung Ihrer Anwendung darstellen. Die Standardinitialisierungsphase beträgt 60 Sekunden.gcloud compute instance-groups managed set-autoscaling example-managed-instance-group \ --max-num-replicas 20 \ --target-cpu-utilization 0.60 \ --cool-down-period 90
Wenn Sie möchten, können Sie das vorausschauende Autoscaling aktivieren, damit bereits vor dem Auftreten der erwarteten Arbeitslast horizontal skaliert wird. Informationen dazu, ob vorausschauendes Autoscaling für Ihre Arbeitslast geeignet ist, finden Sie unter Anhand von Vorhersagen skalieren.
Mit dem Befehl
instance-groups managed describe
können Sie prüfen, ob Autoscaling erfolgreich aktiviert ist. Damit wird die entsprechende MIG beschrieben und Informationen zu den Autoscaling-Features für diese Gruppe bereitgestellt:gcloud compute instance-groups managed describe example-managed-instance-group
Terraform
Bevor Sie Autoscaling aktivieren können, müssen Sie eine MIG erstellen. Folgen Sie der Anleitung, um eine MIG mit VMs zu erstellen, die auf eine einzige Zone beschränkt sind, oder um eine MIG mit VMs zu erstellen, die über mehrere Zonen in einer Region verteilt sind.
Zum Konfigurieren des Autoscalings in einer MIG können Sie die Ressource
google_compute_autoscaler
verwenden.Im folgenden Beispiel wird das Autoscaling anhand der CPU-Auslastung in einer zonalen MIG konfiguriert.
Informationen zum Anwenden oder Entfernen einer Terraform-Konfiguration finden Sie unter Grundlegende Terraform-Befehle.
REST
Bevor Sie Autoscaling aktivieren können, müssen Sie eine MIG mit VMs erstellen, die auf eine einzelne Zone beschränkt sind oder eine MIG mit VMs erstellen, die auf mehrere Zonen in einer Region verteilt sind.
Wenn Sie eine zonale MIG haben, senden Sie eine
POST
-Anfrage an die Methodeautoscalers.insert
. Wenn Sie eine regionale MIG haben, verwenden Sie die MethoderegionAutoscalers.insert
.Beispiel:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/autoscalers/
Der Text Ihrer Anfrage muss die Felder
name
,target
undautoscalingPolicy
enthalten. Im FeldautoscalingPolicy
müssen der Wert für die Ziel-cpuUtilization
und dermaxNumReplicas
-Wert definiert sein.Optional können Sie
minNumReplicas
festlegen, die die Mindestanzahl von VMs angibt, die Sie in der Gruppe haben möchten. Wenn Sie das Minimum nicht festlegen, legt die MIG diesen Wert standardmäßig auf 2 fest.Sie können das Feld
coolDownPeriodSec
verwenden, um die Initialisierungsphase festzulegen, damit Autoscaling weiß, wie lange Ihre Anwendung zur Initialisierung benötigt. Wenn Sie die Initialisierungsphase genau definieren, verbessern Sie die Autoscaling-Entscheidungen. Beim horizontalen Skalieren werden so beispielsweise Daten von VMs ignoriert, die noch initialisiert werden, da diese möglicherweise nicht die normale Nutzung Ihrer Anwendung darstellen. Die Standardinitialisierungsphase beträgt 60 Sekunden.{ "name": "example-autoscaler", "target": "https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-f/instanceGroupManagers/example-managed-instance-group", "autoscalingPolicy": { "maxNumReplicas": 10, "cpuUtilization": { "utilizationTarget": 0.6 }, "coolDownPeriodSec": 90 } }
Wenn Sie möchten, können Sie das vorausschauende Autoscaling aktivieren, damit bereits vor dem Auftreten der erwarteten Arbeitslast horizontal skaliert wird. Informationen dazu, ob vorausschauendes Autoscaling für Ihre Arbeitslast geeignet ist, finden Sie unter Anhand von Vorhersagen skalieren.
Weitere Informationen zum Aktivieren des Autoscalings auf Grundlage der CPU-Auslastung finden Sie unter Anhand der CPU-Auslastung skalieren.
Nächste Schritte
Sofern nicht anders angegeben, sind die Inhalte dieser Seite unter der Creative Commons Attribution 4.0 License und Codebeispiele unter der Apache 2.0 License lizenziert. Weitere Informationen finden Sie in den Websiterichtlinien von Google Developers. Java ist eine eingetragene Marke von Oracle und/oder seinen Partnern.
Zuletzt aktualisiert: 2024-11-25 (UTC).
-