Amazon Web Services

44
www.playata.com Amazon Web Services Eine kurze Reise durch die Wolke Mathias Fabian Head of Product Playata GmbH [email protected]

description

Mathias Fabian erklärt in diesem Vortrag Cloud Computing und stellt konkret die Amazon Web Services in ihrem umfangreichen Leistungsspektrum vor. Dabei geht er auf den konkreten Einsatz dieser Technologie für Online-Spiele der Playata GmbH ein und präsentiert wertvolle Lösungsansätze und Erfahrungswerte.

Transcript of Amazon Web Services

Page 1: Amazon Web Services

www.playata.com

Amazon Web ServicesEine kurze Reise durch die Wolke

Mathias FabianHead of Product

Playata [email protected]

Page 2: Amazon Web Services

www.playata.com

Folie: 2

• Merkmale des Cloud Computings• Kurze Einführung in Amazon Web Services• AWS Angebote/Dienste• Unser Weg zu AWS

Worum geht es?

Page 3: Amazon Web Services

www.playata.com

Merkmale des Cloud Computing

Folie: 3

Page 4: Amazon Web Services

www.playata.com

Folie: 4

• Es gibt verschiedene Formen des Cloud Computings

Merkmale des Cloud Computings

SaaS (Software as a Service)

PaaS (Platform as a Service)

IaaS (Infrastructure as a Service)

HaaS (Hardware as a Service)

Page 5: Amazon Web Services

www.playata.com

Folie: 5

• Skalierbarer Hardware Layer• Zentral verwaltete Infrastruktur • On-Demand Zugriffe auf Ressourcen• Schnelle Reaktion auf stark schwankende Kapazitätsnachfrage

Merkmale des Cloud Computings

Page 6: Amazon Web Services

www.playata.com

Kurze Einführung in die Amazon Web Services (AWS)

Folie: 6

Page 7: Amazon Web Services

www.playata.com

Folie: 7

• ein Infrastrukturanbieter für Cloud Computing • eine Tochter des Online Händlers Amazon.com• eine hoch verfügbare und skalierbare Rechenplattform• vertreten in allen Weltregionen

Amazon Web Services ist …

Page 8: Amazon Web Services

www.playata.com

Folie: 8

• Nutzungsabhängige Kosten ohne Vorausgaben oder langfristige Verpflichtungen• Schnelle und dynamische Anpassungen an neue Herausforderungen• Sprach- und Betriebssystemagnostische Plattform

Merkmale von AWS

Page 9: Amazon Web Services

www.playata.com

AWS Angebote/Dienste

Folie: 9

Page 10: Amazon Web Services

www.playata.com

Amazon EC2Elastic Compute Cloud

Page 11: Amazon Web Services

www.playata.com

AWS EC2 - Merkmale

Merkmale:– Rein virtuelle Rechenumgebung – Manuelle Kapazitätserweiterung/verringerung innerhalb von Minuten– Automatisierte Kapazitätserweiterung/verringerung– Konfigurationsmöglichkeiten bei RAM, CPU, Instance-Speicher und

Betriebssystem– Konzipiert zur Verwendung mit anderen Amazon Web Services– Verfügbarkeit von 99,95% – Rootzugriff auf alle Instanzen– Web-Service-APIs zur Steuerung – Einfache Web-Service Oberfläche

Amazon EC2

Page 12: Amazon Web Services

www.playata.com

AWS EC2 - Funktionen

Funktionen:– Verwendung in mehreren Standorten– Elastic IP Adresses– CloudWatch– Auto Scaling– Elastic Load Balancing

Amazon EC2

Page 13: Amazon Web Services

www.playata.com

Amazon RDSRelational Database Service

Page 14: Amazon Web Services

www.playata.com

AWS RDS- Merkmale und Funktionen

Merkmale:– Web-Service zum Einrichten, Betreiben und Skalieren von relationalen

