kapitel 2: infrastruktur und services -...

36
1 Cloud Data Management Kapitel 2: Infrastruktur und Services Dr. Michael Hartung Sommersemester 2012 Universität Leipzig Institut für Informatik http://dbs.uni-leipzig.de

Upload: others

Post on 13-Jul-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

1

Cloud Data Management

Kapitel 2: Infrastrukturund Services

Dr. Michael HartungSommersemester 2012

Universität LeipzigInstitut für Informatikhttp://dbs.uni-leipzig.de

Page 2: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

2

Inhaltsverzeichnis

• Hardware-Infrastruktur– Grundideen performanter Datenverarbeitung in der Cloud

– Aufbau eines Data Centers

• Dateisysteme für die Cloud– Google File System, Hadoop File System

• Software-Infrastruktur– Aufbau, Anforderungen und Ziele

– Cloud-Dienste: Software/Platform/Infrastructure as a Service

• Cloud-Anbieter– Beispiel: Amazon

Page 3: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

3

“Big Ideas”

• Scale “out” statt scale “up”– Grenzen von SMPs (symmetric multi-processors) und großen Shared-Memory-

Maschinen

• Freie Skalierbarkeit– Flexible Nutzung von Rechner-Ressourcen (“1000 Rechner für 1 Minute”)

• Sequentielle Datenverarbeitung statt wahlfreiem Datenzugriff– Festplatten: Seeks sind teuer, Datendurchsatz akzeptabl

• Datenverarbeitung dort, wo die Daten liegen (geringe Zugriffszeit)– Vermeiden unnötigen Datentransfers

Page 4: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

4

Scale-up vs. Scale-out [DGLS99 ff]

• Scale-up = vertikale Skalierung– schnellere SMP-Knoten

– Shared Everything

• Scale-out = horizontale Skalierung– N unabhängige Rechner (z.B. Commodity Server)

– Hinzufügen neuer Rechner nach Bedarf

– Shared Nothing oder Shared Disk (Cluster)

• Scale-out in Cloud-Data-Center mit preiswerter Standard-Hardware– geringere Kosten, geringere Administrationsaufwand, leichte Erweiterbarkeit, ...

– Alternative: geringere Zahl von High-End-Servern

Page 5: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

5

Aufbau eines Datacenters

Server• CPUs• DRAM• Disks

Rack• 40-80 Server• Ethernet Switch Cluster

[BH09]

Page 6: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

6

Aufbau eines Datacenters (2)

Source: Barroso and Urs Hölzle (2009)

[BH09]

Page 7: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

7

Storage Hierarchy

[BH09]

Page 8: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

8

Standard-Hardware statt “High-End”

• Standard-Hardware ist kosteneffizienter pro “Leistungseinheit”

• Ähnliche Ausfallwahrscheinlichkeiten, geringerer Stromverbrauch

• Nahezu beliebige Skalierbarkeit (“pay as you go/grow”)

[BH09]

Page 9: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

9

(Ökonomische) Gründe für Data Centers

• Sehr große (50.000 Server) Data Centers kostengünstiger als mittelgroße (1.000 Server)– Faktor 5-7 pro Ressource (Netzwerk, Speicher, Administratoren, ...)

• Virtualisierung ermöglich (nahezu) freie Standortwahl nach ökonomischen Gesichtspunkten– Strompreis, Löhne, Steuern, ...

• Große Web-Firmen (Google, Amazon, ...) benötigen große Infrastrukturen – ... die aber nicht ständig zu 100% ausgelastet sind

– Vermietung von Ressourcen als “Zusatzgeschäft”

http://www.slideshare.net/ISSGC/session-58-cloud-computing-virtualisation-and-the-future-speaker-ake-edlund

Page 10: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

10

Kommunikationskosten

• Parallelverarbeitung erzwingt Kommunikation zwischen Knoten/Cores– SMP (shared memory): Latenz ~100 ns

– LAN: Latenz ~100 µs

• Scaling “up” vs. scaling “out”– Kleines Cluster of High-End-SMPs vs. großes Cluster of Low-End-SMPs

