VM-Instanzen auf Abruf

Auf dieser Seite werden präemptive VM-Instanzen beschrieben. Wie Sie eine präemptive Instanz erstellen, erfahren Sie unter Präemptive Instanz erstellen. Weitere Informationen zu Instanzen im Allgemeinen finden Sie unter VM-Instanzen.

Was ist eine präemptive Instanz?

Eine präemptive VM ist eine Instanz, die Sie zu einem weitaus niedrigeren Preis als normale Instanzen erstellen und ausführen können. Compute Engine kann diese Instanzen jedoch (präemptiv) beenden, wenn für andere Aufgaben Zugriff auf diese Ressourcen benötigt wird. Bei präemptiven Instanzen handelt es sich um überschüssige Compute Engine-Kapazitäten, deren Verfügbarkeit je nach Nutzung variiert.

Wenn Ihre Anwendungen fehlertolerant sind und möglichen Instanzunterbrechungen standhalten können, lassen sich Ihre Compute Engine-Kosten mit präemptiven Instanzen erheblich senken. Sie können beispielsweise Batchjobs auf präemptiven Instanzen ausführen. Wenn einige dieser Instanzen während der Verarbeitung beendet werden, verlangsamt sich der Job zwar, stoppt aber nicht vollständig. Präemptive Instanzen schließen Ihre Batchjobs ab, ohne Ihre vorhandenen Instanzen zusätzlich zu belasten, und Sie müssen nicht den vollen Preis für zusätzliche normale Instanzen bezahlen.

Einschränkungen von präemptiven Instanzen

Instanzen auf Abruf funktionieren wie normale Instanzen, haben aber die folgenden Einschränkungen:

  • Compute Engine kann Instanzen auf Abruf jederzeit aufgrund von Systemereignissen beenden. Die Wahrscheinlichkeit, dass Compute Engine eine Instanz auf Abruf wegen eines Systemereignisses beendet, ist in der Regel gering, kann aber von Tag zu Tag und Zone zu Zone abhängig von den aktuellen Bedingungen variieren.
  • Compute Engine beendet Instanzen auf Abruf immer, wenn sie 24 Stunden lang ausgeführt wurden. Bestimmte Aktionen setzen diese 24-Stunden-Frist zurück.
  • Instanzen auf Abruf sind begrenzte Compute Engine-Ressourcen, die unter Umständen nicht immer verfügbar sind.
  • Für Instanzen auf Abruf kann keine Livemigration erfolgen und kein automatischer Neustart bei einem Wartungsereignis eingestellt werden.
  • Aufgrund der oben genannten Einschränkungen sind Instanzen auf Abruf nicht von Service Level Agreements abgedeckt und aus dem Google Compute Engine-SLA ausgeschlossen.
  • Die Gutschriften der kostenlosen Google Cloud Platform-Stufe für Compute Engine gelten nicht für Instanzen auf Abruf.

Prozess der vorzeitigen Beendigung

Compute Engine führt zur vorzeitigen Beendigung einer Instanz folgende Schritte aus:

  1. Compute Engine sendet eine Benachrichtigung über die vorzeitige Beendigung an die Instanz in Form des Signals ACPI G2 Soft Off. Sie können zur Verarbeitung der Benachrichtigung ein Shutdown-Skript verwenden und Bereinigungsaktionen ausführen, bevor die Instanz beendet wird.
  2. Wenn die Instanz nach 30 Sekunden nicht beendet ist, sendet Compute Engine das Signal ACPI G3 Mechanical Off an das Betriebssystem.
  3. Compute Engine versetzt die Instanz in den Status TERMINATED.

Sie können eine Instanzpräemption simulieren, indem Sie die Instanz beenden.

Präemptiv beendete Instanzen erscheinen noch in Ihrem Projekt, werden aber nicht pro Stunde abgerechnet, während sie sich im Status TERMINATED befinden. Sie können auf die Daten eines jeden nichtflüchtigen Speichers, der mit der Instanz verbunden ist, zugreifen und diese wiederherstellen. Allerdings entstehen weiterhin Speicherkosten, bis Sie den Speicher löschen. Wie bei normalen Instanzen wird nichtflüchtiger Speicher, der zum automatischen Löschen markiert wurde, beim Löschen der Instanz auf Abruf gelöscht.

