Kostengünstige Nutzung von Amazon Web Services AWS zu Spot(t)-Preisen fast gratis nutzen

Autor / Redakteur: Michael Matzer / Florian Karlstetter

Auf dem AWS Summit 2018, der Anfang Juni in Berlin stattfand, erzählte Glenn Gore, der Chief Architect von Amazon Web Services, dass über 60 AWS-Services kostenlos zur Verfügung stünden und es zahlreiche Möglichkeiten gebe, die Abo-Gebühr für Services wie EC2 auf ein Zehntel des „Normalpreises“ zu senken. Diese verlockende Aussicht ist, wie eine Analyse zeigt, kein potentielles PR-Geflunker, sondern auf Euro und Cent nachprüfbar.

Anbieter zum Thema

Amazon Web Services bietet zahlreiche Features, um einzelne Services kostenlos oder zumindest vergleichsweise kostengünstig zu nutzen.
Amazon Web Services bietet zahlreiche Features, um einzelne Services kostenlos oder zumindest vergleichsweise kostengünstig zu nutzen.
(© Amazon/Matzer)

Ein näherer Blick auf die AWS-Webseitekostenlose Services“ bestätigt die Aussage Glenn Gores. Abseits des AWS Simple Calculator, mit dem sich Leistung und Kapazität berechnen lassen, erscheinen drei Kategorien auf der Webseite, die in der Tat kostenfrei sind: „12 Monate kostenlos“, „immer kostenlos“ und „Testversionen“. Dass Testversionen grundsätzlich kostenlos sein sollten, damit sich Entwickler für sie interessieren, darf als selbstverständlich vorausgesetzt werden. Kein Wunder ist es daher, dass sich hier zudem auch viele Angebote von AWS-Partnern tummeln.

Kategorie „Immer kostenlos"

Unter der Kategorie „Immer kostenlos“ finden sich ebenfalls Gores Angaben bestätigt. Bei Services wie Lambda (die events-basiert sind) sind 5 Mio. Requests pro Monat gratis. Das Gleiche gilt für 750 Stunden EC2 pro Monat oder 1 GB AWS QuickSight-Nutzung (nicht jedoch 10 GB Nutzung). „Auch der Storage-Dienst S3“, so Gore, „schenkt seinen Nutzern 5 GB Kapazität im Monat.“ Allerdings sind 5 GB im Monat ebenso schnell verbraucht wie das Gigabyte für das BI-Tool QuickSight, besonders wenn es um die Verarbeitung von Big Data geht. Und das S3-Angebot läuft nach einem Jahr aus.

Kategorie „bis zu 12 Monate kostenlos“

AWS habe seinen Kunden 66 kontinuierliche Preissenkungen weitergegeben, behauptet Gore. Diese Aussage trifft v.a. auf Angebote zu, die in den ersten zwölf Monaten kostenfrei sind. T2Micro RDS (db.t2.micro-Datenbanken) kann man zu Testzwecken 750 Stunden lang im 31-Tage-Monat bzw. 24,2 Stunden pro Tag für lau nutzen – aber nur im ersten Jahr und nur für Neukunden. Wenn der zwölfmonatige Zeitraum für die kostenlose Nutzung abgelaufen ist oder das kostenlose Kontingent überschritten wird, gelten die nutzungsabhängigen Servicetarife. Die Preise dafür finden sich auf einer gesonderten Webseite der AWS-Homepage.

Die Jahres-Abos eignen sich vor allem für das Anlocken von Neukunden und für ein erstes Projekt. Nach einem Jahr muss sich der Kunde entscheiden, ob er aufhört oder den vollen Preis bezahlen kann. Doch es gibt einen Ausweg – zumindest für manche Services, die von zentraler Bedeutung sind. Dazu gehört EC2 alias Elastic Compute Cloud.

Gore berichtete, dass es eine Art Spotmarkt für ungenutzte EC2-Kapazitäten gebe: „Die ungenutzte Kapazität kann ersteigert werden." Das Ersteigern klingt jedoch nach unnötiger Zusatzarbeit. Die muss nicht sein, denn wie sich beim Durchblättern der EC2-Seiten ergibt, gibt es zahlreiche Helferlein und Tabellen, die AWS dem Kunden frei Haus liefert. Angesichts dieser Starthilfe soll EC2 als Beispiel für die Berechnung solcher Spot-Kapazitäten dienen.

Bildergalerie

EC2-Abos: die kostenlose Basis

