Auswählen des besten Preismodells
Workload-Kostenmodellierung durchführen: Berücksichtigen Sie die Anforderungen der Workload-Komponenten und verstehen Sie die potenziellen Preismodelle. Definieren Sie die Verfügbarkeitsanforderung der Komponente. Stellen Sie fest, ob mehrere unabhängige Ressourcen vorhanden sind, die die Funktion in der Workload ausführen, und welche Workload-Anforderungen im Laufe der Zeit gelten. Vergleichen Sie die Kosten der Ressourcen unter Verwendung des standardmäßigen On-Demand-Preismodells und anderer anwendbarer Modelle. Beziehen Sie potenzielle Änderungen in Ressourcen oder Workload-Komponenten in Ihre Überlegungen ein.
Regelmäßige Analyse auf Kontoebene durchführen: Durch die regelmäßige Kostenmodellierung wird sichergestellt, dass Möglichkeiten zur Optimierung über mehrere Workloads hinweg implementiert werden können. Wenn beispielsweise mehrere Workloads On-Demand verwenden, ist das Änderungsrisiko insgesamt niedriger und die Nutzung eines auf fester Kapazität basierenden Rabatts führt zu niedrigeren Gesamtkosten. Es wird empfohlen, Analysen in regelmäßigen Zyklen von zwei Wochen bis zu einem Monat durchzuführen. Mit dieser Analyse können Sie kleine Anpassungskäufe tätigen, sodass sich die Abdeckung Ihrer Preismodelle mit Ihren sich ändernden Workloads und ihren Komponenten weiter entwickelt.
Verwenden Sie das AWS Cost Explorer
Um Möglichkeiten für Spot-Workloads zu finden, verwenden Sie eine stündliche Ansicht Ihrer Gesamtnutzung und suchen Sie nach regelmäßigen Zeiträumen mit sich ändernder Nutzung oder Elastizität.
Preismodelle: AWS verfügt über mehrere Preismodelle
-
On-Demand Instances
-
Spot Instances
-
An feste Kapazität gebundene Rabatte – Savings Plans
-
An feste Kapazität gebundene Rabatte – Reserved Instances/Kapazität
-
Geografische Auswahl
-
Verträge mit Dritten und Preise
On-Demand-Instances: Dies ist das standardmäßige Modell mit nutzungsabhängiger Preisberechnung. Wenn Sie Ressourcen wie EC2-Instances oder Services wie DynamoDB auf Nachfragebasis verwenden, zahlen Sie einen pauschalen Satz, und Sie gehen keine langfristigen Verpflichtungen ein. Sie können die Kapazität Ihrer Ressourcen auf Basis des Bedarfs Ihrer Anwendung erhöhen oder verringern. On-Demand hat einen Stundensatz, kann aber je nach Service in Schritten von 1 Sekunde abgerechnet werden (z. B. Amazon-RDS- oder Linux EC2-Instances). On-Demand wird für Anwendungen mit kurzfristigen Workloads (z. B. einem vier Monate laufenden Projekt) empfohlen, die sich regelmäßig erhöhen, oder unvorhersehbare Workloads, die nicht unterbrochen werden können. On-Demand eignet sich auch für Workloads, wie z. B. Vorproduktionsumgebungen, die ununterbrochene Laufzeiten erfordern, aber nicht lange genug laufen, um einen an feste Kapazität gebundenen Rabatt (Savings Plans oder Reserved Instances) zu erhalten.
Spot Instances: Eine Spot Instance
Spot Instances sind ideal, wenn eine Warteschlange oder ein Puffer vorhanden ist oder wenn mehrere Ressourcen unabhängig voneinander arbeiten, um die Anforderungen zu verarbeiten (z. B. Hadoop-Datenverarbeitung). In der Regel sind diese Workloads fehlertolerant, zustandslos und flexibel, z. B. Stapelverarbeitung, Big Data und Analytik, containerisierte Umgebungen und High Performance Computing (HPC). Nicht kritische Workloads wie Test- und Entwicklungsumgebungen sind auch Kandidaten für Spot.
Spot Instances sind auch in mehrere AWS-Services integriert, wie z. B. Gruppen von Amazon EC2 Auto Scaling, Amazon EMR, Amazon Elastic Container Service (Amazon ECS) und AWS Batch.
Wenn eine Spot Instance zurückgefordert werden muss, sendet Amazon EC2 zwei Minuten zuvor eine Warnmeldung über die Unterbrechung der Spot Instance, die über CloudWatch Events sowie in den Instance-Metadaten zugestellt wird. Während dieser zwei Minuten kann Ihre Anwendung ihren Status speichern, laufende Container entleeren, endgültige Protokolldateien hochladen oder sich selbst aus einem Load Balancer entfernen. Am Ende der zwei Minuten haben Sie die Möglichkeit, die Spot Instance in den Ruhezustand zu setzen, anzuhalten oder zu beenden.
Berücksichtigen Sie die folgenden bewährten Methoden bei der Übernahme von Spot Instances in Ihren Workloads:
-
Bei so vielen Instance-Typen wie möglich flexibel sein: Seien Sie flexibel in Bezug auf Familie und Größe des Instance-Typs, um die Wahrscheinlichkeit zu verbessern, Ihre Zielkapazitätsanforderungen zu erfüllen, möglichst niedrige Kosten zu erzielen und die Auswirkungen von Unterbrechungen zu minimieren.
-
Beim Ort der Workload-Ausführung flexibel sein: Die verfügbare Kapazität kann je nach Availability Zone variieren. Dies verbessert die Wahrscheinlichkeit, Ihre Zielkapazität zu erfüllen, indem Sie mehrere Reservekapazitätspools nutzen, und bietet die geringstmöglichen Kosten.
-
Kontinuität: Entwerfen Sie Ihre Workloads so, dass sie zustandslos und fehlertolerant sind, damit sich etwaige EC2-Kapazitätseinbrüche nicht auf die Verfügbarkeit oder Leistung der Workloads auswirken.
-
Wir empfehlen die Verwendung von Spot Instances in Kombination mit On-Demand- und Savings Plans/Reserved Instances, um die Workload-Kostenoptimierung mit der Leistung zu maximieren.
An feste Kapazität gebundene Rabatte – Savings Plans: AWS bietet eine Reihe von Möglichkeiten, Ihre Kosten zu senken, indem Sie eine bestimmte Menge an Ressourcen reservieren und einen ermäßigten Tarif für Ihre Ressourcen erhalten. Mit einem Savings Plan
Compute Savings Plans
Instance Savings Plans
Es gibt drei Zahlungsoptionen:
-
Keine Vorauszahlung: Es gibt keine Vorauszahlung. Sie zahlen pro Monat einen reduzierten Stundensatz für die Gesamtstundenzahl pro Monat.
-
Teilweise Vorauszahlung: Bietet einen höheren Rabattsatz als „Keine Vorauszahlung“. Ein Teil der Nutzung wird im Voraus beglichen. In der Folge zahlen Sie pro Monat einen reduzierten Stundensatz für die Gesamtstundenzahl pro Monat.
-
Vollständige Vorauszahlung: Die Nutzung für den gesamten Zeitraum ist vorab fällig, und es fallen unabhängig von den genutzten Stunden keine weiteren Kosten für den verbleibenden Zeitraum an.
Sie können eine beliebige Kombination dieser drei Kaufoptionen auf Ihre Workloads anwenden.
Savings Plans gelten zuerst für die Nutzung in dem Konto, in dem sie gekauft wurden, vom höchsten Rabattprozentsatz bis zum niedrigsten. Anschließend gelten sie für die konsolidierte Nutzung aller anderen Konten, vom höchsten Rabattprozentsatz bis zum niedrigsten.
Es wird empfohlen, alle Savings Plans in einem Konto ohne Nutzung oder Ressourcen zu erwerben, z. B. im Verwaltungskonto. Auf diese Weise wird sichergestellt, dass der Savings Plan auf die höchsten Rabatttarife für Ihre gesamte Nutzung angewendet wird, wodurch der Rabattbetrag maximiert wird.
Workloads und Nutzung ändern sich in der Regel im Laufe der Zeit. Es wird empfohlen, im Laufe der Zeit kontinuierlich kleine Mengen an Savings Plans zu erwerben. Auf diese Weise wird sichergestellt, dass Sie einen hohen Grad an Abdeckung aufrechterhalten, um Ihre Rabatte zu maximieren, und Ihre Pläne entsprechen jederzeit Ihren Workload- und Organisationsanforderungen.
Legen Sie keine Zielabdeckung in Ihren Konten fest, da der Rabatt sehr variabel sein kann. Eine niedrige Abdeckung weist nicht notwendigerweise auf hohe potenzielle Einsparungen hin. Sie haben zwar möglicherweise eine geringe Abdeckung in Ihrem Konto, wenn Sie aber mehrere kleine Instances und ein lizenziertes Betriebssystem nutzen, können die potenziellen Einsparungen nur wenige Prozent betragen. Verfolgen und überwachen Sie stattdessen die potenziellen Einsparungen, die im Empfehlungstool für den Savings Plan verfügbar sind. Sehen Sie sich häufig die Empfehlungen für Savings Plans im Cost Explorer an (regelmäßige Analysen durchführen) und kaufen Sie weiterhin feste Kapazität, bis die geschätzten Einsparungen unter dem für die Organisation erforderlichen Rabatt liegen. Verfolgen und überwachen Sie z. B., dass Ihre potenziellen Rabatte unter 20 % bleiben, wenn sie darüber hinausgehen, muss ein Kauf getätigt werden.
Überwachen Sie die Auslastung und Abdeckung, aber nur, um Änderungen zu erkennen. Streben Sie nicht einen bestimmten Auslastungsprozentsatz oder Abdeckungsprozentsatz an, da dies nicht notwendigerweise mit Einsparungen skaliert werden kann. Stellen Sie sicher, dass ein Kauf von Savings Plans zu einer Erhöhung der Abdeckung führt. Wenn die Abdeckung oder die Auslastung verringert werden, stellen Sie sicher, dass sie quantifiziert und bekannt sind. Sie migrieren beispielsweise eine Workload-Ressource zu einem neueren Instance-Typ, wodurch die Auslastung eines vorhandenen Plans reduziert wird, aber der Leistungsvorteil überwiegt die Einsparungsreduzierung.
An feste Kapazität gebundene Rabatte – Reserved Instances/Bindung: Ähnlich wie Savings Plans bieten Reserved Instances
Reserved Instances bieten dieselben Preisoptionen, d. h. keine Vorauszahlung, teilweise Vorauszahlung und vollständige Vorauszahlung, sowie dieselben Laufzeiten von einem oder drei Jahren.
Reserved Instances können in einer Region oder einer bestimmten Availability Zone erworben werden. Sie bieten eine Kapazitätsreservierung, wenn sie in einer Availability Zone gekauft werden.
Amazon EC2 bietet konvertierbare RIs. Aufgrund der erhöhten Flexibilität und reduzierten Betriebskosten sollten Savings Plans jedoch für alle EC2-Instances verwendet werden.
Dieselbe Vorgehensweise und Metriken sollten verwendet werden, um Reserved Instances nachzuverfolgen und zu kaufen. Es wird empfohlen, die Abdeckung von RIs in Ihren Konten nicht zu verfolgen. Außerdem sollten Sie den Auslastungsprozentsatz nicht überwachen oder nachverfolgen, sondern stattdessen den Auslastungsbericht in Cost Explorer anzeigen und die Spalte „Nettoeinsparungen“ in der Tabelle verwenden. Wenn die Nettoeinsparungen deutlich negativ sind, müssen Sie Maßnahmen ergreifen, um die ungenutzte RI zu beheben.
EC2-Flotte: Mit EC2-Flotte
Standortwahl: Bei der Architektur Ihrer Lösungen hat es sich bewährt, Computing-Ressourcen möglichst in der Nähe der Benutzer bereitzustellen, um eine geringere Latenz und stärkere Datensouveränität zu erzielen. Für weltweite Zielgruppen sollten Sie mehrere Standorte verwenden, um diese Anforderungen zu erfüllen. Sie sollten den geografischen Standort auswählen, der Ihre Kosten minimiert.
Im Zentrum der AWS Cloud-Infrastruktur stehen Regionen und Availability Zones. Eine Region ist ein physischer Standort auf der Welt, an dem wir mehrere Availability Zones haben. Availability Zones bestehen aus mindestens einem eigenständigen Rechenzentrum mit redundanten Systemen für die Stromversorgung, Netzwerkressourcen und Konnektivität. Diese Systeme sind in getrennten Einrichtungen untergebracht.
Jede AWS-Region wird im Rahmen der jeweilig gültigen lokalen Marktbedingungen betrieben, und die Ressourcenpreise können von Region zu Region variieren. Wählen Sie eine spezifische Region aus, in der Sie eine Komponente oder Ihre gesamte Lösung ausführen möchten, sodass Sie weltweit einen Betrieb zu den geringstmöglichen Kosten gewährleisten. Sie können den einfachen AWS-Monatsrechner verwenden, um die Kosten Ihrer Workloads in verschiedenen Regionen zu schätzen.
Verträge mit Dritten und Preise: Wenn Sie Drittanbieterlösungen oder -services in der Cloud nutzen, ist es wichtig, dass die Preisstrukturen an den Ergebnissen der Kostenoptimierung ausgerichtet sind. Preise sollten mit den Ergebnissen und dem Wert skaliert werden, den sie bieten. Ein Beispiel hierfür ist Software, die einen Prozentsatz der Einsparungen in Anspruch nimmt, je mehr Sie sparen (Ergebnis), desto mehr Gebühren fallen an. Vereinbarungen, die mit Ihrer Rechnung skaliert werden, sind in der Regel nicht auf die Kostenoptimierung ausgerichtet, es sei denn, sie liefern Ergebnisse für jeden Teil Ihrer spezifischen Rechnung. Beispiel: Eine Lösung, die Empfehlungen für Amazon EC2 bereitstellt und einen Prozentsatz Ihrer gesamten Rechnung berechnet, wird teurer, wenn Sie andere Services nutzen, für die sie keinen Vorteil bietet. Ein weiteres Beispiel ist ein verwalteter Service, der zu einem Prozentsatz der Kosten für verwaltete Ressourcen in Rechnung gestellt wird. Eine höhere Instance-Größe erfordert möglicherweise nicht notwendigerweise mehr Verwaltungsaufwand, wird jedoch mehr in Rechnung gestellt. Stellen Sie sicher, dass diese Service-Preisvereinbarungen ein Kostenoptimierungsprogramm oder entsprechende Funktionen in ihrem Service enthalten, um die Effizienz zu steigern.
Bewährte Methoden
- COST07-BP01 Durchführen einer Preismodellanalyse
- COST07-BP02 Auswählen von Regionen auf Basis der Kosten
- COST07-BP03 Auswahl von Drittanbietervereinbarungen mit kosteneffizienten Bedingungen
- COST07-BP04 Implementieren von Preismodellen für alle Komponenten dieser Workload
- COST07-BP05 Durchführen einer Preismodellanalyse auf Verwaltungskontoebene