– Bsp: 8 × 128-Core-SMP vs. 128 × 4-Core-SMP

• Einfaches Kostenmodell– Gesamtkosten: Kosten für Berechnung (1ms) + Kosten für (globalen) Datenzugriff

– Für n Knoten (keine Berücksichtigung der Cores)

• Light communication: f =1

• Medium communication: f =10

• Heavy communication: f =100

Source: analysis on this an subsequent slides from Barroso and Urs Hölzle (2009)

1 ms + f × [100 ns × n + 100 µs × (1 - 1/n)]

Page 11: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

11

Kommunikationskosten (2)

• Vergleich: 1 × n⋅m-Core vs. n × m-Core

• 1 × n⋅m-Core bis zu 10mal schneller als entsprechendes n × m-Core Cluster

• keine Veränderung ab n=8

[BH09]

Page 12: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

12

Kommunikationskosten (3)

• Vergleich: (c/128) × 128-Core vs. (c/4) × 4-Core – Bsp: Cluster size = 512 entspricht 4 × 128-Core vs. 128 × 4-Core

• Sobald “High-End-Server” geclustert werden (müssen), sinkt der Performanzvorteil deutlich, z.B. <15% ab 1024 cores

• Standard-Hardware-Cluster hat ähnliche Performanz bei deutlich geringeren Kosten

[BH09]

Page 13: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

13

Seeks vs. Scans

• Sequentielle Verarbeitung großer Datenmengen performant da aufwändige Seeks entfallen– Seek = Positionierung des Lese-Schreibkopfes auf Platte

• Beispiel– Datenbank mit 1010 Datensätzen à 100 Byte → 1 TB

– Update 1% aller Datensätze

• Variante 1: Updates mit Random Access

• Variante 2: Neuschreiben aller Datensätze

Source: Ted Dunning, on Hadoop mailing list

Page 14: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

14

Datenzugriff

• Verarbeitung großer Datenmengen u.a. beeinflusst von Zugriffszeiten

• Ziel: Verarbeitung “nah an” den Daten

L1 cache reference 0.5 ns

Branch mispredict 5 ns

L2 cache reference 7 ns

Mutex lock/unlock 25 ns

Main memory reference 100 ns

Send 2K bytes over 1 Gbps network 20,000 ns

Read 1 MB sequentially from memory 250,000 ns

Round trip within same datacenter 500,000 ns

Disk seek 10,000,000 ns

Read 1 MB sequentially from disk 20,000,000 ns

Send packet CA → Netherlands → CA 150,000,000 ns

[De09]

Page 15: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

15

Dateisysteme und verteilte Dateisysteme

• Dateisystem– System für permanente Datenspeicherung

– Zugriffsschicht für physischen Datenträger (HDD, DVD, ...)

– Basisobjekt: Datei

– eindeutig referenziert durch Namen und (hierarchischen) Pfad

– Beispiele: FAT32, NTFS, ext4, ...

• Verteiltes Dateisystem– ermöglicht Zugriff auf Dateien anderer Rechner (Server)

– Problemfälle• Concurrency

• Replication

• Caching

– Beispiele: DFS, NFS, ...

Dateisystem (für Nutzer/Anwendung)

NTFS EXT4 NFSClientHDD1 HDD2

NFSServer

Dateisystem(Server)

EXT4

HDD1

EXT4

HDD2

Page 16: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

16

Notwendigkeit neuer Dateisysteme für Cloud

Lokal / Netzwerk Cloud

Nutzer Anwender, (lokale) Programme

Beispiele TextverarbeitungFotoverwaltung

Anzahl der Dateien

sehr viele (>>1,000,000)

Größe der Dateien

kleine (KB-MB)

Lesezugriff teilw. concurrent, komplett

Schreibzugriff mehrfach Überschreiben

Page 17: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

17

Google File System

• Proprietäres, verteiltes Linux-basiertes Dateisystem – Hochskalierend: tausende Festplatten, mehrere 100TB

– Open Source-Alternative: Hadoop Distributed File System