Zunächst einmal ist EC2 dazu da, den monatlichen Dauerbetrieb zu ermöglichen. Dies erlauben die Linux- und Windows-Server-t2.micro-Instances mit 750 kostenfreien Stunden (1 GB RAM und 32-Bit- und 64-Bit-Plattformunterstützung). Frei Haus kommt auch der Elastic Load Balancer, aufgeteilt zwischen Classic und Application Load Balancer, 15 GB Datenverarbeitung für Classic Load Balancer und 15 LCUs für Application Load Balancer. Ebenso unentbehrlich sind die 30 GB AWS Elastic Block Storage plus 2 Mio. E/As und 1 GB Snapshot-Speicher. Bei EBS gilt es auf die Label „SSD“ und „Magnetisch“ (= Festplatte) zu achten. Die 2 Mio. E/As beziehen sich auf „Magnetisch“. Zu guter Letzt profitieren neue Kunden von 500 MB/Monat Amazon Elastic Container Registry-Speicher.

EC2-Abos: vier Instance-Typen

Die Preisstufen orientieren sich an vier Typen von EC2-Instances: Reserved, On-demand, Dedicated und Spot.

1) On-Demand

Mit On-Demand-Instances zahlen Nutzer für die Rechenkapazität nach Stunde oder Minute, je nachdem welche Instances sie ausführen. Keine langfristigen Verträge oder Vorabzahlungen sind erforderlich. So können sie die Rechenkapazitäten flexibel je nach Anwendungsbedarf erhöhen oder verringern und nur den Stundensatz für die genutzten Instances zahlen. Das ist geeignet für preisbewusste, unabhängige Nutzer; für solche mit stark schwankenden Arbeitslasten; und für Entwickler und Tester.

2) Reserved Instances

Erst „Reserved Instances“ bieten im Vergleich zu den Preisen von On-Demand-Instances einen beachtlichen Rabatt (laut AWS bis zu 75 Prozent). Wenn Reserved Instances einer bestimmten Availability Zone zugewiesen werden, stellen sie außerdem eine Kapazitätsreservierung bereit, sodass Nutzer Instances bei Bedarf starten können. Für Anwendungen mit stabilen oder vorhersehbaren Nutzungsanforderungen sparen Nutzer gegenüber On-Demand-Instances laut AWS einen Großteil der Kosten ein. Solche Instances lohnen sich für Anwendungen mit stabiler Zustandsnutzung und Kunden, die EC2 über einen Zeitraum von 1 oder 3 Jahren einsetzen, um ihre Gesamtkosten für die Datenverarbeitung zu senken

3) Dedicated Hosts

Ein Dedicated Host ist ein physischer EC2-Server, der für Ihre Nutzung reserviert ist. Mit Dedicated Hosts können Nutzer Kosten einsparen, indem sie ihre bestehenden servergebundenen Software-Lizenzen, z. B. für Windows Server, SQL Server und SUSE Linux Enterprise Server (gemäß den jeweiligen Lizenzbedingungen), nutzen können. Darüber hinaus wird dadurch die Einhaltung von Compliance-Anforderungen erleichtert. Solche Hosts können on-demand pro Stunde gebucht werden. Reserviert man ihre Nutzung, kann man einen Abschlag von bis zu 70 Prozent auf den On-Demand-Preis erwerben.

4) Spot Instances

Mit EC2 Spot-Instances können Nutzer EC2-Datenverarbeitungs-Reservekapazität mit einem Rabatt von bis zu 90 % auf den On-Demand-Preis anfordern. Diesen Vorteil hat Glenn Gore gemeint. Aber wie erzielt man diesen Vorteil?

Der einzige Unterschied zwischen On-Demand-Instances und Spot-Instances liegt darin, dass Spot-Instances mit zwei Minuten Benachrichtigungsvorlauf durch EC2 unterbrochen werden kann, wenn EC2 die Kapazität zurück braucht. Nutzer können EC2 Spot für verschiedene fehlertolerante und flexible Anwendungen, wie beispielsweise Test- und Entwicklungsumgebungen, zustandslose Webserver, Bild-Rendering oder Video-Transkodierung, sowie zur Ausführung von Workloads für Analysen, maschinelles Lernen und Hochleistungsdatenverarbeitung verwenden. Das sind Anwendungen mit flexiblen Start- und Endzeiten, die nur zu äußerst geringen Computing-Preisen realisierbar sind (weil die Datenmengen immens sind). Spot Instances sind für Benutzer mit dringenden Computing-Anforderungen für große Mengen an Zusatzkapazitäten.

EC2 Spot ist laut Amazon eng mit anderen AWS-Services wie EMR, Auto Scaling, Elastic Container Service (ECS), CloudFormation, Data Pipeline und AWS Batch integriert. Nutzer haben die freie Wahl, wie sie ihre Anwendungen auf Spot-Instances ausführen und verwalten möchten.

