• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Cloud Computing
 

Cloud Computing

on

  • 1,807 views

 

Statistics

Views

Total Views
1,807
Views on SlideShare
1,805
Embed Views
2

Actions

Likes
0
Downloads
23
Comments
0

2 Embeds 2

http://www.slideshare.net 1
http://www.linkedin.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Cloud Computing Cloud Computing Presentation Transcript

    • 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 Web Services“ • Paravirtualisierung auf Basis von Xen
    • 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
    • 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
    • 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.
    • Administration • Vollständige Steuerung über Command-line Tools API ✦ SOAP bzw. REST ✦ Libraries verfügbar (für Ruby, Java, C#, ...)
    • Features • Availability Zones Unterteilung von Regionen in geographisch verteilte und technisch unabhängige „availability zones“. erhöhte Ausfallsicherheit bei Nutzung mehrerer „availability zones“
    • 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“
    • Features • Elastic IP Addresses IP-Adresse verknüpft mit Account, nicht mit konkreter Instanz programmatisches remapping der IP-Adresse via API kein „propagation delay“
    • 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)
    • Szenario S3 EC2 Client AMI Instanz (AppServer) Client AMI Instanz (AppServer) AMI Client Instanz (DB) EBS Snapshot EBS
    • 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
    • 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
    • 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
    • API-Komponenten • Datastore • Images • Mail • Memcache • URL Fetch • Users
    • 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
    • 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 <property> [ASC | DESC] [, ...] [LIMIT [<offset>,]<count>] [OFFSET <offset>] <condition> := <property> {< | <= | > | >= | = | != } <value> <condition> := <property> IN <list> <condition> := ANCESTOR IS <entity or key>
    • 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
    • Demo
    • Getting Started • http://code.google.com/appengine/ • http://code.google.com/appengine/docs/ gettingstarted/ • http://aptana.com/python