Kosten und Kaufoptionen AWS-Einsteigerworkshop - Teil 3

Jeder der rund 140 Dienste in AWS verfügt über eine eigene Kostenstruktur. Anwender können daher bei einer komplexen Cloud-Infrastruktur schnell den Überblick über entstehende Kosten verlieren. Amazon bietet daher mehrere Tools, die über anfallende Kosten vorab oder während der Nutzung informieren.

AWS erweitert seine in Regionen, Availability-Zonen, Datacenter, Edge Locations und lokale Edge-Caches aufgeteilte globale Infrastruktur stetig und passt sie der Nachfrage­situation an, bzw. ist dieser idealerweise immer voraus.

Amazon profitiert von Skaleneffekten

AWS stellt daher heute jeden Tag so viel neue Server-Kapazität bereit, wie amazon.com im Geschäftsjahr 2003/2004 insgesamt nutzte (der Online-Händler verzeichnete damals 7 Mrd. USD Jahresumsatz).

Zuletzt wies Amazon.com 7 Mrd. USD Gewinn aus und gibt AWS-Skaleneffekte bei Einkauf und Produktion seiner Commodity-Hardware (AWS installiert darauf übrigens den Xen-Hypervisor) auch an Kunden weiter.

Wer das nicht glaubt, googelt nach „AWS-Preisreduzierungen“ oder schaut in die erwähnten AWS-Blogs unter der Kategorie Price Reduction nach. Hier ein Beispiel für SQL-Server Standard-Edition on EC2.

Einen Überblick über AWS-Preise erreicht man ausgehend von der Kosten-Portal-Seite mit einem Klick auf Service-Preise. Das Portal leitet aber bei Bedarf auch weiter zur Portalseite für Kosten-Optimierung  und zu weiteren Ressourcen für den wirtschaftlichen Betrieb von AWS, welche diverse Whitepapers („How AWS Pricing Works“, „Introduction to Cloud Economics“, „Busiss Value of AWS“) oder Berichte von Analysten umfassen.

Beispiel AWS S3

Schaut man sich exemplarisch die Preise für den Speicherdienst S3 an, den ältesten AWS-Service, dann wird schnell klar, dass nicht nur die Preis- und Abrechnungs­modelle bei jedem Dienst variieren. Hier unter­scheiden sich nicht nur die Plattform- deutlich von den Infrastruktur-Services, sondern auch pro Dienst sind verschiedene Kosten­faktoren zu berücksichtigen.

Abgerechnet wird aber immer nach Verbrauch. Bei S3 sind das zum Beispiel:

  1. Speicherpreis für das S3-Bucket/Monat, abhängig von Region und Speicherklasse, gestaffelt nach Erste 50 TBNächste 450 TB und mehr als 500 TB.
  2. Anforderungspreise über die S3-REST-API gestaffelt nach PUT-, COPY-, POST- und LIST-Anforderungen oder GET, SELECT-Anforderungen in Abhängigkeit von Region und S3-Speicherklasse.
  3. S3-Storage-Management-Preise gestaffelt  nach Inventory, Analytics und Object-Tagging, ebenfalls abhängig von Region und Speicherklasse.
  4. Datenübertragung in die Cloud, bzw. das S3-Bucket (immer kostenlos) und aus der Cloud, gestaffelt nach 1GB/Monatnächste 9,9999 TB/Monatnächste 40 TB/Monatnächste 100 TB/Monat und Mehr als 150 TB/Monat.
  5. Hinzu kommen gesonderte Datenüber­tragungs­preise, wenn ein Benutzer die Objekte in einem S3-Bucket nicht über die S3-API, sondern über das AWS-eigene Content-Delivery-Netzwerk AWS CloudFront abruft.

Das kleine Kosten­struktur­beispiel soll nur illustrieren, dass  allein die Kosten­berechnung und Abschätzung einigen Aufwand verursacht, zumal S3 ja auch nur ein Dienst unter vielen ist, die in ein typisches AWS-Deployment (fehlertolerante Webseite, DR-Multi-Region-Failover, HPC) involviert sind.

Zunehmend intrans­parenter wird die Angelegenheit, je mehr Plattform-Services eingebunden sind, auch wenn AWS immer verlässlich nach Verbrauch abrechnet, also nach dem Pay-as-you-go-Prinzip.

AWS Cost Calculator

Provisioniert der Nutzer komplexe Anwendungs­szenarien, die sich aus zahlreichen Diensten zusammen­setzen, dann wird eine Kosten­abschätzung zunehmend schwierig, vom Kosten-Management ganz abgesehen.

Abhilfe schafft hierbei unter anderem der AWS Cost Calculator. Wie man am S3-Endpunkt in der URL des Services erkennt, ist das Angebot selbst Server-los auf Basis einer statische Website auf S3 gehostet und kann auch genutzt werden, ohne ein AWS-Konto zu haben oder in AWS angemeldet zu sein.

Der AWS Cost-Calculator erlaubt eine recht gute Vorabeinschätzung der zu erwartenden Kosten für bestimmte Szenarien.

Das Tool verwendet man, indem man die vom Cost Calculator auf der rechten Seite bereit­gestellten Customer-Samples analysiert, wie etwa die „komplett kostenlose Marketing Website“, die serverless ohne EC2-Instanzen auskommt.

