Kostenüberwachung in der AWS-Cloud: Erste Schritte im Billing-Dashboard

Bei den ersten Schritten in der AWS-Cloud sollte man dringend auf die Kosten achten. Ein Überblick über Funktionen und Tools zur Kostenbegrenzung.

Wer sich der AWS-Cloud anvertraut, muss nicht nur die voraussichtlich entstehenden Kosten abschätzen können, sondern auch die tatsächlich entstehenden Kosten überwachen und anhand von Budgets die Notbremse ziehen können. Alle Funktionen dazu stehen im Billing-Dashboard zur Verfügung.

Wer sich mit Architektur, Konzept und Service-Portfolio der AWS-Cloud vertraut gemacht hat, möchte so schnell wie möglich weitere Dienste erkunden und erste Projekte umsetzen. Bevor man sich allerdings mit dem Erstellen von virtuellen Maschinen in der Elastic Compute Cloud (EC2) befassen kann, sollte man sich mit den Grundzügen von Virtual Private Networks (VPC) und Identity and Access Management (IAM) vertraut machen, wie in den ersten Teilen unserer Workshop-Reihe beschrieben.

Die meisten Unternehmen verfolgen beim Erkunden der AWS-Cloud eine ähnliche Strategie und beginnen mit Infrastrukturservices wie virtuellen Maschinen (EC2), Storage (Elastic Block Storage, EBS, Elastic File System, EFS und Simple Storage Service, S3) sowie Datenbankservices wie RDS (Relational Database Service).

Oft dient dazu in den ersten Wochen das in jedem neuen AWS-Konto enthaltene kostenlose Kontingent von 750 Stunden EC2, 750 Stunden RDS und 5 GB S3-Storage innerhalb des ersten Jahres. Da man beim Anlegen eines Kontos immer eine Kreditkarte angeben muss, gilt es allerdings aufzupassen, die angegeben Schwellenwerte nicht zu überschreiten. Außerdem gelten die Freikontingente ja nur für bestimmte Instanz-Typen, Speicherklassen und Datenbankservices, die jeweils am Zusatz Free tier eligible zu erkennen sind.

Hinzu kommen Datentransfergebühren oder Gebühren für zusätzliche Dienstleistungen, die nicht immer auf dem ersten Blick zu erkennen sind, was durchaus im Kalkül von AWS liegt. Man muss sich also nicht unbedingt wundern, wenn die Kreditkarte am Monatesende trotz kostenfreier Services belastet wird.

Best Practice in der AWS-Cloud: Kostenkotrolle zuerst

Ein Vorteil der Cloud ist aber auch, dass der Verbrauch von Ressourcen stets nach Bedarf abgerechnet wird, man also nur zahlt, was man tatsächlich verbraucht (Pay-as you-go-Prinzip). Bestimmender Faktor ist dabei die Granularität. So werden zum Beispiel EC2-Instanzen stundenweise berechnet, so dass der Nutzer bei ungenutzten oder falsch berechneten Ressourcen durchaus schnell reagieren kann, um weitere Kosten zu vermeiden.

Unverzichtbar sind dazu das Billing-Dashboard und ergänzenden Tools und Services wie etwa der AWS Cost Calculator, der AWS TCO-Calculator oder der AWS Trusted Advisor.  Diese und andere Ressourcen zur Kostenoptimierung finden sich im AWS Cloud Economics Center.

Bei der Gelegenheit empfiehlt es sich auch, jede in AWS verwendete Ressource im Hinblick auf Abrechnung und Kostenüberwachung zu „taggen“. Da sich jeder Ressource beliebig viele Tags zuordnen lassen, sollte man in jedem Fall auch Tags dabei haben, die die entsprechende Ressource Projekten oder Mandanten zuordnen und auf die später im Kosten-Explorer oder beim Erstellen von Berichten zurückgegriffen werden kann.

Kosten im Blick mit dem Trusted Advisor

Relativ schnell und einfach zu verwenden ist zum Beispiel der Trusted Advisor. Hierbei handelt es sich um einen verwalteten Dienst, der die AWS-Umgebung des Kunden systematisch nach den Kategorien Cost Optimization, Performance, Security oder Fault Tolerance analysiert und entsprechende Empfehlungen ausspricht.

Allerdings sind nur wenige davon kostenlos zu haben. Im Bereich der Kostenoptimierung erschließt daher nur ein Klick auf Update Your support plan to unlock all trusted advisor recommendations einen entsprechenden Nutzen. Einige kostenfreie Optimierungsempfehlungen bietet der Bereich Security mit dem Tipp, von der Möglichkeit der Nutzung von IAM Gebrauch zu machen. Empfehlungen wie diese lassen sich per Klick in Form eines Excel-Sheets herunterladen.

 Empfehlungen zur Kostenoptimierung im Trusted Advisor.
Abbildung 1: Empfehlungen zur Kostenoptimierung im Trusted Advisor.

Root-Account und IAM-Admin-User anlegen

Tatsächlich gehört IAM zu den wichtigsten Services in AWS. Zu den ersten Handlungen nach dem Eröffnen eines AWS-Kontos sollte daher gehören, einen IAM-Power-User mit Administrator-Rechten anzulegen und fortan nur noch diesen zu verwenden, um Services in AWS zu nutzen. Zu diesem Zweck bietet es sich an, eine Gruppe AWS-Admins in IAM anzulegen, mit dieser die IAM-Policy AdministratorAccess zu verknüpfen und ihr anschließend den neu anzulegenden Administrator-User mit dem Access-Type AWS Management Console access zuzuordnen.