Bildergalerie

EC2-Abos: der Spot-Marktberater

Für die Dauer der Ausführung der Instances zahlen Nutzer bei Spot-Instances den bei der Anforderung angegebenen Stundensatz. Die Spot-Instance-Preise werden von Amazon EC2 festgelegt und ändern sich schrittweise entsprechend der langfristigen Trends beim Angebot von und der Nachfrage nach Spot-Instance-Kapazitäten. Eine Tabelle gibt die Spot-Instance-Preise für die einzelnen Regionen und die Instance-Typen an (die Aktualisierung alle 5 Minuten). Eine Versteigerung findet also nicht statt.

Mithilfe des Spot Instance Advisor können Nutzer die aktuellen Spot-Preise mit den On-Demand-Standardpreisen vergleichen. Spot-Instances können auch für eine vorab definierte Dauer – in Stundenschritten bis zu einer Laufzeit von sechs Stunden – mit einem Rabatt von 30 bis 50 Prozent im Vergleich zum On-Demand-Preis ausgeführt werden. Weitere Informationen zur Preisgestaltung finden Nutzer auf Seiten mit der AWS-Preisübersicht und auf der Seite „Amazon EC2–Preise“.

Der digitale Berater hilft, den Pool mit der geringsten Möglichkeit einer Unterbrechung zu ermitteln, und gibt die Einsparungen aus, die Nutzer mit On-Demand-Tarifen erzielen können. Nutzer sollten die Unterbrechungstoleranz ihrer Anwendung und ihre Kosteneinsparungsziele gewichten, wenn sie eine Spot-Instance auswählen. Je seltener die Anwendungen unterbrochen werden, desto länger laufen die Spot-Instances wahrscheinlich.

Die durchschnittliche Frequenz der Unterbrechung über alle Regionen und Instance-Typen hinweg, die AWS angibt, liegt bei unter 5 Prozent. Für manche kritischen Workloads ist das nicht genug. AWS empfiehlt daher, mit Instance-Typen zu beginnen, die seltener unterbrochen werden, und weitere Instance-Typen hinzuzufügen, um Flexibilität und Fehlertoleranz der Anwendung verbessern.

Spot-Flotten

AWS empfiehlt in diesem Zusammenhang die Nutzung sogenannter Spot-Flotten, mit denen Nutzer die Verwaltung von Spot-Instances automatisieren können. Eine Spot-Flotte ist eine Menge oder Flotte von Spot Instances, optional auch von On-Demand Instances. Zwecks Automation sagt der Nutzer der Spot-Flotte lediglich, wie viel Kapazität benötigt wird, und die Flotte kümmert sich um den Rest. Wie dieses wichtige Leistungsmerkmal funktioniert, beschreibt ein gesondertes AWS-Dokument im User Guide.

Die Flotte versucht, eine ausreichende Anzahl von Spot Instances und On-Demand Instances zu starten, um die Kapazitäts-Zielvorgabe zu erfüllen. Diese Anforderung ist erfüllt, sobald der Spot-Preis den aktuellen Spot-Preis übersteigt und es noch freie Kapazität gibt. Darüber hinaus versucht die Flotte, seine Zielkapazität beizubehalten, sollten die gebuchten Spot Instances unterbrochen werden. Für letzteres können Spot-Preisänderungen und mangelnde Kapazität verantwortlich sein.

Ein „Spot Instance Pool“ ist eine Menge ungenutzter EC2-Instanzen desselben Typs, desselben Betriebssystems, der gleichen Availability Zone und der Netzwerkplattform (EC2-Classic oder EC2-VPC). Beantragt der Nutzer eine Spot-Flotte, können die Details von der Pool-Definition abweichen. Aber die Spot-Flotte wählt primär diejenigen Spot Instance Pools aus, die zur Erfüllung der Anforderung verwendet werden, gemäß den Startvorgaben und in der Konfiguration der Spot-Flottenanforderung. Die Spot Instances kommen dann aus den selektierten Pools.

Man sieht: Mit den Spot-Instances lassen sich nicht nur die Betriebskosten erheblich senken, sondern auch der Betrieb durch Automation vereinfachen. Je weniger Eingriffe nötig sind, desto fehlerfreier läuft die Spot-Flotte, und desto niedriger sind die Personalkosten. Allerdings sollte jeder Nutzer darauf achten, welcher EC2-Instance-Typ für seinen Bedarf der richtige ist. Umgekehrt könnte ein Nutzer bestrebt sein, seine Cloud-Landschaft dahingehend zu optimieren, dass er möglich viele Workloads auf preiswerte EC2-Spot-Instanzen verlegt.

(ID:45411323)