Cloud
Computing

Florian Wagner
NTDB November 2008
Varianten

• Infrastruktur
    Amazon EC2, Sun Grid, Skytap
• (Software-)Platform
    Google AppEngine, Mosso, Salesforce
Amazon EC2

• EC2 = „Elastic Compute Cloud“
• eng verknüpft mit „Simple Storage Service“ (S3)
• beides Teil von „Amazon We...
EC2 Komponenten
• Amazon Machine Image (AMI)
    „Blueprint“ für neue Instanzen
    kein Schreibzugriff seitens der Instan...
Instanz-Typen
           CPU (CU)         RAM (GB)       Instance Storage (TB)
                                           ...
Softwareunterstützung

• Betriebssysteme
    RHEL, Oracle Enterprise Linux, openSUSE,
    Fedora, Debian, etc.
    Windows...
Administration

• Vollständige Steuerung über
    Command-line Tools
    API
     ✦   SOAP bzw. REST
     ✦   Libraries ve...
Features

• Availability Zones
    Unterteilung von Regionen in geographisch
    verteilte und technisch unabhängige
    „...
Features
• Elastic Block Store
    „Amazon EBS volumes are highly available,
    highly reliable volumes that can be attac...
Features

• Elastic IP Addresses
    IP-Adresse verknüpft mit Account, nicht mit
    konkreter Instanz
    programmatische...