Dieser kann sich dann statt mit dem AWS-Root-Konto unter dem angegebenen Console login link https://<IAM-User-ID>.signin.aws.amazon.com/console anmelden. Dies hat den Vorteil, dass das mit einem Passwort (alternativ stehen Multifaktor-Authentifizierung oder X 509-Zertifikate zur Verfügung) geschützte Root-Konto ausschließlich für Abrechnungszwecke verwendet werden kann, während der IAM-Admin-User Ausgangspunkt für den täglichen Umgang mit AWS ist. Etwa für das Erstellen weiterer IAM-User oder IAM-Rollen. Der Clou dabei ist, dass dieser IAM-Admin-User zwar volle administrative Rechte auf Ressourcen, aber keinen Zugriff auf Abrechnungsfunktionen hat, da diese für einen IAM-User ausgegraut  sind.

 Zuweisung der IAM-Policy AdministratorAccess.
Abbildung 2: Zuweisung der IAM-Policy AdministratorAccess.

Billing-Alert zur Kostenoptimierung in AWS einrichten

Ist das geschehen, meldet man sich wieder mit dem Root-Konto an, um im Billing-Dashboard einen Alarm für das Überschreiten eines monatlich festzulegenden Betrags festzulegen. Das Billing-Dashboard findet sich oben rechts im Menü des angemeldeten Root-Nutzers, genau wie das Security-Dashboard.

Das Billing-Dashboard steht übrigens auf Wunsch komplett in deutscher Übersetzung bereit, wozu der Admin lediglich links unten im Footer der Seite auf Deutsch umstellen muss. Den zahlreichen interessanten Features des Billing-Dashboards wie Kosten Explorer, Budgets, Berichte oder Konsolidierte Fakturierung wenden wir uns im nächsten Teil dieser Reihe zu.

Für diesmal geht es nur darum, AWS zu veranlassen, dass Abrechnungsdaten überhaupt generiert und an den Monitoring-Dienst CloudWatch ausgeliefert werden. Hierzu aktiviert man im Menü Präferenzen das Häkchen bei Fakturierungsbenachrichtigungen erhalten.

Fakturierungsbenachrichtigungen in AWS aktivieren.
Abbildung 3: Fakturierungsbenachrichtigungen in AWS aktivieren.

Ist das erledigt, kann man das Billing-Dashboard verlassen, links oben im Menü Services zum Bereich Management Tools wechseln und dort auf CloudWatch klicken. CloudWatch überwacht nicht nur Metriken von Services, sondern dient auch zum Einrichten und Überwachen von Alarmen oder dem Aggregieren von Log-Dateien. Anschließend navigiert man in den Bereich Alarm / Billing. Dies funktioniert allerdings nur in der Region US East (N. Virginia), weil bei AWS dort sämtliche Abrechnungsinformationen zusammenlaufen. Hier genügt dann ein Klick auf Create Alarm, um eine entsprechende Benachrichtigung einzurichten.

Im Beispiel verwenden wir die Metrik Total Estimate Charge in USD bei einem Trigger Whenever charges for und is = 5 US$. Möchten man tatsächlich innerhalb der kostenfreien Schranke bleiben, kann man den Wert hier auch auf null US-Dollar setzen.

Festlegen eines Kostenalarms für AWS.
Abbildung 4: Festlegen eines Kostenalarms für AWS.

Als auszulösende Aktion haben wir im Bereich Actions des Dialoges Create/Modify Alarm lediglich das Versenden einer E-Mail an die angegebene Administrator-Adresse hinterlegt. Optional lassen sich mit Cloud-Watch-Alarmen auch Autoscaling-Aktionen oder EC2-Aktionen verknüpfen.

E-Mail-Benachrichtigung für Kostenalarme einrichten.
Abbildung 5: E-Mail-Benachrichtigung für Kostenalarme einrichten.

Folgen Sie SearchDataCenter.de auch auf Twitter, Google+, Xing und Facebook!

Artikel wurde zuletzt im Juni 2017 aktualisiert

Pro+

Premium-Inhalte

Weitere Pro+ Premium-Inhalte und andere Mitglieder-Angebote, finden Sie hier.

Erfahren Sie mehr über Public-Cloud-Infrastruktur

Diskussion starten

Schicken Sie mir eine Nachricht bei Kommentaren anderer Mitglieder.

Mit dem Absenden dieser Daten erklären Sie sich bereit, E-Mails von TechTarget und seinen Partnern zu erhalten. Wenn Ihr Wohnsitz außerhalb der Vereinigten Staaten ist, geben Sie uns hiermit Ihre Erlaubnis, Ihre persönlichen Daten zu übertragen und in den Vereinigten Staaten zu verarbeiten. Datenschutz

Bitte erstellen Sie einen Usernamen, um einen Kommentar abzugeben.

- GOOGLE-ANZEIGEN

SearchSecurity.de

SearchStorage.de

SearchNetworking.de

SearchEnterpriseSoftware.de

Close