Spot-VMs


Diese Seite beschreibt Spot-VMs: VM-Instanzen, die überschüssige Compute Engine-Kapazität darstellen. Für Spot-VMs gibt es erhebliche Rabatte. Compute Engine kann jedoch Spot-VMs jederzeit vorzeitig beenden oder löschen, um die Kapazität zurückzugewinnen. Spot-VMs sind die neueste Version von VMs auf Abruf.

Das Bereitstellungsmodell einer VM wirkt sich auf Rabatte und Verfügbarkeit aus. Compute Engine-VMs können entweder das Standardbereitstellungsmodell (Standard-VMs) (Standardeinstellung) oder das Spot-Bereitstellungsmodell (Spot-VMs) verwenden. Im Gegensatz zu Standard-VMs sind Spot-VMs zu viel niedrigeren Preisen verfügbar, haben aber eine geringere Verfügbarkeit, da sie vorzeitig beendet werden können. Verwenden Sie Spot-VMs, um die Kosten für fehlertolerante Arbeitslasten zu reduzieren.

Weitere Informationen zu Compute Engine-VMs im Allgemeinen finden Sie in der Dokumentation zu VM-Instanzen. Weitere Informationen zum Erstellen von Spot-VMs finden Sie unter Spot-VMs erstellen und verwenden.

Was sind Spot-VMs?

Spot-VMs sind wesentlich günstiger – 60 bis 91% Rabatt für die meisten Maschinentypen und GPUs sowie kleinere Rabatte für einige andere Ressourcen – im Vergleich zum On-Demand-Preis für Standard-VMs. Compute Engine kann Spot-VMs jedoch jederzeit vorzeitig beenden, z. B. wenn es die Ressourcen für andere Aufgaben benötigt. Zu diesem unsicheren Zeitpunkt des vorzeitigen Beendens stoppt Compute Engine entweder Ihre Spot-VMs (Standard) oder löscht Ihre Spot-VMs, je nach der von Ihnen angegebenen Beendigungsaktion für jede Spot-VM. Spot-VMs sind überschüssige Compute Engine-Kapazitäten, deren Verfügbarkeit je nach Compute Engine-Nutzung variiert. Spot-VMs haben keine Mindest- oder Höchstlaufzeit, es sei denn, Sie begrenzen die Laufzeit.

Wenn Ihre Arbeitslasten fehlertolerant sind und einer möglichen vorzeitigen VM-Beendigung standhalten, können Spot-VMs Ihre Compute Engine-Kosten erheblich reduzieren. Beispielsweise können Batchverarbeitungsjobs auf Spot-VMs ausgeführt werden. Wenn einige dieser VMs während der Verarbeitung beendet werden, verlangsamt sich der Job zwar, stoppt aber nicht vollständig. Spot-VMs führen Ihre Batchverarbeitungsaufgaben aus, ohne Ihre vorhandenen VMs zusätzlich zu belasten, und Sie müssen nicht den vollen Preis für zusätzliche Standard-VMs bezahlen.

Einschränkungen für Spot-VMs

Spot-VMs funktionieren wie Standard-VMs, haben aber die folgenden Einschränkungen:

  • Compute Engine kann Spot-VMs jederzeit vorzeitig beenden, um die Ressourcen zurückzugewinnen. Compute Engine beendet Spot-VMs aus verschiedenen Gründen vorzeitig, z. B. aufgrund von Systemereignissen. Die Wahrscheinlichkeit, dass Compute Engine Spot-VMs beendet, ist in der Regel gering, kann aber von Tag zu Tag und Zone zu Zone abhängig von den aktuellen Bedingungen variieren.
  • Spot-VMs sind endliche Compute Engine-Ressourcen, die unter Umständen nicht immer verfügbar sind.
  • Spot-VMs können weder die Live-Migration verwenden, um während der Ausführung zu Standard-VMs zu werden, noch so eingestellt werden, dass sie bei Host-Events automatisch neu gestartet werden.
  • Aufgrund der oben genannten Einschränkungen sind Spot-VMs durch kein Service Level Agreement (SLA) abgedeckt und vom Compute Engine-SLA ausgeschlossen.
  • Das Guthaben der kostenlosen Stufe von Google Cloud für Compute Engine gilt nicht für Spot-VMs.
  • Spot-VMs sind nur für unterstützte Maschinentypen verfügbar.

Vorzeitiges Beenden von Spot-VMs

In diesem Abschnitt wird beschrieben, wie Compute Engine Spot-VMs vorzeitig beendet und welche VMs für das vorzeitige Beenden ausgewählt werden.

Vorgang des vorzeitigen Beendens