Datenbanken in der Cloud– MySQL, - Oracle und Microsoft SQL Server– Verschiedene Instanztypen mit unterschiedlicher Rechenleistung– Managed MySQL ohne Shell Zugang– Single oder Multi AZ Server

Funktionen:– CloudWatch-Metriken – Automatische Backups– DB Snapshots– Einfache Skalierbarkeit– Automatische-Host-Ersetzung– Replizierung

Amazon RDS

Page 15: Amazon Web Services

www.playata.com

Amazon CloudFrontContent Delivery Network

Page 16: Amazon Web Services

www.playata.com

AWS CloudFront - Merkmale und Funktionen

Merkmale:– Web-Service für die Bereitstellung von Inhalten– Weltweite Verteilung– Automatische Weiterleitung der Anfrage an den nächsten Standort

Funktionen:– Speichern der Originalversionen von Dateien auf eigenen

Ursprungsserver oder Amazon Web Services (S3 Bucket, EC2 Instanz, ELB)

Amazon CloudFront

Page 17: Amazon Web Services

www.playata.com

Amazon S3Simple Storage Service

Page 18: Amazon Web Services

www.playata.com

AWS S3- Merkmale und Funktionen

Merkmale:– Web-Service für die Bereitstellung von Inhalten– Weltweite Verteilung, Redundante Speicherung– Automatische Weiterleitung der Anfrage an den nächsten Standort

Funktionen:– Schreiben, Lesen und Löschen

Amazon S3

Page 19: Amazon Web Services

www.playata.com

Amazon IAMIdentity and Access Management

Page 20: Amazon Web Services

www.playata.com

AWS IAM- Merkmale und Funktionen

Merkmale:– Sicherheitssystem für AWS Nutzer

Funktionen:– Benutzer und Zugriffsverwaltung– Multi-Factor Authentication– Nutzerrollen/Instanzrollen– Zugriffssteuerung

Amazon IAM

Page 21: Amazon Web Services

www.playata.com

Amazon SNSSimple Notification Service

Page 22: Amazon Web Services

www.playata.com

AWS SNS- Merkmale und Funktionen

Merkmale:– Zuverlässiges und Skalierbares Notification System– Einfach zu benutzen

Funktionen:– Erstellen von „Themen“ für Benachrichtigen– Verschiedene Veröffentlichungsrichtlinien– Abonnentensteuerung

Amazon SNS

Page 23: Amazon Web Services

www.playata.com

Amazon SQSSimple Queue Service

Page 24: Amazon Web Services

www.playata.com

AWS SQS- Merkmale und Funktionen

Merkmale:– Beliebige Anzahl an Warteschlangen und Mitteilungen– Vorhaltezeit von 14 Tagen

Funktionen:– Gleichzeitiges Senden und Empfangen von Mitteilungen– Sperren von Mitteilungen während der Verarbeitung

Amazon SQS

Page 25: Amazon Web Services

www.playata.com

Playata und AWSDer Weg, das Ziel, die Kosten

Mathias FabianHead of Product

Playata [email protected]

Page 26: Amazon Web Services

www.playata.com

Die Vorgeschichte

Folie: 26

Page 27: Amazon Web Services

www.playata.com

• Architektur vor dem Wechsel in die Cloud– 4 eigene Server im Rechenzentrum (3 Webserver/1 DB Server)– 1 Loadbalancer– SVN Checkout auf allen Servern via Script

• Gründe für den Wechsel – Kapazitätsmangel– Lange Vorlaufzeiten für Hardwarebeschaffung und hohe Anschaffungskosten– Hardwarecrash!

Prä AWS Zeit

Page 28: Amazon Web Services

www.playata.com

Folie: 28

EURO je MAU– Gibt an welche direkten Hostingkosten (in EURO) ein MAU im Monat verursacht

Kostenkontrolle

