In diesem Dokument werden die Aktionen „Anhalten“ und „Beenden“ für VM-Instanzen in einer verwalteten Instanzgruppe beschrieben. Außerdem erfahren Sie, wie Sie durch das Sperren und Beenden von VMs in einer MIG Kosten sparen und die Wartezeit reduzieren, wenn Sie mehr VMs in der Gruppe benötigen.
Mit MIGs können Sie VMs sperren und beenden, um Folgendes zu erreichen:
- Pausieren Sie eine Anwendung oder einen Dienst, den Sie nicht verwenden, um Kosten zu sparen, da Sie nicht für Rechenressourcen zahlen.
- Die horizontale Skalierung der MIG wird beschleunigt, wenn vorab initialisierte VMs aus dem Standby-Pool gesperrter und angehaltener VMs gestartet werden.
Anwendungsfälle
In den folgenden Abschnitten werden typische Anwendungsfälle für den Standby-Pool in einer MIG beschrieben.
Anwendung oder Dienst pausieren
Sie können VMs in einer MIG sperren oder anhalten, um Ihre Anwendung zu pausieren und bei Bedarf wieder aufzunehmen, je nach Berechnungen, Arbeitszeiten, Spitzenzeiten und Budgetbeschränkungen. Sie können die Ergebnisse Ihrer aktuellen Berechnungen auf nichtflüchtigen Speichern oder im Fall von gesperrten VMs im Arbeitsspeicher ablegen.
Beispielsweise können Sie in folgenden Fällen die VMs in einer MIG sperren oder beenden:
- Sie haben starke Arbeitslasten an Wochentagen und möchten VMs an Wochenenden sperren, um Kosten zu sparen.
- Sie haben eine Testumgebung, die bei Implementierungsänderungen benötigt wird, und möchten sie beenden, wenn Sie nicht aktiv entwickeln.
Hochskalierung von MIGs beschleunigen
Sie können einen Standby-Pool mit vorab initialisierten VMs bereithalten, die gestartet werden, wenn die MIG vergrößert wird. Anstatt neue VMs zu erstellen und zu warten, bis Ihre Anwendung initialisiert und lauffähig ist, startet oder fortsetzt die MIG VMs aus dem Standby-Pool. In diesem Fall wird die VM-Initialisierung im Voraus abgeschlossen, nicht in einem kritischen Moment mit erhöhter Last.
Standby-Pools sind hilfreich für Anwendungen, deren Initialisierung lange dauert, z. B. in den folgenden Fällen:
- Anwendungen, die aktuelle Inhalte auf nichtflüchtige Speicher herunterladen müssen.
- Anwendungen, die zusätzliche Inhalte im Arbeitsspeicher zwischenspeichern müssen – über Downloads von externen Speichern, über lokale Berechnungen oder eine Kombination aus beidem.
- Anwendungen, bei denen während der Initialisierung neue Software installiert werden muss, z. B. Kubernetes-Knoten.
Beibehaltene Ressourcen
Die folgende Tabelle zeigt die Ressourcen, die beibehalten werden, wenn Sie VMs in einer MIG sperren und beenden.
Beibehalten | Gesperrte VM | Beendete VM |
---|---|---|
VM-Name | ||
Interne IP-Adresse | ||
Externe IP (sitzungsspezifisch) | ||
Externe IP-Adresse (statisch*) | ||
Laufwerke† | ||
Metadaten | ||
Speicher |
*Wenn Sie eine externe IP-Adresse beibehalten möchten, wenn Sie eine VM in einer MIG beenden oder sperren, verwenden Sie die zustandsorientierte MIG-Konfiguration, um die externe IP-Adresse in eine statische IP-Adresse umzuwandeln.
†Wenn an eine VM lokale SSDs angeschlossen sind, werden die Daten auf den lokalen SSDs nicht beibehalten, wenn Sie die VM beenden oder anhalten.
Verhalten und Konfiguration
Der Standby-Pool wird durch gesperrte und angehaltene Pools von VMs gebildet. Alle angehaltenen VMs werden Teil des angehaltenen Pools und alle gesperrten VMs werden Teil des gesperrten Pools. Wenn Sie Autoscaling in einer MIG konfiguriert haben, erstellt die MIG nach dem Sperren oder Beenden einer VM sofort neue VMs, um die empfohlene Größe der MIG beizubehalten.
Zielgröße von gesperrten und beendeten Pools
Ähnlich wie die Zielgröße der MIG haben angehaltene und gesperrte Pools ihre eigenen Zielgrößen. Sie haben folgende Möglichkeiten, die Zielgröße des Standby-Pools zu steuern:
- Durch Konfiguration der Werte für die angehaltenen und gesperrten Zielgrößen.
- Durch manuelles Sperren und Anhalten von VMs, die dann automatisch die Zielgrößen ändern.
Wenn Sie die Zielgrößen für angehaltene oder gestoppte Pools ändern, verhält sich die MIG so:
- Wenn Sie die Größe der gesperrteb oder angehaltenen Pools erhöhen, erstellt die MIG neue VMs, wartet, bis die VMs initialisiert sind, und hält die VMs dann entsprechend an oder sperrt sie. Bei regionalen MIGs werden VMs gemäß der konfigurierten Zielverteilungsform erstellt.
- Wenn Sie die Größe der gesperrten oder angehaltenen Pools verringern, wählt die MIG nach dem Zufallsprinzip aus, welche gesperrten oder beendeten VMs gelöscht werden sollen.
- Wenn Sie die Zielgröße der MIG und die Größe des angehaltenen oder beendeten Pools gleichzeitig ändern, versucht die MIG, die Anzahl der Vorgänge zur Anwendung Ihrer Änderungen zu minimieren. Dies bedeutet, dass die MIG VMs aus dem Standby-Pool fortsetzen oder starten oder einige ausgeführte VMs sperren oder beenden kann.
Richtlinie für den Standby-Modus
Die Standby-Richtlinie definiert das Verhalten des Standby-Pools anhand der folgenden von Ihnen angegebenen Parameter:
- Modus: Der Modus, in dem die MIG gesperrte und beendete VMs verwendet. Dies kann der Modus
manual
oderscale-out-pool
sein. - Anfängliche Verzögerung: Die Zeit, während der die MIG eine neu erstellte VM ausführt, bevor sie gesperrt oder angehalten wird. Konfigurieren Sie die anfängliche Verzögerung so, damit genügend Zeit für die Vorinitialisierung Ihrer Anwendung zur Verfügung steht und diese bereit ist, wenn die VM gestartet oder fortgesetzt wird.
Modus
Sie können festlegen, wie Standby-Pools verwaltet werden sollen, indem Sie den Betriebsmodus festlegen.
Es gibt zwei Möglichkeiten: den manual
-Modus und den scale-out-pool
-Modus.
Manueller Modus (Standard)
Im manuellen Modus haben Sie die volle Kontrolle darüber, welche VMs in der MIG gestoppt und angehalten werden. Der manuelle Modus ist der Standardmodus des Standby-Pools.
Der manuelle Modus ist in folgenden Fällen nützlich:
- So pausieren Sie Ihre Arbeitslast und sparen Kosten für inaktive VMs.
- Die MIG in Autoscaler von Drittanbietern einbinden, die eine erweiterte Verwaltung einzelner VMs erfordern
- Ausgewählte VMs zu Debugzwecken beenden.
Im manuellen Modus wendet die MIG keine Automatisierungen auf den Standby-Pool an:
- Wenn Sie oder der Autoscaler die Zielgröße der MIG erhöhen, startet die MIG nicht automatisch VMs oder setzt sie fort, sondern erstellt neue VMs.
- Wenn Sie oder das Autoscaling die Zielgröße der MIG verringern, werden laufende VMs nicht automatisch beendet oder angehalten, sondern gelöscht.
Hochskalierungspool-Modus
Im Modus „Scale-out-Pool“ verwendet die MIG die VMs aus den Standby-Pools, um die horizontale Skalierung zu beschleunigen, indem sie fortgesetzt oder gestartet werden. Anschließend füllt die MIG den Standby-Pool automatisch mit neuen VMs auf, um die Zielgrößen beizubehalten.
Der Modus „Hochskalierungspool“ ist in den folgenden Fällen nützlich, um die horizontale Skalierung der MIG zu beschleunigen:
- Wenn Sie die Autoscaling-Funktion von Compute Engine verwenden.
- Wenn Sie Autoskalarer von Drittanbietern verwenden und vorhandene Integrationen beibehalten möchten.
- Wenn Sie die Zielgröße der laufenden VMs manuell erhöhen.
Im Scale-Out-Pool-Modus verhält sich die MIG so:
Wenn Sie oder der Autoscaler die Zielgröße der laufenden VMs in der MIG erhöhen, führt die MIG die folgenden Aktionen in der folgenden Reihenfolge aus:
- Die MIG setzt gesperrte VMs fort, falls in den Zonen, in denen die MIG horizontal skaliert wird, VMs verfügbar sind.
- Wenn die Zielgröße der MIG nach dem Fortsetzen der gesperrten VMs noch nicht erreicht wurde, startet die MIG beendete VMs, sofern in den Zonen, in denen die MIG horizontal skaliert wird, VMs verfügbar sind.
- Wenn die Zielgröße der MIG nach dem Starten der VMs immer noch nicht erreicht wurde, werden neue VMs von Grund auf neu erstellt.
Nachdem der Standby-Pool verwendet wurde, um das Skalieren zu beschleunigen, führt die MIG Folgendes aus:
- Sie erstellt neue VMs, um die gesperrten und angehaltenen Pools entsprechend ihren Zielgrößen und in Übereinstimmung mit der Zielverteilungsform bei einer regionalen MIG aufzufüllen.
- Die neuen VMs werden in den Status „Ausführend“ versetzt.
- Er sperrt oder beendet die neuen VMs, nachdem die erste Verzögerung verstrichen ist.
Wenn Sie oder das Autoscaling die Zielgröße der MIG verringern, wird die laufende VM nicht automatisch beendet oder gesperrt, sondern gelöscht.
Anfängliche Verzögerung
Damit Ihre VM ordnungsgemäß initialisiert wird, geben Sie die anfängliche Verzögerung in der Standby-Richtlinie an. Die anfängliche Verzögerung ist die Zeit, die VMs warten, bevor sie beendet oder gesperrt werden, nachdem sie erstellt wurden. So hat das Initialisierungsskript Zeit, fertig zu werden.
Die anfängliche Verzögerung tritt in den folgenden Fällen auf:
- Eine neue VM wird mit dem gewünschten Zielstatus
SUSPENDED
oderTERMINATED
erstellt. - Eine vorhandene Instanz im Status
RUNNING
wird angehalten oder beendet.
In beiden Fällen kann die Instanz initialisiert werden, bevor sie angehalten oder gesperrt wird.
Wenn Sie den Standby-Pool verwenden möchten, um die Skalierung der MIG zu beschleunigen, sollten Sie die Zeit messen, die Ihre Anwendung für die Initialisierung auf dem ausgewählten Maschinentyp benötigt, um sicherzustellen, dass diese Zeit ausreicht, damit Ihre Anwendung vollständig bereit ist, bevor sie angehalten oder gesperrt wird. Andernfalls kann das Fortsetzen oder Starten von VMs aus dem Standby-Pool länger dauern als das Erstellen von VMs von Grund auf neu.
Zielstatus für VMs in MIGs
MIGs haben eine deklarative API. Das bedeutet, dass Sie den Zielstatus für die VMs in der MIG angeben und die API-Anfrage erfolgreich ist, wenn der Zielstatus gespeichert wird. Die MIG führt dann die erforderlichen Vorgänge aus, um den Zielstatus zu erreichen. Sie können die aktuelle Aktion und den aktuellen Status aller VMs mithilfe der API prüfen.
Das Sperren und Beenden von VMs in einer MIG funktioniert auf die gleiche deklarative Weise. Wenn Sie eine Anfrage zum Anhalten oder Sperren von VMs senden, speichert die MIG die Informationen zum Zielstatus für jede VM und startet die erforderlichen Vorgänge, um sie zu erreichen.
Wenn Sie verwaltete VMs in einer MIG auflisten, sehen Sie das Feld targetStatus
.
Er beschreibt den endgültigen Status einer VM, wenn die MIG stabil ist.
Der Status kann einen der folgenden Werte annehmen:
RUNNING
STOPPED
SUSPENDED
VMs in einer MIG können dieselben Lebenszyklusstatus wie einzelne VMs haben.
Im Folgenden finden Sie Beispiele für mögliche Vorgänge an einer MIG und die zugehörigen Werte des Felds targetStatus
:
- Erstellen Sie die neue VM und sperren Sie sie nach der Initialisierung.
- Zielstatus der VM:
SUSPENDED
.
- Zielstatus der VM:
- Setzen Sie eine zuvor gesperrte VM fort.
- Zielstatus der VM:
RUNNING
- Zielstatus der VM:
- Beenden Sie eine zuvor laufende VM.
- Zielstatus der VM:
STOPPED
- Zielstatus der VM:
- Starten Sie eine zuvor angehaltene VM.
- Zielstatus der VM:
RUNNING
- Zielstatus der VM:
Beschränkungen
- Die folgenden Einschränkungen für das Sperren eigenständiger VMs gelten auch für das Sperren von VMs in einer MIG:
- Sie können keine Instanzen anhalten, die eine GPU verwenden.
- Sie können eine Bare-Metal-Instanz nicht anhalten.
- Sie können eine Instanz nicht mithilfe der Standardprozesse anhalten, die in die Gastumgebung eingebunden sind. Befehle wie
systemctl suspend
in Ubuntu 16.04 und höher sind nicht verfügbar. Das Gastsignal wird ignoriert. - Sie können eine Instanz nur bis zu 60 Tage lang anhalten, bevor die VM-Instanz automatisch beendet wird.
- Sie können Instanzen mit mehr als 208 GB Arbeitsspeicher nicht anhalten.
- Sie können Instanzen auf Abruf anhalten. Die Instanz auf Abruf wird jedoch möglicherweise beendet, bevor sie erfolgreich angehalten wird.
- Sie können eine Confidential VM nicht sperren.
- Sie können keine VM anhalten, an die CSEK-geschützte Laufwerke angehängt sind.
- In einer regionalen MIG mit der Zielverteilungsform
EVEN
und Umverteilung von Instanzen können Sie bestimmte VMs in der Gruppe nicht sperren, anhalten, fortsetzen oder starten. Um einen Standby-Pool zu verwalten, legen Sie die Zielgrößen der angehaltenen und beendeten Pools fest. - Sie können den Scale-Out-Pool-Modus nicht verwenden, wenn Sie in der MIG eine zweite Instanzvorlage für ein Canary-Update konfiguriert haben.
- Sie können VMs in einer MIG nicht sperren oder beenden, wenn Sie Reparatur in der MIG deaktiviert haben.
- Sie können eine Instanz nur bis zu 60 Tage lang anhalten, bevor die VM-Instanz automatisch beendet wird.
Preise
Jede angehaltene und gesperrte VM wird für die folgenden Elemente in Rechnung gestellt:
- Jede Nutzung des nichtflüchtigen Speichers für das Bootlaufwerk und alle zusätzlichen Laufwerke, die mit der VM verbunden sind. Weitere Informationen finden Sie unter Preise für nichtflüchtigen Speicher.
- Alle statischen IP-Adressen, die mit der VM verbunden sind. Weitere Informationen finden Sie unter IP-Preise.
- Bei angehaltenen VMs der VM-Speicher und der Gerätestatus. Weitere Informationen finden Sie unter Preise für VM-Instanzen.
Nächste Schritte
- VMs in einer MIG manuell anhalten oder sperren
- Horizontale Skalierung mit gesperrten und beendeten VMs beschleunigen
- Updates für gesperrte und beendete VMs