Compute Engine führt die folgenden Schritte aus, um Spot-VMs vorzeitig zu beenden:

  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. Die Zeitspanne für das Herunterfahren nach einem Hinweis auf vorzeitiges Beenden wird bestmöglich umgesetzt und kann bis zu 30 Sekunden betragen.
  2. Wenn die Spot-VM nach der Shutdown-Periode des Hinweises auf vorzeitiges Beenden nicht gestoppt wurde, sendet Compute Engine das Signal ACPI G3 Mechanical Off an das Betriebssystem.
  3. Der endgültige Zustand von Spot-VMs hängt von der angegebenen Beendigungsaktion für jede VM ab:
    • Wenn die Beendigungsaktion auf STOP gesetzt oder nicht angegeben ist, wird die VM von Compute Engine beendet und in den Status TERMINATED versetzt.
    • Wenn die Beendigungsaktion auf DELETE gesetzt ist, löscht Compute Engine die VM.

Sie können das vorzeitige Beenden einer VM simulieren, indem Sie die VM beenden oder entsprechend die VM löschen.

Wenn die vorzeitig beendete VM gestoppt wurde, wird sie weiterhin in Ihrem Projekt angezeigt. Für die VM-Stunden werden Ihnen jedoch keine Gebühren in Rechnung gestellt, solange sie sich im Status TERMINATED befindet. 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 Standard-VMs werden nichtflüchtige Speicher, die zum automatischen Löschen markiert sind, beim Löschen von Spot-VMs gelöscht.

Wenn Compute Engine Spot-VMs weniger als eine Minute nach ihrer Erstellung vorzeitig beendet, werden Ihnen die Nutzung dieser VMs nicht in Rechnung gestellt. So zahlen Sie nur dann für Spot-VMs, wenn sie auch genügend Zeit hatten, um ein signifikantes Arbeitsvolumen zu erledigen. Allerdings werden die Kosten für Premium-Betriebssysteme wie immer berechnet.

Präemptionsauswahl

Das vorzeitige Beenden kann auftreten, wenn Spot-VMs den Status RUNNING haben. Im Status TERMINATED werden Spot-VMs nicht zum vorzeitigen Beenden ausgewählt. Daher können Sie den Vorgang des vorzeitigen Beendens zurücksetzen, indem Sie Spot-VMs stoppen und dann neu starten, denn das Stoppen der VMs belässt sie im Status TERMINATED. Sie können vorzeitig beendete Spot-VMs beliebig oft stoppen und neu starten, solange Kapazität vorhanden ist. Beachten Sie, dass das Zurücksetzen oder Neustarten von VMs die VMs im Status RUNNING belässt und somit kein Zurücksetzen des vorzeitigen Beendens möglich ist.

Vorschläge zum Reduzieren der vorzeitigen Beendigungsrate finden Sie in unseren Best Practices.

Preise

Spot-Preise, die Preise für Spot-VMs, bieten erhebliche Rabatte auf VMs. Spot-Preise bieten einen Rabatt von 60–91% gegenüber dem Standardpreis für die meisten Maschinentypen und GPUs. Außerdem erhalten Sie kleinere Rabatte für alle A3-Maschinentypen und GPUs, lokale SSDs, externe IP-Adressen und Tier 1-Netzwerkkosten für Spot-VMs. Bei benutzerdefinierten Maschinentypen wird zusätzlich zu den Preisen für Standardmaschinentypen ein Aufschlag berechnet. Spotpreise für benutzerdefinierte Maschinentypen enthalten diesen Aufschlag.

Wenn eine vorzeitig beendete VM gestoppt wurde, werden Ihnen keine VM-Stunden in Rechnung gestellt, während sie sich im Status TERMINATED befindet. 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. Weitere Informationen zur Betriebszeit von Instanzen und zu Laufwerkspreisen.

Die aktuellen Preise für Spot-VMs finden Sie auf der Seite Preise für Spot-VMs. Verwenden Sie dazu die Cloud Billing Catalog API oder melden Sie sich für Preisankündigungen für Spot-VMs an.

Spot-VMs mit Compute Engine verwenden

Dieser Abschnitt enthält wichtige Informationen zur Verwendung von Spot-VMs mit anderen Compute Engine-Angeboten. Erfahren Sie mehr über die Verwendung von Spot-VMs mit verwalteten Instanzgruppen, Premium-Betriebssystemen, lokalen SSDs und GPUs. Informieren Sie sich außerdem darüber, wie sich Spot-VMs auf Ihre Kontingente für Compute Engine-Ressourcen auswirken.

Spot-VMs in einer verwalteten Instanzgruppe

Sie können Spot-VMs in einer verwalteten Instanzgruppe mit der gcloud CLI oder mit der Compute Engine API erstellen. Geben Sie in einer Instanzvorlage die Optionen zum Erstellen von Spot-VMs an, bevor Sie die Gruppe erstellen oder aktualisieren.