• Netzknoten: „billige“ Standardhardware (kein RAID)– Hardwarefehler- und ausfälle sind Regelfall; Gewährleistung von Datensicherheit

• optimiert für Streaming Access– File-Änderungen durch Anhängen: write once - read many times

– Verteiltes, sequentielles Lesen (blockweise)

• Hoher Durchsatz statt geringer Latenz

• Physische Datenpartitionierung in Chunks (Default: 64 MB)– Verteilung über mehrere Chunkserver (und Replizierung jedes Chunks)

• Master-Server– Mapping: Datei->Chunk->Node

– Replikat-Management: Default 3 Chunk-Kopien (in 2 Racks)

– Anfragebearbeitung, Zugriffsverwaltung

Page 18: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

18

Google File System: Architektur

[GGL03]

Page 19: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

19

Master

• Metadata-Management– Mapping Datei > Chunk > ChunkServer (Node)

– Alles im Hauptspeicher (performant)• 64 byte pro Chunk, “wenige” Dateien

• Logfile– persistentes Logging kritischer Metadaten-Updates

– Repliziert, Checkpoints (Revovery)

• Single-Master-Problem (Single Point of Failure, Bottleneck)– Shadow Masters

• haben (“recent”) Kopie des Mappings; springen bei Ausfall ein

– Reduzierter Workload für Master• nur Metadaten

• große Chunksize (64MB), damit wenige Metadaten / Interaktion / Netzwerk Overhead

• Authority-Weiterreichung an Primary Replicas bei Datenänderung (Lease)

Page 20: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

20

Datenmanipulation

• Mutation (Schreiben oder Anhängen)– muss für alle Replikate

durchgeführt werden

• Lease Meachnismus– Master bestimmt ein Replica zur

Koordinierung (“lease for mutation”)

– Primary Replica sendet Folge von Mutations-Operationen an alle Secondary Replicas

– Reduzierte Master-Workload

– Datenfluss von Kontrollfluss entkoppelt

• Append-Operation– GFS hängt Daten von Client an File an

– GFS bestimmt Offset, damit parallele Schreibzugriffe möglich

– optimiert für Multiple-Producer-Single-Reader-Queues (z.B. MapReduce)

[GGL03]

Page 21: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

21

Hadoop

• Framework für skalierbare und verteilte Software– frei, open-source, Java

• (z.T.) “Nachbau” proprietärer Systeme– GFS/HDFS, BigTable/HBase, MapReduce

http://www.slideshare.net/cloudera/tokyo-nosqlslidesonly

Page 22: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

22

Hadoop File System: Architektur

[HDFS]

GFS Master=HDFS Namenode, GFS ChunkServer = HDFS Datanode

Page 23: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

23

GFS/HDFS: ZusammenfassungEigenschaft Technologie / Idee

Metadaten

Instanzdaten

Zuverlässigkeit

Lese-Operation

Schreib-Operation

• Auf GFS/HDFS abgestimmte Programmiermodelle (z.B. MapReduce)– “Moving Computation is Cheaper than Moving Data”

– Ziel: Berechnung auf gleichem (oder nahem) Knoten wie Daten

Page 24: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

24

Software-Infrastruktur

Facilities

Hardware

Abstraction

Connectivity & Delivery

APIs

Integration & Middleware

DataMetaData

Content

Applications

APIs

Presentation Modality/Platform

Infra

stru

ctur

e as

a S

ervi

ce

Plat

form

as

a Se

rvic

e

Softw

are

as

a Se

rvic

e

The frogs who desired a king.http://www.rationalsurvivability.com/blog/?p=567

IPAM/DNS, Transport, Security, Auth.

VMM, Grid/Cluster, Images

Compute, Network, Storage

Power, HVAC, Space

Structured/Unstructured

Database, Messaging, Queueing

Management

Data/Voice/Video, PC/Embedded/Mobile

Native, Web, Emulated

Page 25: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

25

Cluster-Level Software: Anforderungen

• Ressource Management– Zuordnung von Tasks zu Ressourcen

– Ziel: Performanz, effizienter Energieverbrauch

• Hardware Abstraction– Virtualisierung