Wenn Compute Engine eine Instanz auf Abruf in weniger als einer Minute nach ihrer Erstellung beendet, wird Ihnen die Verwendung dieser VM-Instanz nicht in Rechnung gestellt. Damit ist gewährleistet, dass Sie erst dann für Instanzen auf Abruf zahlen, nachdem sie ein erhebliches Arbeitsvolumen bewältigt haben. Allerdings werden die Kosten für Premium-Betriebssysteme wie immer berechnet.

Präemptionsauswahl

Im Allgemeinen vermeidet Compute Engine, zu viele Instanzen von ein und demselben Kunden präemptiv zu beenden, und wendet die Präemption auf Instanzen an, die zuletzt gestartet wurden. Dies kann anfangs etwas frustrierend sein, hilft aber auf lange Sicht, den Arbeitsverlust in Ihrem Cluster zu minimieren. Die Compute Engine berechnet Ihnen keine Instanzen, wenn diese in der ersten Minute nach dem Start der Ausführung bereits beendet werden.

Anhand von Verlaufsdaten können wir sagen, dass durchschnittlich je Projekt zwischen 5 und 15 % der Instanzen auf Abruf je sieben Tage vorzeitig beendet werden. Gelegentlich ist dieser Wert in Abhängigkeit von Zeit und Zone höher. Denken Sie daran, dass dies nur Erfahrungswerte sind: Instanzen auf Abruf sind weder durch Garantien noch SLAs in Bezug auf Häufigkeit und Verteilung vorzeitigen Beendens geschützt.

Durch bestimmte Aktionen wird diese 24-Stunden-Frist für Instanzen auf Abruf zurückgesetzt. Wenn Sie eine Instanz anhalten und neu starten, setzt Compute Engine die Frist zurück, da die Instanz in den Status TERMINATED versetzt wird. Andere Aktionen, bei denen die Instanz weiterhin den Status RUNNING hat, führen jedoch nicht zu einer Zurücksetzung der Frist. Dazu zählen beispielsweise das Zurücksetzen einer Instanz oder das Ausführen eines sudo reboot innerhalb der VM.

Instanzen auf Abruf in einer verwalteten Instanzgruppe

Sie können präemptive Instanzen in einer verwalteten Instanzgruppe erstellen. Geben Sie dafür die Präemptionsoption in der Instanzvorlage an, bevor Sie die Gruppe erstellen oder aktualisieren.

Verwaltete Instanzgruppen können neue präemptive Instanzen nur dann erstellen oder hinzufügen, wenn zusätzliche Compute Engine-Ressourcen zur Verfügung stehen. Wenn diese Ressourcen begrenzt sind, können verwaltete Instanzgruppen die Anzahl der präemptiven Instanzen in der Gruppe weder ändern noch automatisch skalieren.

Verwaltete Instanzgruppen versuchen immer, ihre Zielgröße oder die vom Autoscaling für diese Gruppe vorgegebene Größe beizubehalten. Wenn Compute Engine eine präemptive Instanz in einer verwalteten Instanzgruppe beendet, versucht die Gruppe wiederholt, diese Instanz mithilfe der angegebenen Instanzvorlage neu zu erstellen. Wenn die erforderlichen Ressourcen wieder verfügbar sind, erstellt die Gruppe die Instanz neu und erhält die Zielgruppengröße aufrecht.

Premium-Betriebssysteme auf präemptiven Instanzen

Präemptive Instanzen reduzieren weder die Kosten der Premium-Betriebssysteme noch ändern sie etwas an dem Modus, nach dem Ihnen die Verwendung dieser Betriebssysteme in Rechnung gestellt wird. Wenn Compute Engine eine präemptive Instanz beendet, auf der ein Premium-Betriebssystem ausgeführt wird, zahlen Sie so für dieses Betriebssystem, als ob Sie die Instanz selbst beendet hätten. Die Mindestkosten für die Nutzung gelten weiterhin und die Rechnungen für Premium-Betriebssysteme werden immer noch durch Aufrundung auf das nächste Nutzungsinkrement berechnet.