Da die Kosten von Region zu Region variieren, wählt man links oben zunähst die gewünschte Region aus und wechselt dann zum Reiter Voraussichtliche Monatsrechnung. Das Ergebnis lässt sich mit der gleichnamigen Schaltfläche auch nach CSV exportieren. Die Samples reichen von der erwähnten kostenlosen Marketing Website über Free Website on AWS bis zu Large Application.

Wer bereits ein Projekt vor Augen hat, gewinnt konkretere Einsichten, wenn er mit einem Klick auf Reset all von Grund auf startet und dann schön der Reihe nach mit Hilfe der links aufgeführten Services sein Beispiel-Szenario aufbaut.

In der Regel beginnt man mit EC2-Instanzen (virtuellen Maschinen), also Amazon EC2. Im Arbeitsbereich rechts davon gewinnt der Nutzer dann recht schnell einen Überblick über die mit EC2-Instanzen verknüpften Kosten.

Neben den Instanzen an sich sind das beispielsweise EBS-Volumes, elastische IP-Adressen, Datenüber­tragungs­kosten oder ein Load Balancer. Der Cost Calculator legt viel schneller offen, was der gewünschte Instanz-Typ kostet und welche Rabatte sich durch die Art des Kaufs (On Demand, Reserved Instances) und das Nutzungsprofil (100 %, 50 %) ergeben, als die zugehörige EC2-Produkseite.

Kosten für EC2-Instanzen berechnen

Hierzu fügt man mit zum Beispiel im Abschnitt Berechnen: Amazon EC2-Instances mit dem grünen Plus-Symbol eine neue Zeile hinzu, gibt eine Beschreibung ein, wählt die  Anzahl der Instanzen, das Nutzungs­profil und dann in der letzten Spalte Fakturierungsoption, die Kaufart. Normalerweise wird jede Ressource in AWS On Demand gekauft und berechnet.

EC2-Instanzen, also virtuelle Maschinen als Grundlage nahezu aller weiterer AWS-Services, haben die Besonderheit, dass man sie nicht nur On Demand, sondern auch im Voraus (Reserved Instances), geplant in Voraus (Scheduled RI), Dedidziert (Dedizierte Instanzen oder Dedizierte Server) und auch zu einem deutlich rabattierten Preis am Spot-Markt erwerben kann. Dieser ergibt sich durch Angebot und Nachfrage, wobei man dort explizit ein Gebot abgeben muss.

Die Preise für EC2 z. b. hängen von der Region, vom Instanztyp und der Kauf-Option ab. Wer im Voraus zahlt erhält erhebliche Rabatte.

Klickt man in das vorletzte Feld Typ, dann erhält man einen unmittel­baren Preis­vergleich der einzelnen Instanz-Typen und Betriebs­systeme. Hierbei offenbart sich auch eine enorme Preisbandbreite.

Sie reicht von 0,008 USD pro Stunde Reserved (60 % Einsparung gegenüber On Demand bei 100 % Nutzung) für eine t2micro-Linux-Instanz bis zu 31,24 USD pro Stunde für einen Windows Enterprise SQL-Server auf Basis einer h1.16xlarge-Instanz mit 64 virtuellen Kernen, 256 GB RAM und 10Gb/s Netzwerk-Anbindung.

Der TCO-Calculator erlaubt dagegen eine Vorabeinschätzung der durch die Migration von Infrastruktur in die Cloud zu erwartenden Einsparungen im Vergleich mit einen On-Premise-Datacenter.

Der AWS TCO-Calculator hingegen erlaubt Unternehmen vor der Migration in die Cloud einen Vergleich zwischen einer On Premise bereit gestellten Infrastruktur (frei wählbare Anzahl physischer oder virtuelle Server, Datenbanken und Storage) mit einem vergleichbaren Cloud-Setup in AWS.

Kostenkontrolle

Neben den genannten Tools stellt AWS noch viele andere Dienste und Werkzeuge zur Kosten­kontrolle, Kosten­analyse und für das Kosten-Management zur Verfügung, wie etwa der schon erwähnte Kosten-Explorer im Billing-Dashboard.

Das AWS-Biiling Dashboard erlaubt eine präzise Kosten-Controller durch eine Vielzahl von Reports und Analysen.

Dieser liefert auf Knopfdruck detaillierte Berichte über die im gewählten Zeitraum erfolgte AWS-Ressourcen-Nutzung, die sich auch als CSV exportieren lassen. Man kann wahlweise vorgefertigte Berichte wie etwa

  • Monthly costs by service
  • Monthly costs by linked account
  • Monthly EC2 running hours costs and usage
  • Daily costs, AWS Marketplace

und eine Reihe weiterer Vorlagen verwenden oder mit New report selbst Berichte erstellen.

Auch der Dienst „Trusted Advisor“ kann bei der Kostenkontrolle helfen, indem er (kostenpflichtig) prüft, ob der Nutzer seine AWS-Ressourcen Kosten-optimal betreibt.

Es gibt aber auch verwaltete Dienste in AWS, die sich zur Kosten­optimierung eignen, wie der Trusted Advisor. Das Online-Analyse und Optimierungs­tool überprüft die Ressourcen im eigenen Konto nach Verbesserungs­möglichkeiten in den Bereichen Cost Optimization, Performance, Security, Fault Tolerance und Service-Limits, ist aber leider kostenpflichtig.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

This site uses Akismet to reduce spam. Learn how your comment data is processed.