Überspringen zu Hauptinhalt

AWS-Kosten senken mit Spot-Instanzen

Ungenutzte Kapazitäten von AWS EC2 Instanzen vermarktet AWS besonders preisgünstig als sogenannte “Spot-Instanzen”. Im Vergleich zum regulären On-Demand-Preis sind Ersparnisse von bis zu 90% möglich. 

Was sind Spot-Instanzen?

AWS Spot-Instanzen werden über ein Bieterverfahren verkauft, in denen die Kunden den Preis angeben, den sie pro Stunde zu zahlen bereit sind. Wenn eine Instanz zum gebotenen Preis verfügbar ist, wird diese als Kunden-Instanz ausgeführt. Allerdings kann die Instanz mit einer Vorlaufzeit von zwei Minuten beendet werden, wenn die Spot-Instanz für das Gebot preislich nicht mehr verfügbar ist. Auch AWS selbst kann Anspruch auf die Kapazität geltend machen und die Instanz beenden. Aus diesem Grund sind Spot-Instanzen nur für bestimmte Einsatzszenarien wie Stateless Applications, wie z.B. Shopsysteme oder hochskalierbare Frontends geeignet. Auch Testumgebungen sind ein guter Anwendungsfall für Spot-Instanzen.

Wie kann ich Spot-Instanzen nutzen?

Wir haben für unsere Kunden ein Vorgehen entwickelt, um Spot-Instanzen für längere Zeiträume unterbrechungsfrei nutzen zu können. Das Konzept basiert auf einer Gebotsstrategie für die Spot-Instanzen und verschiedenen Optionen für die Kombination von Spot- und On-Demand-Instanzen. Das bedeutet, dass beim automatischen Skalieren über die minimal benötigten On-Demand-Instanzen hinaus Spot-Instanzen hinzugefügt werden. Unser Best Practice Setup besteht aus einer Zusammenstellung von zwei festen On-Demand-Instanzen mit Spot-Instanzen.

Was passiert, wenn eine Spot-Instanz abgeschaltet wird?

Beendet AWS eine Spot-Instanz, wird automatisch eine neue Spot-Instanz zu einem neuen Gebotspreis hinzugefügt. Sollte der gewählte Instanztyp jedoch auf dem Spot-Markt nicht mehr verfügbar sein, ist es möglich, Spot-Instanzen eines anderen Typs (z.B. zwei t3.small Instanzen, statt einer t3.medium Instanz) oder eine weitere On-Demand-Instanz zu nutzen, um den aktuellen Ressourcenbedarf zu decken. Diese Vorgehensweise ist über unsere Managed Services abgedeckt (in Abhängigkeit der gewünschten SLA auch im 24/7 Umfang).

Kostenvergleich

Einen Kostenvergleich können wir an einem ersten Beispiel, an unserem eigenen Tool, unserem Cloud-Dashboard Orbiter aufzeigen. Der Orbiter nutzt eine feste On-Demand-Instanz sowie vier Spot-Instanzen. Zwei Spot-Instanzen des Typs c4.xlarge, eine c4.large und eine c5.large. Die Stundenpreise der Instanzen verhalten sich in diesem Szenario wie folgt: 

C4.xlarge C4.large C5.large
On-Demand-Preis 0,227$ 0,114$ 0,097$
Spot-Preis 0,0646$ 0,0321$ 0,0332$
Differenz in Prozent 71,54% 71,84% 65,77%

AWS-Kosten senken mit Spot-Instanzen

Hochgerechnet auf einen Monat ergeben sich dadurch theoretisch Kosteneinsparungen von 338,83€, auf ein gesamtes Kalenderjahr sogar bis zu 4.065,98€. Durch die flexiblen Spot-Preise lassen sich die Kostenersparnisse nicht zu 100% zuverlässig vorhersagen. Aus unserer Erfahrung laufen ein Großteil der Spot-Instanzen zuverlässig mindestens einen Monat und es sind Ersparnisse von mindestens 60% gegenüber dem On-Demand-Preis möglich.

Was unsere Kunden sagen

Unser Kunde Staffcloud setzt bereits seit einiger Zeit Spot-Instanzen in der AWS-Infrastruktur ein.

In unserer Erfahrung sind die AWS Spot Instances genau die richtige Lösung für Workloads, die nicht zeitsensitiv oder nicht mission-critical sind. Wir nutzen sie mit Erfolg in Verbindung mit RabbitMQ, schon seit einem Jahr, für unsere asynchronen Jobs, die im Hintergrund laufen. Die Jobs werden von RabbitMQ gemanaged und das sorgt dafür, dass keine Jobs verloren gehen, auch wenn die Spot Instances terminiert werden. Richtig eingesetzt, können Spot Instances helfen, die Kosten zu optimieren oder mehr Rechenleistung für denselben Preis zu erhalten (im Vergleich zu EC2 Instances zum On-Demand-Preis). Cristian Fleischer (CTO Staffcloud)

Fazit

Für bestimmte Anwendungsszenarien lassen sich Spot-Instanzen sinnvoll einsetzen, um die AWS-Kosten zu reduzieren. Wir beraten Sie dazu gerne in einem persönlichen Gespräch.

 

An den Anfang scrollen