optimieren sie ihre aws nutzung um kosten zu sparen
TRANSCRIPT
Optimieren Sie Ihre AWS Nutzung um Kosten zu sparen
Steffen KrauseTechnical Evangelist
• Ziel– Möglichkeiten, bei der AWS Rechnung Geld zu sparen
• Ihr Produkt oder Geschäftsmodell sollte zur Cloud passen– Verwenden Sie nur, was Sie brauchen
• Bezahlen Sie nur, was Sie nutzen
– Messen und Verwalten– Opportunistische Skalierung
Agenda
Skalierung nach Bedarf
Klassische, feste Ressourcen
Verschwendung
Unzufriedene Kunden
Tatsächlicher Bedarf
Vorhergesagter Bedarf
Kap
azitä
t
Zeit
Elastische Cloud Ressourcen
Tatsächlicher Bedarf
Ressourcen skalieren nach Bedarf
Kap
azitä
t
Zeit
kontra
Kosteneinsparungs-Tipps
• Die richtige Größe– Verwenden Sie geeignete Ressourcen– Skalieren Sie nach Last hoch und herunter– Schalten Sie ungenutzte Ressourcen aus
• Kaufmodelle für Instanzen– Flexibilität kontra Vorhersagbarkeit– Mischung von Kaufmodellen
• Messen und verwalten– Überwachung zeigt Kosteneinsparungsmöglichkeiten
StandardHigh-CPU
High-MemoryMicro
Cluster ComputeCluster GPU
High I/OHigh Storage
High Cluster Memory
Die meisten Anwendungen, Low-cost, App Server / Web
ServerDatenbanken, Datenbanken
Datenbanken…
Compute + Netzwerk Durchsatz
Scale-Out Compute, Batch Processing
Tests, niedriger Durchsatz, Websites
Parallel Processing
OLAP, Hadoop, File Systems
NoSQL, Beste Random IOPS
In-memory Apps und DBs. Beste $/RAM
EC2 Instanz-Familien
Storage-Auswahl: S3 und Glacier
• S3 und Glacier sind beide:– Sicher– Flexibel– Preiswert– Skalierbar: über 2 Billionen Kunden-Objekte– Dauerhaft: 99,999999999% (11 9en)
Amazon Glacier
Auswahl zwischen S3 und Glacier
• Amazon Simple Storage Service (S3)– Entworfen für die Bereitstellung von statischen Inhalten
• großes Volumen, geringe Latenz, häufiger Zugriff
– Ab 5,5US-Cent/GB/Monat: 11 9en Dauerhaftigkeit– Reduced Redundancy: Ab 3,7US-Cent/GB/Monat: 4 9en Dauerhaftigkeit
• Amazon Glacier– Entworfen für Langzeitspeicherung/Archivierung
• seltener Zugriff, lange Zugriffszeit (3-5 Stunden)
– Ab 1US-Cent/GB/Monat• Aber Datenzugriff dauert länger und ist teurer als bei S3
S3 und Glacier Tipps
• Optimieren Sie den Zugriff– Reduzieren Sie die Objektgröße– Anzahl Zugriffe (z.B. konsolidierte Logs)
• Überwachen Sie auf unerwartet hohe Zugriffszahl und Größenwachstum– Falsch konfigurierte Log-Archivierung
• Setzen Sie Lifecycle Policies– Object Expiration– Automatisch von S3 nach Glacier verschieben
Illumina, the leading provider of DNA sequencing instruments, uses Glacier to store large blocks of genomic data all over the world
Illumina, the leading provider of DNA sequencing instruments, uses Glacier to store large blocks of genomic data all over the world
Kosteneinsparungs-Tipps
• Die richtige Größe– Verwenden Sie geeignete Ressourcen– Skalieren Sie nach Last hoch und herunter– Schalten Sie ungenutzte Ressourcen aus
• Kaufmodelle für Instanzen– Flexibilität kontra Vorhersagbarkeit– Mischung von Kaufmodellen
• Messen und verwalten– Überwachung zeigt Kosteneinsparungsmöglichkeiten
Unix/Linux Instanzen starten bei 0,02 USD / Stunde
„Pay as you go“ für Rechenleistung
Niedrige Kosten, flexibel
Keine Verpflichtung, keine initialen Kosten, Bezahlung nur für Nutzung
Anwendungsfälle
Anwendungen mit kurzfristiger, unbekannter oder unvorhersehbarer Last
Anwendungs-Entwicklung und Test
On Demand InstanzenOn Demand Instanzen
EC2 Preisoptionen
Unix/Linux Instanzen starten bei 0,02 USD / Stunde
„Pay as you go“ für Rechenleistung
Niedrige Kosten, flexibel
Keine Verpflichtung, keine initialen Kosten, Bezahlung nur für Nutzung
Anwendungsfälle
Anwendungen mit kurzfristiger, unbekannter oder unvorhersehbarer Last
Anwendungs-Entwicklung und Test
On Demand InstanzenOn Demand Instanzen
1 oder 3 Jahre Bindung
Initiale Zahlung verringert Kosten pro Stunde deutlich
Niedrige Kosten / Vorhersehbarkeit
Reservierung: Kapazität ist verfügbar wenn sie gebraucht wird
Anwendungsfälle
Dauerhaft genutzte Anwendungen
Vorhersehbare Last
Reservierte Kapazität erforderlich, z.B. Disaster Recovery
Reserved InstanzenReserved Instanzen
EC2 Preisoptionen
Unix/Linux Instanzen starten bei 0,02 USD / Stunde
„Pay as you go“ für Rechenleistung
Niedrige Kosten, flexibel
Keine Verpflichtung, keine initialen Kosten, Bezahlung nur für Nutzung
Anwendungsfälle
Anwendungen mit kurzfristiger, unbekannter oder unvorhersehbarer Last
Anwendungs-Entwicklung und Test
On Demand InstanzenOn Demand Instanzen
1 oder 3 Jahre Bindung
Initiale Zahlung verringert Kosten pro Stunde deutlich
Niedrige Kosten / Vorhersehbarkeit
Reservierung: Kapazität ist verfügbar wenn sie gebraucht wird
Anwendungsfälle
Dauerhaft genutzte Anwendungen
Vorhersehbare Last
Reservierte Kapazität erforderlich, z.B. Disaster Recovery
Reserved InstanzenReserved Instanzen
EC2 Preisoptionen
> 80% Nutzungszeit Bis 58% günstiger
Anwendungsfälle: Datenbanken, Großes HPC, Dauerbetrieb, Grundlast
Heavy Utilization RIHeavy Utilization RI
41-79% NutzungszeitBis 49% günstiger
Anwendungsfälle: Webanwendungen, Viele umfangreiche Rechenläufe, Anwendungen die
meistens laufen
Medium Utilization RIMedium Utilization RI
15-40% NutzungszeitBis 34% günstiger
Anwendungsfälle: Disaster Recovery, Wöchentliches / Monatliches Reporting, Elastic
Map Reduce
Light Utilization RILight Utilization RI
Unix/Linux Instanzen starten bei 0,02 USD / Stunde
„Pay as you go“ für Rechenleistung
Niedrige Kosten, flexibel
Keine Verpflichtung, keine initialen Kosten, Bezahlung nur für Nutzung
Anwendungsfälle
Anwendungen mit kurzfristiger, unbekannter oder unvorhersehbarer Last
Anwendungs-Entwicklung und Test
On Demand InstanzenOn Demand Instanzen
1 oder 3 Jahre Bindung
Initiale Zahlung verringert Kosten pro Stunde deutlich
Niedrige Kosten / Vorhersehbarkeit
Reservierung: Kapazität ist verfügbar wenn sie gebraucht wird
Anwendungsfälle
Dauerhaft genutzte Anwendungen
Vorhersehbare Last
Reservierte Kapazität erforderlich, z.B. Disaster Recovery
Reserved InstanzenReserved Instanzen
Angebote für ungenutzte EC2 Kapazität
Spot Preis basiert auf Angebot und Nachfrage, wird automatisch bestimmt
Sehr kostengünstig, große, zeit-unkritische Lasten
Instanzen werden bei Steigen des Spot-Preises wieder terminiert
Anwendungsfälle
Anwendungen mit flexiblen Start- und Endzeiten
Preissensitive Anwendungen
Zeit-unkritische Batchläufe
Spot InstanzenSpot Instanzen
EC2 Preisoptionen
Verwenden Sie mehrere Modelle
Beispiel:
FrontendOn-Demand/Reserved Instances
+
BackendSpot Instances
z.B. Batch Video Transcoding
Mess- und Verwaltungsdienste
• Detailiertes Cloud Monitoring & Management– Consolidated Billing (in „Account Activity“)– CloudWatch (in der AWS Management Console)– Billing Alerts (in “Account Activity”)– Trusted Advisor (in “Support Center”)– Andere APIs: Tags, programmatischer Zugriff usw.
• + Dienste von anderen Anbietern
Consolidated Billing
• Eine Rechnung für mehrere Konten
• Einfache Übersicht der Einzelpositionen (z.B. Download der Kostendaten als CSV)
• Aktivitäten gruppieren nach Konto (z.B., Dev, Stage, Test, Prod)
• Volumenrabatte können schneller erreicht werden
• Reserved Instances werden gemeinsam genutzt (incl. RDS Reserved DBs)
• AWS Credits werden kombiniert
Eine Rechnung für eine Gruppe von Konten
Amazon CloudWatch
• Monitoring für AWS Cloud Ressourcen und Applikationen– EC2, RDS, EBS, ELB, SQS, SNS, DynamoDB, EMR, Auto Scaling, …– Eigene Metriken für Ihre Applikationen (Put API-Aufruf)
• Analysen, Alarme, Benachrichigungen• Einfach anfangen, mit der Anwendung skalieren
• Ausgefeilte Automatisierung– Verwenden Sie CloudWatch Metriken mit Auto Scaling um dynamisch die Zahl
der EC2 Instanzen zu skalieren
CloudWatch zur Überwachung
• Überwachung der Ressourcennutzung– Verwenden Sie den richtigen Instanztyp?– Haben Sie ungenutzte Instanzen?– Ist Ihre Instanznutzung gleichmäßig oder hat sie Spitzen?
• Verwalten der Ressourcennutzung– Verschieben Sie Lastspitzen auf andere Instanzen– Balancieren Sie die Last über die Instanzen aus– Skalieren Sie automatisch mit Auto Scaling
Billing Alerts
• Erhalten Sie einen Alarm, wenn die geschätzten Kosten über einem Schwellwert liegen• Überwachen Sie einzelne Konten oder alle verknüpften Konten• Konfigurieren Sie Alarme und Aktionen
Trusted Advisor
• Gibt Optimierungs-Empfehlungen für:– Kosten– Sicherheit– Fehlertoleranz– Performance
• Verfügbar für Kunden mit Business und Enterprise Support
https://aws.amazon.com/de/premiumsupport/trustedadvisor/
Umfassende Analyse, Überwachung und Optimierung
Zeit zum Ergebnis Fall 1
Beispiel: Mechanische Simulation
Verzögerung Verlust an Produktivität, Projektverzögerung
Wert des Ergebnisses schwindet schnell
Zeit zum Ergebnis Fall 2
Beispiel:Regressionstests am Wochenende
Verzögerung Geringer Nachteil bis Montag Morgen 8 Uhr
Das Ergebnis ist wertvoll – bis es es nicht mehr ist
Spot Instanzen
• Spot Instanzen in Kürze– Ausgeführt wenn Gebot ≥ Spot Preis– Spot Instanzen = Ungenutzte EC2 Kapazität– Können jederzeit terminiert werden
• Vorteile– Einsparungen: Bis zu 90% Preisvorteil gegenüber On-Demand– Skalierung: Viele Instanzen zum günstigen Preis
• Verwendung– Entscheiden Sie sich für einen Gebotpreis– Start über Console, API, Auto Scaling– Überwachung des Gebotsstatus über Console/API
Kosteneinsparung und Skalierung
Anwendungen für Spot
• Gute Spot-Anwendungen sind:– Verzögerbar: Für Balance SLA/Kosten– Skalierbar: z.B. „embarrassingly parallel“– Automatisierbar: für automatischen Start der Verarbeitung mit Instanzstart– Fehlertolerant: können terminiert werden, ohne dass die gesamte Arbeit verloren geht– Portabel über Regionen, AZs, Instanztypen
• Beispiele:– MapReduce (Hadoop, Amazon EMR)– Wissenschaftliche Berechnungen (z.B. Monte Carlo Simulationen)– Batch Processing (z.B. Video Transcoding)– Financial Computing (z.B. high-frequency trading Algorithmus-Backtesting)– und viele andere...
Lucky Oyster crawled 3.4B Web Pages, building a 400M entry index in around 14 hours for $100 (>85% savings)!
Dynamische Skalierung: Auto Scaling
• Auto Scaling verwaltet automatisch die Größe Ihrer Server-Flotte– Basierend auf Ereignissen und Zeitpunkten
• Integration mit CloudWatch Metriken• Verwenden Sie Auto Scaling für
– Konsistente Anwendungs-Performance und Antwortzeit– Maximierung von CPU/IO/Netzwerk-Nutzung– Optimierung anderer Metriken
Skalierung nach aktuellem Bedarf
Folge dem Geld kontra Folge dem Kunden
• Optimierte Nutzung– Auto Scaling nach Nutzungsmetriken:
CPU, IO, Anfragen, Verbindungen, …
• Optimierter Preis– Skalierung mit Spotinstanzen wenn der Preis niedrig ist– z.B. Ausführung von Batchläufen wenn Spot-Preise niedrig sind
Folge dem Geld kontra Folge dem Kunden
• Optimierte Kundenerfahrung mit Auto Scaling
• Beispiel 1: Skalierung der Ressourcen nach aktueller Kundenanforderung– Videodienst skaliert die Zahl der Instanzen nach Anzahl der Kunden-Webrequests
• Beispiel 2: Skalierung der Ressourcen, um aktuelle Ergebnisse sicherzustellen– Eine wissenschaftliche Suchmaschine skaliert basierend auf der Queue-Länge
(Anzahl der zu indexierenden Dokumente)– 10 dauerhaft laufende Instanzen und bis zu 5000 zur Minimierung der
Verarbeitungszeit• Beispiel 3: Vorausschauende Skalierung bei abzusehendem Bedarf
– Eine Fernsehserien-Marketingsite skaliert vor der Sendung hoch und danach runter
Shared FSShared FS
Skalierung von 50–50000 Cores coresCycleCloud nutzt sichere, auto-skalierte HPC Cluster
User
Prüfe Job-AnforderungenPrüfe Job-Anforderungen
Berechne idealen HPC ClusterBerechne idealen HPC Cluster
AlterInterner
HPC
AlterInterner
HPC
Loadbasiertes Spot Gebot
Loadbasiertes Spot Gebot
Biete mit geeignetem Spot-PreisBiete mit geeignetem Spot-Preis
Verwalte Spot Instanz-Verlust Verwalte Spot Instanz-Verlust
Spot Instance Execute Nodes(automatisch gestartet und
gestoppt)
FS / S3
HPC Cluster
On-Demand Execute Nodes
Data Scheduling zur PlatzierungHPC Orchestration für
Spot Instance Gebot & Verlust
Fallstudie
Zusammenfassung Teil 1
• Verwenden Sie nur, was Sie brauchen– Bezahlen Sie nur, was Sie nutzen
• Messen und Verwalten• Opportunistische Skalierung
Passen Sie die Cloud Ihren Produkten und Geschäftsmodellen an
Beispiel: Batch Processing
http://aws.amazon.com/architecture/
3. Opportunistische Skalierung: Auto Scaling Worker Nodes basierend
auf Größe der Input Queue
3. Opportunistische Skalierung: Auto Scaling Worker Nodes basierend
auf Größe der Input Queue1. Bezahlen
Sie nur was Sie nutzen:
Ressourcen in der richtigen
Größe
1. Bezahlen Sie nur was Sie nutzen:
Ressourcen in der richtigen
Größe
2. Messen und verwalten Sie mit
CloudWatch, Billing Alerts, Trusted
Advisor
2. Messen und verwalten Sie mit
CloudWatch, Billing Alerts, Trusted
Advisor
Zusammenfassung Teil 2
On-Premises
•Fehlschläge sind teuer
•Selten wird experimentiert
•Weniger Innovation
Optimierte Cloud
•Fehlschläge sind preiswert
•Experimentieren Sie früh und oft
•Mehr Innovation
Verwenden Sie die Cloud für neue Produkte und Geschäftsmodelle
• http://aws.amazon.com/de • Beginnen Sie mit dem Free Tier:
http://aws.amazon.com/de/free/• 25 US$ Startguthaben für Neukunden:
http://aws.amazon.com/de/campaigns/account/• Twitter: @AWS_Aktuell• Facebook: http://www.facebook.com/awsaktuell • Webinare: http://aws.amazon.com/de/about-aws/events/ • Slideshare: http://de.slideshare.net/AWSAktuell
Ressourcen
1. Was ist Amazon Web Services und wofür kann ich AWS nutzen2. Erste Schritte mit Amazon Web Services – von der Anmeldung bis zur ersten
Instanz3. Amazon Web Services 1*1 – welche Dienste gibt es wofür?4. Server in der Cloud – die AWS Compute-Dienste5. Daten speichern in der Cloud – die AWS Storage-Dienste6. Datenbanken in der Cloud – SQL und NoSQL7. Amazon Web Services für eCommerce8. Big Data9. Die erste Woche mit EC210. 8 Tipps für eine Cloud-Strategie – wie Kunden die Cloud heute einsetzenAufzeichnungen http://aws.amazon.com/de/recorded-webinar/
Bisherige Webinare
• Architecture Best Practices für Webanwendungen– 04.09.2013, 16 Uhr
• Unternehmensanwendungen auf AWS– 24.09.2013, 16 Uhr
• http://aws.amazon.com/de/about-aws/events/
Kommende Webinare