– Ziel: Einheitlicher (einfacher) Ressourcen-Zugriff

• Deployment und Maintenance– Software-Upgrades, Monitoring

– Ziel: geringerer Nutzer/Administrator-Aufwand

• Programming Framework– einfache Realisierung paralleler/web-scale Anwendungen

– Ziel: Erhöhung der Produktivität von Programmierern

Page 26: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

26

Cluster-Level-Software: Besonderheiten

• vs. Desktop-Software– inhärente Parallelität

• effiziente Ausnutzung aller verfügbarer Ressourcen

– relativ homogene Plattform• begrenzte Heterogenität durch schrittweise Ersetzen defekter Hardware

– große Varianz in Workload• Varianz der Applikationen, Nutzungsvarianz (Peaks), ...

– “Fault-free“-Anforderung• Verfügbarkeit trotz täglicher Hardware-Defekte auf Grund Größe eines Data Centers

• vs. High Performance Computing– nicht vorhersagbarer (Daten-)Input

• Umfang, Schema, ...

– sehr große Datenvolumina• z.T. auch bei HPC

– nicht nur Computing• Speicher-Dienste, Datenbanken, Web-Applikationen, ...

Page 27: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

27

Techniken für Performance & Availability

• Replication– Redundante Speicherung von Daten

– Anwendung: u.a. Dateisystem (GFS/HFS), Storage Service (Amazon Dynamo)

• Load Balancing– Workload-Aufteilung auf mehrere Knoten

– Anwendung: parallele Programmierung (MapReduce), WebApps (Google App Engine)

• Data Partitioning– Aufteilung eines Datenbestandes in mehrere Partitionen zur effizienten Bearbeitung

– Anwendung: u.a. Cloud-Datenbank (Bigtable), parall. Programmierung (MapReduce)

• Eventual Consistency– Änderungen am Datenbestand werden nicht sofort an Replikate weitergereicht

– Anwendung: Storage Service (Amazon Dynamo)

• Weitere– Überprüfung ob Nodes “still alive”, Überprüfung der Datenintegrität, Datenkompression

Page 28: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

28

Techniken für Performance & Availability (2)Performance Availability

Replication Schutz vor Datenverlust

Data Partitioning Recovery schneller bei (kleinen) Partitionen

Load Balancing---

Eventual Consistency

Effiziente parallele Writes

Health Checking und Integritäts-prüfung

---Identifikation fehlerhafter

Knoten; keine Requests an nicht verfügbare/langsame Knoten

Daten-kompression ---

Page 29: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

29

Infrastructure as a Service

• Bereitstellung (Mieten) von Ressourcen + Infrastruktur-Tools– CPU, Storage, Network

– “Lokaler Server in der Cloud”

– früher: Utility Computing

• Keine automatische Skalierung

• Hohe Flexibilität– Bezahlung nach Nutzung (pro CPU-Stunde, pro MB, ...)

– Zeitraum und “Größe” frei wählbar (“1000 CPUs für 1 Stunde”)

• Beispiele– Amazon Elastic Compute Cloud (EC2), Rackspace

– Amazon Simple Storage Service (S3)

– Amazon Route 53

Page 30: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

30

Platform as a Service

• Framework zur Entwicklung und Bereitstellung von Applikationen– Infrastruktur führt “hochgeladenen” Quellcode aus

• Begrenzte automatische Skalierung– Dynamische Allokation von Instanzen je nach Nutzungsaufkommen

– Dynamische Partitionierung von Daten möglich

• Mittlere Flexibilität– Bezahlung nach Nutzung (CPU, Speicher, Requests, ...)

– Einschränkungen beim Quellcode (Sprache, nutzbare Bibliotheken, ...)

• Beispiele– Amazon Elastic MapReduce, Hadoop MapReduce

– Google App Engine

Page 31: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

31

Software as a Service

• Bereitstellung von (Web)-Applikationen zur sofortigen Nutzung– Standardisierte Software (z.B. Office-Produkte, CRM, ...)

– Datenspeicherung i. Allg. beim Anbieter