Simple Storage Service
• bis zu 100 Buckets pro Benutzer
• Objects (Dateien) werden identifiziert durch
  Bucket + Key (Dat...
Szenario
S3          EC2
                          Client
  AMI         Instanz
            (AppServer)
                  ...
Kosten
EC2                     min              max
Instanz (pro h)        $0,10             $1,20
1GB Transfer           ...
Getting Started

• http://aws.amazon.com/ec2/
• http://aws.amazon.com/s3/
• „Stunden-Server“, c't 14/08, Seite 168
• „Eime...
Google AppEngine
• Framework für Python
• Platform beinhaltet persistenten Speicher
  („Datastore“)
• Unterstützung für we...
API-Komponenten
• Datastore
• Images
• Mail
• Memcache
• URL Fetch
• Users
Datastore
• Models
   Subklasse von db.Model
   enthält ein oder mehrere Properties
    ✦   StringProperty, TextProperty, ...
Datastore API

• get(keys)
• put(entities)
• delete(entities)
• run_in_transaction(function, args, kwargs)
Datastore

• Google Query Language GQL
 SELECT * FROM <kind>
     [WHERE <condition> [AND <condition> ...]]
     [ORDER BY...
Limits / Quotas
• 1MB-Limit für Datenstrukturen
• 10-Sekunden-Limit für Antwortzeit
• „short term high CPU quota“
• 1000-R...
Demo
Getting Started


• http://code.google.com/appengine/
• http://code.google.com/appengine/docs/
  gettingstarted/
• http://...
Cloud Computing
Cloud Computing
Cloud Computing
Cloud Computing
Cloud Computing
Cloud Computing
Nächste SlideShare
Wird geladen in …5
×

Cloud Computing

1.196 Aufrufe

Veröffentlicht am

Veröffentlicht in: Technologie
0 Kommentare
0 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Keine Downloads
Aufrufe
Aufrufe insgesamt
1.196
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
19
Aktionen
Geteilt
0
Downloads
25
Kommentare
0
Gefällt mir
0
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

Cloud Computing

  1. 1. Cloud Computing Florian Wagner NTDB November 2008
  2. 2. Varianten • Infrastruktur Amazon EC2, Sun Grid, Skytap • (Software-)Platform Google AppEngine, Mosso, Salesforce
  3. 3. Amazon EC2 • EC2 = „Elastic Compute Cloud“ • eng verknüpft mit „Simple Storage Service“ (S3) • beides Teil von „Amazon Web Services“ • Paravirtualisierung auf Basis von Xen
  4. 4. EC2 Komponenten • Amazon Machine Image (AMI) „Blueprint“ für neue Instanzen kein Schreibzugriff seitens der Instanz • Instance laufende, virtuelle Maschine • Instance Storage Festplattenspeicher einer Instanz verschwindet bei Herunterfahren der Instanz
  5. 5. Instanz-Typen CPU (CU) RAM (GB) Instance Storage (TB) 20,0 15,0 8,0 7,5 7,0 5,0 4,0 1,7 1,7 1,7 1,7 1,0 0,9 0,2 0,4 S L XL High CPU M High CPU XL Stand 11/2008, CU = Compute Unit
  6. 6. Softwareunterstützung • Betriebssysteme RHEL, Oracle Enterprise Linux, openSUSE, Fedora, Debian, etc. Windows 2003 Server • Software („building block“ AMIs) Oracel 11g, MSSQL Server 2005, JBoss, etc.
  7. 7. Administration • Vollständige Steuerung über Command-line Tools API ✦ SOAP bzw. REST ✦ Libraries verfügbar (für Ruby, Java, C#, ...)
  8. 8. Features • Availability Zones Unterteilung von Regionen in geographisch verteilte und technisch unabhängige „availability zones“. erhöhte Ausfallsicherheit bei Nutzung mehrerer „availability zones“
  9. 9. Features • Elastic Block Store „Amazon EBS volumes are highly available, highly reliable volumes that can be attached to a running Amazon EC2 instance and are exposed as standard block devices.“ Lebenszyklus unabhängig von Instanz Snapshot nach S3, repliziert über alle „availability zones“
  10. 10. Features • Elastic IP Addresses IP-Adresse verknüpft mit Account, nicht mit konkreter Instanz programmatisches remapping der IP-Adresse via API kein „propagation delay“
  11. 11. Simple Storage Service • bis zu 100 Buckets pro Benutzer • Objects (Dateien) werden identifiziert durch Bucket + Key (Dateiname) • flache Hierarchie, aber Key darf „/“ enthalten • z.B. Bucket „foobar“, Key „foo/bar.txt“ http://foobar.s3.amazonaws.com/foo/bar.txt • Administration via REST oder SOAP API • BitTorrent-Unterstützung (/foo/bar.txt?torrent)
  12. 12. Szenario S3 EC2 Client AMI Instanz (AppServer) Client AMI Instanz (AppServer) AMI Client Instanz (DB) EBS Snapshot EBS
  13. 13. Kosten EC2 min max Instanz (pro h) $0,10 $1,20 1GB Transfer $0,10 $0,17 S3 1GB Storage $0,12 $0,15 1GB Transfer $0,10 $0,17 1k Requests $0,01 $0,10 Transfer zwischen EC2 und S3 (US) ist kostenlos Stand 11/2008
  14. 14. Getting Started • http://aws.amazon.com/ec2/ • http://aws.amazon.com/s3/ • „Stunden-Server“, c't 14/08, Seite 168 • „Eimerweise Online-Speicher“, c't 23/08, Seite 186
  15. 15. Google AppEngine • Framework für Python • Platform beinhaltet persistenten Speicher („Datastore“) • Unterstützung für weitere Sprachen in Entwicklung • Django-Unterstützung (mittelmäßig) • Unterstützung für SSO durch Google-Accounts • lokale Entwicklungsumgebung inkl. Datastore
  16. 16. API-Komponenten • Datastore • Images • Mail • Memcache • URL Fetch • Users
  17. 17. Datastore • Models Subklasse von db.Model enthält ein oder mehrere Properties ✦ StringProperty, TextProperty, ListProperty, CategoryProperty, ... ✦ ReferenceProperty zur Laufzeit für jedes Entity veränderlich
  18. 18. Datastore API • get(keys) • put(entities) • delete(entities) • run_in_transaction(function, args, kwargs)
  19. 19. Datastore • Google Query Language GQL SELECT * FROM <kind> [WHERE <condition> [AND <condition> ...]] [ORDER BY <property> [ASC | DESC] [, ...] [LIMIT [<offset>,]<count>] [OFFSET <offset>] <condition> := <property> {< | <= | > | >= | = | != } <value> <condition> := <property> IN <list> <condition> := ANCESTOR IS <entity or key>
  20. 20. Limits / Quotas • 1MB-Limit für Datenstrukturen • 10-Sekunden-Limit für Antwortzeit • „short term high CPU quota“ • 1000-Records-Limit für Queries • max. 1000 Dateien/500MB pro Anwendung • diverse Request- und Call-Limits
  21. 21. Demo
  22. 22. Getting Started • http://code.google.com/appengine/ • http://code.google.com/appengine/docs/ gettingstarted/ • http://aptana.com/python

×