Verwaltete Instanzgruppen können neue Spot-VMs nur dann erstellen oder hinzufügen, wenn zusätzliche Compute Engine-Ressourcen verfügbar sind. Wenn diese Ressourcen begrenzt sind, können verwaltete Instanzgruppen die Anzahl der Spot-VMs in der Gruppe nicht anpassen oder 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 oder mehrere Spot-VMs in einer verwalteten Instanzgruppe beendet, versucht die Gruppe wiederholt, diese VMs mit 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 Spot-VMs

Spot-VMs reduzieren nicht die Kosten von Premium-Betriebssystemen und ändern nicht die Art und Weise, wie Ihnen die Nutzung dieser Betriebssysteme in Rechnung gestellt wird. Wenn Compute Engine Spot-VMs beendet, auf denen ein Premium-Betriebssystem ausgeführt wird, zahlen Sie so für dieses Betriebssystem, als ob Sie die VMs 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 Spot-VMs, 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 Spot-VMs

Sie können Spot-VMs mit lokalen SSDs starten und Compute Engine berechnet die Spot-Preise für die Nutzung der lokalen SSD. Lokale SSDs, die Spot-VMs zugeordnet sind, funktionieren wie normale lokale SSDs. Sie haben die gleichen Datenpersistenz-Merkmale und bleiben angehängt, solange die VM besteht.

In Compute Engine werden lokale SSDs nicht in Rechnung gestellt, wenn deren Instanzen in der ersten Minute nach Beginn der Ausführung wieder beendet werden.

Weitere Informationen zu lokalen SSDs finden Sie unter Lokale SSDs hinzufügen.

GPUs auf Spot-VMs

Sie können Ihren Spot-VMs GPUs zu niedrigeren Spot-Preisen für die GPUs hinzufügen. An Spot-VMs angehängte GPUs funktionieren wie normale GPUs, bleiben jedoch nur für die Lebensdauer der VM bestehen. Für Spot-VMs mit GPUs gilt derselbe Prozess für vorzeitiges Beenden wie für alle Spot-VMs.

Fordern Sie ein dediziertes Preemptible GPU-Kontingent für GPUs auf Spot-VMs an. Weitere Informationen finden Sie unter Kontingente für Spot-VMs.

Bei Wartungsereignissen werden Spot-VMs mit GPUs standardmäßig vorzeitig 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 VM-Instanzen neu, sofern die vCPU-, Speicher- und GPU-Ressourcen verfügbar sind.

Wenn Sie eine Warnung erhalten möchten, dass die VMs vorzeitig beendet werden, oder wenn Sie die VMs so konfigurieren möchten, dass sie nach einer Wartung automatisch neu gestartet werden, verwenden Sie Standard-VMs mit einer GPU. Für Standard-VMs mit GPUs bietet Compute Engine vor dem vorzeitigen Beenden eine Stunde im Voraus eine Warnung.

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

Informationen zum Erstellen von Spot-VMs mit angehängten GPUs finden Sie unter VM mit angehängten GPUs erstellen und Spot-VMs erstellen.

Kontingente für Spot-VMs

Wie andere VMs erfordern Spot-VMs verfügbare CPU-Kontingente. Wenn Sie Spot-VMs mit lokalen SSDs oder GPUs verwenden möchten, benötigen Spot-VMs außerdem entweder ein Laufwerkskontingent oder ein GPU-Kontingent.

Wenn Sie Spot-VMs mit diesen Ressourcen verwenden und kein Kontingent auf Abruf angefordert haben, verbrauchen Spot-VMs Ihr Standardkontingent für diese Ressourcen. Wenn Sie Spot-VMs verwenden möchten, sollten Sie ein Kontingent auf Abruf für diese Ressourcen anfordern, um zu verhindern, dass Spot-VMs Ihre anderen Kontingente verbrauchen.

Nachdem Ihnen von Compute Engine ein Kontingent auf Abruf in einer Region zugeteilt wurde, werden alle Spot-VMs (und alle VMs auf Abruf) in dieser Region über dieses Kontingent angerechnet. Alle Standard-VMs in dieser Region werden weiterhin über das Standardkontingent angerechnet. In Regionen, in denen kein Kontingent auf Abruf vorhanden ist, können Sie Spot-VMs mit dem Standardkontingent starten.

Das auf Abruf verfügbare Kontingent ist nicht auf den Kontingentseiten der gcloud CLI oder der Google Cloud Console sichtbar, es sei denn, Compute Engine hat das Kontingent zugeteilt. Weitere Informationen finden Sie unter Allokationskontingente für aufnehmbare Ressourcen.

Nächste Schritte

Jetzt testen

Wenn Sie mit Google Cloud noch nicht vertraut sind, erstellen Sie einfach ein Konto, um die Leistungsfähigkeit von Compute Engine in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.

Compute Engine kostenlos testen