In der Cloud skalieren nicht nur Kapazität und Leistung sondern auch die Kosten. Daher ist es essentiell die Kosten zu Überblicken und zu kontrollieren.

Page 29: Amazon Web Services

www.playata.com

Wie alles begann…

Folie: 29

Page 30: Amazon Web Services

www.playata.com

Erste Cloud Installation

Spielwelt: S2

Availability Zone - EU WEST 1a

EC2 M1 Medium

EC2 M1 Medium

EC2 M1 Medium

http//s2.herozerogame.com

Security Group

Benutzte Services:EC2

ELB

EC2 M1 Medium

Page 31: Amazon Web Services

www.playata.com

Benutzte Services:

Zweite Cloud Installation

Spielwelten: S1 und S2

Availability Zone - EU WEST 1a

EC2 M1 Medium

EC2 M1 Medium

EC2 M1 Medium

http://s1.herozerogame.com

Security Group

EC2 M1 Medium

EC2 M1 Medium

EC2 M1 Medium

EC2 M1 Medium

EC2 M1 Medium

http://s2.herozerogame.com

EC2

ELB

Page 32: Amazon Web Services

www.playata.com

Folie: 32

1. Optimierungsphase

Benutzte Services:

Umstellung auf RDS

Availability Zone - EU WEST 1a

EC2 M1 Medium

EC2 M1 Medium

EC2 M1 Medium

http://s1.herozerogame.com

Security Group

EC2 M1 Medium

EC2 M1 Medium

EC2 M1 Medium

http://s2.herozerogame.com

EC2

ELB

Amazon RDSMedium

Amazon RDSSmall

RDS

Security Group

Page 33: Amazon Web Services

www.playata.com

Folie: 33

2. Optimierungsphase

EC2 nach Bedarf nutzen und CloudFront Integration

Availability Zone - EU WEST 1a

EC2 M1 Medium

EC2 M1 Medium

EC2 M1 Medium

http://s1.herozerogame.com

Security Group

http://s2.herozerogame.com

Amazon RDS

EC2 M1 Medium

EC2 M1 Medium

EC2 M1 Medium

Amazon RDS

http://static.herozerogame.com

Benutzte Services:EC2

ELB

RDS

CloudFront

S3

Eigene EC2 Skalierung (Cronjob)

Security Group

Page 34: Amazon Web Services

www.playata.com

Folie: 34

• Folgendes wurde erreicht (Pro):– Hero Zero lief vollständig und skalierbar in der Cloud– Es werden die von Amazon vorgesehenen und optimierten Services verwendet– Die Assets werden über ein weltweites CDN ausgeliefert und sind daher sehr schnell

verfügbar

• Contra:– Die „ersten“ Webserver je Spielwelt haben eine hohe „Verantwortung“ – Je neuer Spielwelt muss eine eigene „Infrastruktur“ aufgebaut werden– Es entsteht massiver Overhead an Kapazitäten– Massiv steigende Kosten, bis zu 6,23 Cent je MAU!

Zwischenstand

Page 35: Amazon Web Services

www.playata.com

Folie: 35

3. Optimierungsphase

Autoscaling, Cron Server und Toolbox

Availability Zone - EU WEST 1a

http://xx.herozerogame.com

Security Group

Amazon RDSS1

http://static.herozerogame.com

Benutzte Services:EC2

ELB

RDS

CloudFront

S3

AutoScaling Group

Security Group

Auto scaling Group

Amazon RDS S2

Amazon RDS Common

EC2 M1 Medium(CRON)

EC2 M1Micro (Toolbox)

Security Group Security Group

EC2 M1 Medium

Page 36: Amazon Web Services

www.playata.com

Folie: 36

• CloudFront – Reserved Capacity Agreement– Ab einem CloudFront Traffic von 10 TB in einer AZ kann ein „privater“ Deal mit

Amazon geschlossen werden der die GB Preise in allen Regionen massiv senkt.

3. Optimierungsphase