• Automatische Skalierung durch Anbieter– definierte Verfügbarkeit / Response-Times möglich

• Flexibilität– flexible Bezahlung nach Nutzungsumfang (statt Lizenzkosten)

– “Customisierung” nur eingeschränkt möglich

• Beispiele– Google Apps (Docs, Mail, ...)

– Salesforce

Page 32: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

32

Vergleich IaaS, PaaS und SaaS

IaaS PaaS SaaS

Nutzer Administrator Anwendungsentwickler Endnutzer

KomponentenCompute Capacity

App Framework +Compute Capacity

Business Layer +App Framework +Compute Capacity

Bezahlung CPU, Speicher, ...Requests, Dienstnutzung (DB, Mail, ...) ...CPU, Speicher, ...

Nutzungsdauer/-intensität (je nach App-Typ)

Anwendungs-fälle

Compute CapacityCloud Storage

Cloud-DB Laufzeit-umgebung

ErweiterbareWebapps

WebApps

Beispiele Amazon EC2+ S3, Azure Storage

BigTable, SimpleDB

MapReduce,Google App Engine

Facebook Google Mail

Page 33: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

33

Die “Amazon-Cloud”

Building powerful web applications in the AWS Cloud : A Love Story - Jinesh Varia: http://www.slideshare.net/AmazonWebServices/building-powerful-web-applications-in-the-aws-cloud-a-love-story-jinesh-varia

Page 34: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

34

Amazon EC2

• IaaS: Mieten von Linux-Instanzen– RESTful Webservices (API) zur Allokation

und Management von Ressourcen mittels virtueller Maschinen (VM)

– Erstellung eigener VM’s möglich

• Basiert auf Xen Hypervisor– 1 EC2-CU (“Compute Unit”)

= CPU capacity of 1.0-1.2 GHz 2007 Opteron or 2007 Xeon

– CPU: 1 core @ 1 CU bis 8 cores @ 2.5 CU

– Virtuelle Speicher: 1.7 GB bis 15 GB

– Linux oder Windows; Preise (EU): $0.10 bis $2.50

• Integration mit anderen Diensten, u.a.– Elastic Block Store (EBS) = Persistenter Blockspeicher, der zur Laufzeit mit EC2-

VM verbunden werden kann

Facilities

Hardware

Abstraction

Connectivity & Delivery

APIs

Infra

stru

ctur

e as

a S

ervi

ce

http://aws.amazon.com/ec2 http://www.slideshare.net/guestd0b61e/amazon-ec2-application-design

Page 35: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

35

Zusammenfassung

• Hardware-Infrastruktur– Data Center sind Basis einer effiziente Cloud-Infrastruktur

– “Scale out” statt “Scale up”

• Dateisysteme für die Cloud, z.B. GFS– optimiert für große Datenmengen und konkurrierende Zugriffe

• Software-Infrastruktur– Software/Platform/Infrastructure as a Service

– Techniken für Performance & Availability

Page 36: Kapitel 2: Infrastruktur und Services - uni-leipzig.dedbs.uni-leipzig.de/file/CDM_SS_2012_02_Infrastruktur...• Sobald “High-End-Server” geclustertwerden (müssen), sinkt der

36

Quellen und Literatur

• [BH09] Barroso and Hölzle: The datacenter as a computer: An introduction to the design of warehouse-scale machines. Morgan & Claypool, 2009

• [De09] Dean: Designs, Lessons and Advice from Building Large Distributed Systems. Keynote LADIS 2009

• [DGLS99] Devlin, Gray, Laing, Spix: Scalability Terminology, MS Tech Report, Dec. 1999

• [GGL03] Ghemawat, Gobioff, and Leung: The Google File System. Symposium on Operating Systems Principles, 2003

• [HDFS] http://hadoop.apache.org/hdfs/• [1] http://www.slideshare.net/gwendal/cloud-engineering

• [2] http://www.slideshare.net/Clogeny/cloud-computing-making-the-right-choices

• [3] http://www.slideshare.net/AmazonWebServices/building-powerful-web-applications-in-the-aws-cloud-a-love-story-jinesh-varia