In diesem Dokument wird erläutert, wie der Standby-Pool gesperrter und angehaltener VM-Instanzen funktioniert und wie Sie den Standby-Pool verwenden können, um das Skalieren einer verwalteten Instanzgruppe (MIG) zu beschleunigen.
Hinweise
- Lesen Sie die Einführungsseite zu gesperrten und beendeten VMs in einer MIG.
-
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.
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.
- Verwenden Sie angehaltene VMs, wenn Ihre VMs eine zeitaufwendige Initialisierung des Arbeitsspeichers erfordern, da gesperrte VMs den Arbeitsspeicherstatus beibehalten. Sorgen Sie dafür, dass Ihre Anwendung angehalten und fortgesetzt werden kann. Das Beibehalten des Speicherstatus erfordert zusätzlichen Speicher und kann zusätzliche Kosten verursachen.
- Verwenden Sie beendete VMs, wenn Ihre VM-Initialisierung hauptsächlich die Initialisierung der Daten umfasst, die in den nichtflüchtigen Speichern gespeichert sind.
Rufen Sie in der Google Cloud Console die Seite Instanzgruppen auf.
Klicken Sie in der Spalte Name der Liste auf den Namen der Instanzgruppe, in der Sie die Standby-Richtlinie bearbeiten möchten.
Klicken Sie auf Bearbeiten, um die verwaltete Instanzgruppe zu bearbeiten.
Klicken Sie auf Erweiterte Konfiguration anzeigen.
Wählen Sie im Abschnitt Standby-Pool unter Modus die Option Horizontal skalieren aus.
Geben Sie im Feld Anfängliche Verzögerung die Anzahl der Sekunden ein, die die MIG warten soll, bevor eine VM angehalten oder beendet wird. Die anfängliche Verzögerung gibt dem Initialisierungsskript die Zeit, die VM für ein schnelles Hochskalieren vorzubereiten.
Klicken Sie auf Speichern.
MIG_NAME
: Name der MIG.DELAY
: die Anzahl der Sekunden, die die MIG warten soll, bevor eine VM angehalten oder beendet wird Die anfängliche Verzögerung gibt dem Initialisierungsskript die Zeit, die VM für ein schnelles Hochskalieren vorzubereiten.REGION
: Bei einer regionalen MIG die Region, in der sich die MIG befindet.ZONE
: bei einer zonalen MIG die Zone, in der sich die MIG befindet.PROJECT_ID
: die Projekt-ID.MIG_NAME
: Name der MIG.DELAY
: die Anzahl der Sekunden, die die MIG warten soll, bevor eine VM angehalten oder beendet wird Die anfängliche Verzögerung gibt dem Initialisierungsskript die Zeit, die VM für ein schnelles Hochskalieren vorzubereiten.REGION
: Bei einer regionalen MIG die Region, in der sich die MIG befindet.ZONE
: Bei einer zonalen MIG die Zone, in der sich die MIG befindet.Rufen Sie in der Google Cloud Console die Seite Instanzgruppen auf.
Klicken Sie in der Spalte Name der Liste auf die Instanzgruppe, deren Größe Sie im Standby-Pool bearbeiten möchten.
Klicken Sie auf Bearbeiten, um die verwaltete Instanzgruppe zu bearbeiten.
Klicken Sie auf Erweiterte Konfiguration anzeigen.
Geben Sie im Abschnitt Standby-Pool die neuen Größen in die Felder Gesperrte VMs und Beendete VMs ein.
Klicken Sie auf Speichern.
MIG_NAME
: Name der MIG, in der eine Instanz gesperrt werden sollSUSPENDED_SIZE
: die Anzahl der gesperrten VMs, die die MIG zu einem bestimmten Zeitpunkt beibehalten sollSTOPPED_SIZE
: Die Anzahl der angehaltenen VMs, die die MIG zu einem bestimmten Zeitpunkt beibehalten sollREGION
: Bei einer regionalen MIG die Region, in der sich die MIG befindet.ZONE
: Bei einer zonalen MIG die Zone, in der sich die MIG befindetPROJECT_ID
: die Projekt-ID für die Anfrage.ZONE
: Bei einer zonalen MIG die Zone, in der sich die MIG befindet- Ersetzen Sie bei einer regionalen MIG
zones/ZONE
durchregions/REGION
und geben Sie die Region der MIG an.
- Ersetzen Sie bei einer regionalen MIG
MIG_NAME
: Name der MIG, in der eine Instanz beendet werden sollSUSPENDED_SIZE
: die Anzahl der gesperrten VMs, die die MIG zu einem bestimmten Zeitpunkt beibehalten sollSTOPPED_SIZE
: Die Anzahl der angehaltenen VMs, die die MIG zu einem bestimmten Zeitpunkt beibehalten soll
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.
MIG API für Autoscaling verwenden
Wir empfehlen die Verwendung des Compute Engine-Autoscalings für das Autoscaling Ihrer MIG. Wenn Sie jedoch ein anderes Autoscaling verwenden möchten, verwenden Sie die Endpunkte der MIG API, um angehaltene und beendete VMs zu verarbeiten.
Mit der MIG API können Sie Ihr Autoscaling, z. B. GKE Autoscaler, verbinden und den Standby-Pool der VMs für ein schnelleres Skalieren nutzen.
Zwischen gesperrten und angehaltenen Pools wählen
Die Auswahl zwischen gesperrten und angehaltenen Pools hängt von Ihrem jeweiligen Anwendungsfall ab. Um die beste Leistung zu erzielen, sollten Sie mit verschiedenen Standby-Pool-Typen für Ihre horizontal skalierbaren Szenarien experimentieren, um zu ermitteln, welcher Pool Ihren Anforderungen am besten entspricht. Bei unterschiedlichen Arbeitslasten kann es zu kürzeren Bereitstellungszeiten kommen. In einigen Fällen kann das Kopieren des Speicherzustands aus dem Speicher auf die VM mehr Zeit in Anspruch nehmen als das Neustarten der VM oder das Erstellen einer neuen VM.
Folgen Sie diesen Richtlinien, um den besten Ansatz zu finden:
Standby-Richtlinie in einer MIG bearbeiten
In diesem Abschnitt wird beschrieben, wie Sie die anfängliche Verzögerung festlegen und den Standby-Poolmodus zum horizontalen Skalieren des Pools festlegen.
Console
gcloud
Verwenden Sie den Befehl
beta instance-groups managed update
und geben Sie den Vorgangsmodus sowie die anfängliche Verzögerung an.gcloud beta compute instance-groups managed update MIG_NAME \ --standby-policy-mode=scale-out-pool \ --standby-policy-initial-delay=DELAY \ [--region=REGION | --zone=ZONE]
Ersetzen Sie Folgendes:
API
Verwenden Sie die Methode
instanceGroupManager.update
und geben Sie den Vorgangsmodus und die anfängliche Verzögerung im Anfragetext an. Verwenden Sie für regionale MIGs die MethoderegionInstanceGroupManager.update
.PUT https://www.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME { // ... "standbyPolicy": { "mode": "SCALE_OUT_POOL", "initialDelaySec": DELAY } // ... }
Ersetzen Sie Folgendes:
Größe des Standby-Pools in einer MIG anpassen
In diesem Abschnitt wird beschrieben, wie Sie die Größe von Pools gesperrter und beendeter VMs in einer MIG anpassen.
Console
gcloud
Verwenden Sie den Betabefehl
instance-groups managed resize
mit den Flags--suspended-size
und--stopped-size
.gcloud beta compute instance-groups managed resize MIG_NAME \ --suspended-size=SUSPENDED_SIZE \ --stopped-size=STOPPED_SIZE \ [--region=REGION | --zone=ZONE]
Ersetzen Sie Folgendes:
API
Verwenden Sie die Methode
instanceGroupManager.update
und geben Sie im Anfragetext die Größe der Pools von gesperrten und beendeten VMs an. Verwenden Sie für regionale MIGs die MethoderegionInstanceGroupManager.update
.PUT https://www.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME { // ... "targetSuspendedSize": SUSPENDED_SIZE, "targetStoppedSize": STOPPED_SIZE // ... }
Ersetzen Sie Folgendes:
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-12-03 (UTC).
-