Die Konditionen unterliegen der Vertraulichkeit und können daher nicht besprochen werden.

Page 37: Amazon Web Services

www.playata.com

Folie: 37

• Folgendes wurde erreicht (Pro):– Scaling läuft komplett von Amazon gesteuert und optimiert– Cronjobs werden je Availability Zone zentral gesteuert– SVN Repository wird zentral in der Cloud vorgehalten– Kosten von ca. 3 Cent je MAU– Alle Spielwelten teilen sich die Webserver! Dadurch optimale Auslastung der Server

und sehr gute Kosten/Nutzen Relation

• Contra:– Schwachpunkt Cronserver (Hohe Verantwortung)– Overhead in DB Instanzen– RDS Instanzen haben kein Failover

Zwischenstand

Page 38: Amazon Web Services

www.playata.com

Folie: 38

• RDS– Überwachen der RDS Lasten, Spielwelten können sich eine RDS teilen

• Vorteil:– Jede größere Instanzgröße verdoppelt sich in Kapazitäten und Preis, dadurch große

Einsparpotentiale

• Nachteil:– Verlust von Flexibilität, Spielwelten können nicht mehr so schnell skaliert werden– Bei Servercrash sind mehrere Spielwelten betroffen– Muss eine Spielwelt separiert werden sind längere Wartungszeiten nötig

4. Optimierungsphase

Bsp.: 3 Medium RDS laufen zur Primetime mit max. 60% Last. Alle 3 Medium Instanzen können auf einer Large RDS zusammengefasst werden welche dann auf max. 90% Last läuft. Dadurch werden die Kosten einer Medium RDS gespart. (ca. 160 USD)

Page 39: Amazon Web Services

www.playata.com

Folie: 39

• EC2/RDS– Reservieren von Instanzen

• Vorteil:– Massive Einsparpotentiale sowohl bei RDS als auch EC2

• Nachteil:– Abschlussgebühr muss direkt bei Reservierung gezahlt werden– Je nach Reservierung Pauschalkapazitäten unabhängig der tatsächlichen Last– Laufzeiten von 1 oder 3 Jahren

4. Optimierungsphase

Bsp.: M1 Medium RDS kostet regulär $0,220/h das entspricht $158,40/Monat.Als Heavy Reserved Instance (1 Jahr) kostet die Instanz $0,078/h, das entspricht $56,16/Monat + $32,50 Abschlussgebühr ($390 auf 12 Monate umgerechnet). Die Serverkosten für die RDS betragen also effektiv $88,66/Monat. Das entspricht einer Kostenersparnis von 44% je Monat!

Page 40: Amazon Web Services

www.playata.com

Wo stehen wir jetzt…

Folie: 40

Page 41: Amazon Web Services

www.playata.com

Folie: 41

• Schnell und einfach zu skalierende Infrastruktur• Neue Spielwelten können in kürzester Zeit aufgesetzt werden• Spielwelten in neuen Märkten können Kosteneffizient starten• Hohe Auslastung der gebuchten (bezahlten!) Kapazitäten• Ein sehr gutes MAU/ Serverkosten Verhältnis von ca. 2,5 Cent je Mau

Aktueller Stand

Der Unterschied von 0,5 Cent je MAU im Vergleich zur 3. Optimierungsphase zur hört sich vielleicht nicht so groß an, verursacht bei 500.000 MAU jedoch bereits eine Serverkostendifferenz von 2500 Euro je Monat!

Page 42: Amazon Web Services

www.playata.com

Folie: 42

Kosten per Mau Entwicklung während der Laufzeit

Page 43: Amazon Web Services

www.playata.com

Last but not least, wir suchen derzeit

• PHP/AS3 Entwickler• 2D Artists• Unity Entwickler (auch Freelancer)• PHP/JS Entwickler (auch Freelancer)

Wir suchen

Page 44: Amazon Web Services

Mathias [email protected]

Danke

Folie: 44