BrunoWeltmann - stock.adobe.com
AWS-Kostenmanagement-Tools erleichtern Ausgabenüberwachung
AWS bietet mehrere Tools, die Kunden bei der Kostenbewertung und -verwaltung unterstützen. Manchmal braucht es aber auch Tools von Drittanbietern.
Amazon Web Services (AWS) hat sich zum weltweit größten und dominanten Public-Cloud-Anbieter entwickelt. Der Erfolg des US-Unternehmens hat mehrere Gründe: unermüdliche Innovationen und neue Services, die das Unternehmen permanent anbietet, eine sichere, global verfügbare Infrastruktur und die Flexibilität, Ressourcen und Managed Services kurzfristig bereitzustellen.
Der Wermutstropfen sind die Preise. AWS-Dienstleistungen haben nicht den Ruf, billig zu sein. Das verbrauchsorientierte Abrechnungsmodell von AWS ist zwar im Allgemeinen effizient – es kann aber auch zu enormer Verschwendung führen. Abgesehen von einigen neuen Services wie Lambda, berechnet AWS keine Gebühren für die operative Nutzung, sondern für den Ressourcenverbrauch. Die Rechnung für eine einzelne EC2-Instanz ist identisch, egal ob sie mit 95 Prozent Auslastung oder fünf Prozent läuft.
Im Zuge der Entwicklung der Cloud-Nutzung von Nischenanwendungen hin zu breiten Implementierungen entdecken die meisten Unternehmen die Relevanz des AWS-Kostenmanagements – in der Regel nach Erhalt ihrer ersten monatlichen Rechnung.
Wie können Kosten außer Kontrolle geraten?
Wer sich noch an die Anfänge der Mobilfunks erinnert, mit der damals üblichen Abrechnung für jede SMS oder jede Gesprächsminute, weiß, dass ein nutzungsabhängiges Preismodell nicht immer billiger ist als ein unbegrenzter Tarif. Das Nutzungsmodell von AWS ähnelt den Anfängen im Mobilfunk, da Ressourcen auf diese Weise einfach bereitzustellen sind. Allerdings kann der Kunde leicht vergessen, die bestellten Ressourcen zurückzuschrauben, wenn er sie nicht mehr benötigt.
Grundsätzlich sind die beiden größten Quellen für mögliche AWS-Kostenüberschreitungen verknüpft:
- Nicht bediente, unbeaufsichtigte Instanzen, die im Leerlauf oder mit geringer Arbeitslast laufen, während der Kostenzähler weiterläuft.
- Ressourcenausweitung, die zu einer wachsenden Anzahl von Instanzen führt, welche die von ihnen ursprünglich unterstützten Anwendungen überdauern.
Zusätzlich verschlimmern andere Faktoren die Verschwendung. Zu viel bereitgestellte Ressourcen können zu groß und schnell zu teuer für den jeweiligen Auftrag werden. Außerdem kann wenig oder gar keine Governance bei mehreren Konten zu Ressourcenredundanz und unverantwortlicher Nutzung führen.
Es ist auch wichtig, die relativ komplexen Preis- und Rabattmodelle für die virtuelle AWS-Infrastruktur zu verstehen. Zum Beispiel hat EC2 verschiedene Preispläne:
- On-Demand Instances ist das bekannteste Modell und stellt Ressourcen nach Bedarf bereit;
- Spot Instances bieten stark reduzierte freie Kapazitäten, sind aber nicht immer verfügbar;
- Reserved Instances (RI) offerieren drei verschiedene Zahlungspläne, können aber leicht verwirrend werden; und
- Dedicated Hosts sind komplette IT-Systeme, mit denen ein Kunde die gesamte Kapazität eines physischen Systems anmietet.
Die komplizierten und uneinheitlichen Preismodelle von AWS und seinen Wettbewerbern machen nicht nur den Vergleich nahezu unmöglich. Sie verlangen auch, dass die Kunden individuelle Auslastungsmerkmale mit dem entsprechenden Preisplan abgleichen.
Und das kann sich lohnen. So hat Dropbox, ein Unternehmen, das auf AWS und einer enormen Nutzung von Cloud-Ressourcen aufbaut, in zwei Jahren fast 75 Millionen Dollar eingespart, als es sein Speichersystem von Amazon S3 auf eine interne, maßgeschneiderte Infrastruktur umstellte. Obwohl die wenigsten Unternehmen weder wie Dropbox monatliche AWS-Rechnungen in Millionenhöhe noch den Kapazitätsbedarf des Speichergiganten haben, zeigt dieses Beispiel eindrücklich, wie eine blinde Nutzung von AWS zu massiven Mehrausgaben führen kann.
AWS-Tools für das Kostenmanagement
Neben detaillierten Kosten- und Nutzungsberichten, die granulare Informationen auf Protokolldateiebene liefern, bietet AWS sechs Tools, die Kunden bei der Kostenbewertung und -verwaltung unterstützen:
Das Billing Dashboard liefert einen zusammenfassenden grafischen Überblick. Dieser ist in der AWS Management Console verfügbar und enthält Diagramme mit einer Übersicht über die Ausgaben, relativen monatlichen Ausgaben nach Service und tatsächlichen monatlichen Ausgaben nach Service – beide sortiert nach Nutzung. Die bereitgestellten Daten sind Zusammenfassungen von historischen Aufzeichnungen und stellen keine Prognose für zukünftige Ausgaben dar.
AWS Cost Explorer ist ein weiteres grafisches Tool, das die Ausgaben analysiert. Mit dem Cost Explorer können Kunden die Ausgaben der letzten 13 Monate einsehen und die nächsten drei Monate statistisch prognostizieren. Basierend auf den Nutzungsmustern empfiehlt der Cost Explorer On-Demand Instances oder Reserved Instances (RI), einschließlich der Instanzgrößen. Das Tool erlaubt auch eine größere Kontrolle der Visualisierungen, um Muster der Dienste über verschiedene Zeiträume zu veranschaulichen. Diese Visualisierungen können eine von drei Berichtsarten verwenden: Kosten und Nutzung, RI-Auslastung und RI-Berichterstattung. Benutzer können den Cost Explorer über die AWS Cost Management APIs abfragen und automatisieren.
Reserved Instance Reporting besteht aus einer Reihe von Cost-Explorer-Berichten, die Details über die Auslastung von RI enthalten, wobei nicht ausgelastete Instanzen angezeigt werden. Diese Reports enthalten auch Details zur RI-Berichterstattung und zeigen die Anzahl der Instanzstunden für RI-fähige Dienste wie EC2, Redshift, Relational Database Service (RDS) und ElastiCache an. Die Services ermöglichen es Kunden, die RI-Auslastungs- oder Deckungsziele so anzupassen, dass sie Warnmeldungen auslösen, wenn die Nutzung unter diese Instanzstunden fällt. Der Empfehlungsalgorithmus prognostiziert nicht die zukünftige Nutzung, sondern nutzt von einem einzigen Konto die Daten der letzten sieben, 30 oder 60 Tage und berechnet damit dann die prozentualen Kosteneinsparungen und den jährlichen Gesamtbetrag der Nutzung von Reserved Instances anstelle von On-Demand Instances. Um die Empfehlungen anzupassen, können Benutzer die RI-Parameter ändern.
AWS Budgets ermöglicht es Kunden, kosten- oder nutzungsbezogene Ziele nach Monat, Quartal oder Jahr festzulegen. Benutzer können Budgets filtern – nach Servicetyp, verknüpftem Konto, Tag, Instanztyp (On-Demand oder RI), Verfügbarkeitszone oder API-Operation wie zum Beispiel S3 Bucket Creation. Das AWS-Budgetierungs-Tool unterstützt bis zu 20.000 Budgets pro Konto. Damit lassen sich mehrere Ziele für Interessengruppen festlegen, die die Ausgaben auf verschiedenen Ebenen des Unternehmens verfolgen können. Wenn die Ausgaben die gesetzten Ziele überschreiten, kann AWS Budgets eine E-Mail oder eine SNS-Nachricht (Amazon Simple Notification Service) senden, um eine manuelle oder automatisierte Korrektur auszulösen. Zum Beispiel kann SNS eine Lambda-Funktion auslösen, die zur Kostenreduzierung automatisch die Anzahl der EC2-Instanzen in einer Auto-Scaling-Gruppe reduziert.
AWS Trusted Advisor scannt automatisch ein AWS-Konto und gibt Empfehlungen zur Verbesserung von Leistung, Sicherheit, Zuverlässigkeit und Fehlertoleranz sowie zur Kostensenkung. Während AWS ein grundlegendes Set an kostenlosen Sicherheitschecks zur Verfügung stellt, erfordert die gesamte Suite einen Business- oder Enterprise-Support-Plan. Diese umfassen auch Kostenprüfungen. AWS Trusted Advisor gibt Empfehlungen für die Kostenoptimierung zu folgenden Parametern:
- EC2-Umstellung von On-Demand zu partiellem Upfront RI;
- RI-Mietverträge, die kürzlich abgelaufen sind oder in den nächsten 30 Tagen abgeschlossen werden;
- EC2-Instanzen mit geringer Auslastung von weniger als zehn Prozent;
- Leerlauf Load Balancer;
- ungenutzte Elastic Block Store Volumina oder Redshift Cluster;
- ungenutzte RDS-Instanzen; und
- nicht zugeordnete elastische IP-Adressen, die nicht mit einer EC2-Instanz verknüpft sind.
Cost Management APIs ermöglichen es Benutzern, programmgesteuert auf Kosten-, Nutzungs-, Preis- und Budgetdaten zuzugreifen, die in externen Anwendungen oder Tabellenkalkulationen verwendet werden können. Diese APIs erlauben es AWS-Kostenmanagementanwendungen von Drittanbietern, auf Daten zuzugreifen und detailliertere Berichte und Empfehlungen zu erstellen.
Tools von Drittanbietern
Bevor Unternehmen anderswo Geld für das AWS-Kostenmanagement ausgeben, sollten sie mit AWS-nativen Tools beginnen. Sollten sich die AWS-Tools aber als unzureichend für die Kostenschätzung erweisen, können AWS-Kunden auf ein Drittanbieterprodukt zurückgreifen.
Produkte von Drittanbietern können vor allem Lücken in AWS-nativen Tools schließen. So ein Fall kann beispielsweise bei Unternehmen eintreten, die fortschrittliche Cloud-Umgebungen wie eine Multi-Cloud-Architektur betreiben. AWS hat das Konzept der hybriden oder Multi-Cloud historisch gesehen kaum beachtet – jedenfalls bis vor kurzem. Da Multi-Cloud-Bereitstellungen aber immer beliebter werden, benötigen Unternehmen Kostenmanagement-Tools, die plattformübergreifend arbeiten können, im Gegensatz zu den nur nativen AWS-Tools.
Darüber hinaus bieten die AWS-Tools zwar einen grundlegenden Satz von Berichten, Diagrammen und Prognoseverfahren, doch es gibt zweifellos noch Verbesserungsmöglichkeiten. So kann zum Beispiel selbst ein automatisches Tool wie Trusted Advisor nicht eine ganze Flotte von EC2-Instanzen, Storage Volumes und Workloads analysieren, um etwa optimale Größen- und Workload-Platzierungsstrategien vorzuschlagen.
AWS kann auch seine Prognosemethoden verbessern, die lediglich einfache lineare Extrapolationen vergangener Trends verwenden. Angebracht wären inzwischen leistungsfähige Machine-Learning-Algorithmen, die automatisch normale Nutzungsmuster erstellen, zeitliche und langfristige Trends erkennen und genauere Nutzungsvorhersagen machen können. Außerdem bieten die AWS-Visualisierungen und -Dashboards nur recht eingeschränkte Anpassungsmöglichkeiten, insbesondere für andere Dienste als EC2.
AWS kann man zu Gute halten, dass es hier selbst vorgesorgt hat: Über seine Kostenmanagement-APIs hat AWS die Voraussetzungen dafür geschaffen, dass Software und Services von Drittanbietern auf Kosten-, Nutzungs- und Preisdaten zugreifen können. Diese AWS-Kostenmanagement-Tools von Drittanbietern vereinfachen im Allgemeinen den Konfigurationsprozess. Allerdings wird es komplizierter, wenn man die Tools verwenden möchte, um Daten aus mehreren Umgebungen einzubeziehen. In dieser Situation ist der Integrationsgrad möglicherweise nicht so stark, und On-Premises-Systeme erfordern sogar zusätzliche Software oder Plug-ins.
Die Produkte von Drittanbietern unterstützen auch nicht die neuesten Amazon Cloud Services, wie zum Beispiel Lambda, Aurora oder die AWS KI-Produkte. Add-on-Produkte haben außerdem zusätzliche Kosten zur Folge – nicht nur für die Lizenzierung, sondern auch für Schulungen und Verwaltungsausgaben.
Folgen Sie SearchDataCenter.de auch auf Twitter, Google+, Xing und Facebook!