Präemptive VM-Instanzen

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

Präemptive Instanzen funktionieren wie normale Instanzen, haben aber die folgenden Einschränkungen:

  • Compute Engine kann präemptive Instanzen jederzeit aufgrund von Systemereignissen beenden. Die Wahrscheinlichkeit, dass Compute Engine eine präemptive Instanz 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 präemptive Instanzen immer, wenn sie 24 Stunden lang ausgeführt wurden.
  • Präemptive Instanzen sind begrenzte Compute Engine-Ressourcen, die unter Umständen nicht immer verfügbar sind.
  • Präemptive Instanzen können nicht live migriert oder so eingestellt werden, dass bei einem Wartungsereignis automatisch ein Neustart erfolgt.
  • Aufgrund der oben genannten Einschränkungen sind präemptive Instanzen nicht von Service Level Agreements abgedeckt und aus dem Google Compute Engine-SLA ausgeschlossen.

Präemptionsprozess

Compute Engine führt zur präemptiven Beendigung einer Instanz folgende Schritte aus:

  1. Compute Engine sendet eine Präemptionsbenachrichtigung an die Instanz in Form eines ACPI G2 Soft Off-Signals. Sie können zur Verarbeitung der Präemptionsbenachrichtigung ein Beendigungsskript verwenden und Bereinigungsaktionen abschließen, bevor die Instanz beendet wird.
  2. Wenn die Instanz nach 30 Sekunden nicht beendet wird, sendet Compute Engine ein ACPI G3 Mechanical Off-Signal 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 präemptiven Instanz gelöscht.

Wenn Compute Engine eine präemptive Instanz in weniger als zehn Minuten 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 präemptive Instanzen 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. Außerdem berechnet Compute Engine keine Instanzen, die innerhalb der ersten zehn Minuten präemptiv beendet wurden. Sie sparen also auch Kosten.

Anhand historischer Beobachtungsdaten können wir sagen, dass die durchschnittliche Präemptionsrate je Projekt zwischen 5 und 15 % pro sieben Tage liegt und in Abhängigkeit von Zeit und Zone gelegentlich nach oben ausschlägt. Denken Sie daran, dass dies nur Beobachtungswerte sind: Präemptive Instanzen sind weder durch Garantien noch SLAs für Präemptionsraten oder -verteilungen abgedeckt.

Präemptive Instanzen 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.

Die Maschinentypen der präemptiven Instanzen werden immer pro Minute und entsprechend den Preisen auf der Seite Maschinentyp – Preise in Rechnung gestellt.

Lokale SSDs auf präemptiven Instanzen

Sie können eine präemptive VM-Instanz mit einer lokalen SSD starten. Compute Engine berechnet die Nutzung der lokalen SSD dann zu präemptiven Preisen. Lokale SSDs, die zu präemptiven Instanzen 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 präemptive lokale SSDs anfordern oder Ihr reguläres Kontingent für lokale SSDs zum Erstellen präemptiver lokaler SSDs verwenden.

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

GPUs auf präemptiven Instanzen

Sie können präemptiven VM-Instanzen GPUs hinzufügen – zu niedrigeren präemptiven 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 präemptive Instanz mit einer GPU. Bei nicht präemptiven Instanzen mit GPUs wird von Google eine Stunde im Voraus eine Warnung ausgegeben.

Eine Anleitung zum automatischen Neustart einer nicht präemptiven 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 in Verfügbarkeitsrichtlinien testen nach, wie Sie Wartungsereignisse in Ihren Instanzen testen können.

Nächste Schritte

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

Feedback geben zu...

Compute Engine-Dokumentation