Für die Maschinentypen der Instanzen auf Abruf, auf denen Premium-Betriebssysteme ausgeführt werden, erfolgt die Abrechnung immer pro Sekunde und entsprechend den Preisen auf der Seite Maschinentyp – Preise.

Lokale SSDs auf Instanzen auf Abruf

Sie können eine VM-Instanz auf Abruf mit einer lokalen SSD starten. Compute Engine rechnet die Nutzung der lokalen SSD dann zu Preisen für SSDs auf Abruf ab. Lokale SSDs, die zu Instanzen auf Abruf hinzugefügt werden, funktionieren wie normale lokale SSDs und bleiben so lange erhalten, wie die Instanz besteht. Sie können ein separates Kontingent für lokale SSDs auf Abruf anfordern oder Ihr reguläres Kontingent für lokale SSDs zum Erstellen lokaler SSDs auf Abruf verwenden.

Compute Engine berechnet Ihnen keine lokalen SSDs, wenn ihre Instanzen in der ersten Minute nach dem Start der Ausführung wieder beendet werden.

Weitere Informationen über lokale SSDs finden Sie in der Dokumentation zu lokalen SSDs.

GPUs auf präemptiven Instanzen

Sie können VM-Instanzen auf Abruf um GPUs ergänzen – zu niedrigeren nutzungsbasierten Preisen für die GPUs. Zu präemptiven Instanzen hinzugefügte GPUs funktionieren wie normale GPUs, bleiben jedoch nur für die Lebensdauer der Instanz bestehen. Für präemptive Instanzen mit GPUs gilt derselbe Präemptionsprozess wie für alle präemptiven Instanzen.

Beim Hinzufügen einer GPU zu einer präemptiven Instanz nutzen Sie Ihr reguläres GPU-Kontingent. Wenn Sie ein separates Kontingent für präemptive GPUs benötigen, fordern Sie ein separates Kontingent für präemptive GPUs an.

Bei Wartungsereignissen werden präemptive Instanzen mit GPUs standardmäßig beendet und können nicht automatisch neu gestartet werden. Wenn Sie die Instanzen neu erstellen möchten, nachdem sie beendet wurden, verwenden Sie eine verwaltete Instanzgruppe. Verwaltete Instanzgruppen erstellen Ihre Instanzen neu, sofern die vCPU-, Speicher- und GPU-Ressourcen verfügbar sind.

Wenn Sie eine Warnung erhalten möchten, bevor die Instanzen beendet werden, oder wenn Sie die Instanz so konfigurieren möchten, dass sie nach einer Wartung automatisch neu gestartet wird, verwenden Sie eine nicht auf Abruf verfügbare Instanz mit einer GPU. Bei nicht auf Abruf verfügbaren Instanzen mit GPUs wird von Google eine Stunde im Voraus eine Warnung ausgegeben.

Compute Engine berechnet Ihnen keine GPUs, wenn ihre Instanzen in der ersten Minute nach dem Start der Ausführung wieder beendet werden.

Eine Anleitung zum automatischen Neustart einer nicht auf Abruf verfügbaren Instanz finden Sie unter Aktualisierungsoptionen für eine Instanz.

Informationen zum Erstellen von präemptiven Instanzen finden Sie unter Instanz mit einer GPU erstellen.

Präemptionseinstellungen testen

Sie können simulierte Wartungsereignisse für Ihre Instanzen ausführen, um ihre präemptive Beendigung zu erzwingen. Mit dieser Funktion können Sie testen, wie Ihre Anwendungen präemptive Instanzen handhaben. Lesen Sie unter Verfügbarkeitsrichtlinien testen, wie Sie Wartungsereignisse in Ihren Instanzen testen können.

Anstatt eines simulierten Wartungsereignisses können Sie auch eine Instanzpräemption simulieren. Hierzu müssen Sie die Instanz beenden. So lassen sich Kontingentlimits vermeiden.

Weitere Informationen

Hat Ihnen diese Seite weitergeholfen? Teilen Sie uns Ihr Feedback mit:

Feedback geben zu...

Compute Engine-Dokumentation