Blockseminar Software as a Service, Cloud Computing und aktuelle Entwicklungen Einführung in Cloud Computing und SaaS robert.steingraeber@uni-jena.de
Gliederung 1) Einführung und Definition 2) Klassifikationen 3) Anwendungsfälle 4) Vorteile 5) Nachteile / Bedenken 6) Technologien / Paradigmen 7) Schlüsse und Fragen der Zukunft 2
Gliederung 1) Einführung und Definition a) Einleitung und Beschreibung b) Probleme der Definition c) Versuch einer Definition 2) Klassifikationen 3) Anwendungsfälle 4) Vorteile 5) Nachteile / Bedenken 6) Technologien / Paradigmen 7) Schlüsse und Fragen der Zukunft 3
Einleitung As of now, computer networks are still in their infancy, but as they grow up and become sophisticated, we will probably see the spread of computer utilities which, like present electric and telephone utilities, will service individual homes and offices across the country. Leonard Kleinrock, 1969 (Chef-Entwickler des ARPANET-Projektes) 4
Probleme der Definition A lot of people are jumping on the [cloud] bandwagon, but I have not heard two people say the same thing about it. There are multiple definitions out there of the cloud. Andy Isherwood, 2008, ZDnet News (Vize-Präsident European Software Sales, Hewlett-Packard) The interesting thing about Cloud Computing is that we ve redefined Cloud Computing to include everything that we already do I don t understand what we would do differently in the light of Cloud Computing other than change the wording of some of our ads. Larry Ellison, 2008, Wall Street Journal (Geschäftsführer Oracle) 5
Versuch einer Definition Grundlagen: SaaS: Anwendung als Service über Internet Cloud: Datenzentren, die Service zur Verfügung stellen (Public & Private) Utility Computing: Service für Allgemeinheit zur Verfügung durch Bezahlung pro Leistung Business-on-Demand: je nach Bedarf zur Verfügung stellen 6
Versuch einer Definition Definition: Möglichkeit der Nutzung des Internets (Cloud) zur Datenverarbeitung (Computing) Intra-/Internet ermöglicht unternehmens-/weltweiten Zugriff Cloud Computing = SaaS + Utility Computing [AFG 09] Dienst/Ressourcen on-demand von mehreren Nutzern nutzbar virtuelle, hochskalierbare Infrastruktur des Anbieters 7
Versuch einer Definition Charakteristika: 1) On Demand selfservice 2) Breitbandzugriff 3) Ressourcen Pooling 4) Schnelle Skalierbarkeit 5) Messbarer Dienst 8
Gliederung 1) Einführung und Definition 2) Klassifikationen a) Klassifikation von Rollen b) Klassifikation von Clouds c) Klassifikation von Cloud-Angeboten 3) Anwendungsfälle 4) Vorteile 5) Nachteile / Bedenken 6) Technologien / Paradigmen 7) Schlüsse und Fragen der Zukunft 9
Klassifikation von Rollen Nutzer Anbieter Provider Bereitstellung von IT-Infrastruktur/Ressourcen riesige Rechenzentren benötigt ungenutzte Ressourcen nutzbar machen [AFG 09] 10
Klassifikation von Rollen Nutzer Anbieter Provider [AFG 09] sowohl Nutzer als auch Provider nutzt Ressourcen/Infrastruktur der Cloud (i.d.r. kein eigenes Rechenzentrum) stellt Web-Anwendungen zur Verfügung 11
Klassifikation von Rollen Nutzer Anbieter Provider nutzt Web-Anwendungen des Anbieters Internetzugang weltweiter Zugriff (über Browser) [AFG 09] 12
Klassifikation von Clouds Spezialfall: Community Cloud [BKNT 10] 13
Klassifikation von Cloud-Angeboten fundamentale Rechenressourcen zur Verfügung stellen abstrahierte Sicht auf Hardware richtet sich an Systemarchitekten Kunde Kontrolle über OS, Speicher, eingesetzte Anwendungen Schnittstelle zur Ressourcenverwaltung (RS) 2 Möglichkeiten der Realisierung [BKNT 10] physische Hardware (PRS) virtuelle Hardware (VRS) 14
Klassifikation von Cloud-Angeboten Cloud-Plattform für Anwendungsentwicklung zur Verfügung stellen richtet sich an Entwickler Kunde Kontrolle über gesetzte Anwendungen Programmierumgebung (PE) Ausführungsumgebung (EE) [BKNT 10] 15
Klassifikation von Cloud-Angeboten Anwendungen zur Verfügung gestellt richtet sich an Endkunden Kunde hat keine Kontrolle (Infrastruktur, Ressourcen, usw.) Anwendungen von überall erreichbar Anwendungen meist auf IaaS- oder PaaS- Basis entwickelt 2 Angebote [BKNT 10] Applications Services Applications 16
Gliederung 1) Einführung und Definition 2) Klassifikationen 3) Anwendungsfälle 4) Vorteile 5) Nachteile / Bedenken 6) Technologien / Paradigmen 7) Schlüsse und Fragen der Zukunft 17
The New York Times Projekt Times Machine 6 Millionen Artikel 4 TB an Daten Amazon EC2 Konventionell Cloud Dauer 8 Monate 3 Tage Kosten neue Server 25 $ 18
Animoto Videodienst über Web / Vernetzung mit Facebook dramatischer Nachfrageanwuchs 25.000 Nutzer pro Stunde 50 auf 3500 Server in 3 Tagen 19
Gliederung 1) Einführung und Definition 2) Klassifikationen 3) Anwendungsfälle 4) Vorteile 5) Nachteile / Bedenken 6) Technologien / Paradigmen 7) Schlüsse und Fragen der Zukunft 20
Vorteile 1) Bezahlen nach Verbrauch 2) Umwandlung von Kapitalkosten in Betriebskosten 3) Zentrale Verwaltung 4) Skalierbarkeit a) Flexibilität b) Risikoreduktion des Kunden 5) Reduzierte Recovery-Kosten 6) Erweiterung des Angebots durch gemeinsame Plattform 7) Erhöhter Automatismus 8) Systemunabhängigkeit 9) Unabhängigkeit von Spezialhardware 21
Vorteile [AFG 09] 22
Vorteile Cloud Computing 23
Gliederung 1) Einführung und Definition 2) Klassifikationen 3) Anwendungsfälle 4) Vorteile 5) Nachteile / Bedenken 6) Technologien / Paradigmen 7) Schlüsse und Fragen der Zukunft 24
Übersicht 10 wichtigste Bedenken [BKNT 10] 25
Beispiel: Flaschenhals 10 TB von Uni Berkeley zu Amazon in Seattle per Netz ungefähre Bandbreite 20 Mbit/sek Dauer: 45 Tage Kosten: 1000 $ Übernachtsendung in 1 TB Platten Dauer: < 1 Tag Kosten: 400 $ effektive Bandbreite: 1500 Mbit/sek [AFG 09] 26
Gliederung 1) Einführung und Definition 2) Klassifikationen 3) Anwendungsfälle 4) Vorteile 5) Nachteile / Bedenken 6) Technologien / Paradigmen a) Technologie b) Ökonomie c) Verbreitung/Zugänglichkeit 7) Schlüsse und Fragen der Zukunft 27
Technologie Cluster Wunsch: Rechenleistung, Speicherkapazität und Datendurchsatz erhöhen Ein Cluster besteht aus einer Gruppe von miteinander vernetzten eigenständigen Computern (Knoten), die sich wie ein einheitlicher Uniprozessor verhalten. Dabei ist die Art der Knoten beliebig (PC, Workstation, Server, etc.). [BBKS 08] extremer Einsatz in großen Rechenzentren ( Datacenters ) Schlüsseltechnologie 28
Grid Computing Technologie Technik zur Integration und gemeinsamen, institutionsübergreifenden, ortsunabhängigen Nutzung verteilter Ressourcen auf Basis bestehender Kommunikationsinfrastrukturen, wie z.b. dem Internet. Unterschied zu Clustern: Ressourcen in verschiedenen, unabhängigen Organisationen, die sich selbst um deren Verwaltung kümmern Unterschied zu Cloud: wissenschaftlich (Grid) vs. wirtschaftlich (Cloud) [BBKS 08] 29
Technologie Virtualisierung Grundlage der meisten Cloud-Architekturen abstrakte, logische Sicht auf physische Ressourcen Idee: physische Ressourcen in Pools zusammenfassen und gemeinsam verwalten 30
Ökonomie Utility Computing IT-Leistungen in Form von Services Business on Demand pay per use bzw. pay as you go Service-Level-Agreement (SLA) 31
Ökonomie Preisverfall/Leistungsexplosion der Hardware Preis pro Mio. Instruktionen pro Sekunde (MIPS) 1991 486 225 $ 1997 Pentium II 4 $ 2004 Pentium 4 0,05 $ 2007 Core 2 Duo < 0,02 $ Festplattenpreis Pro Megabyte 1991 5 $ 1999 0,05 $ 2008 < 0,01 $ [BBKS 08] 32
Verbreitung/Zugänglichkeit Internet Cloud nur über Netz erreichbar Web 2.0 Social-Web Web-Services Web als Programmierplattform Breitbandzugang essentiell 33
Verbreitung/Zugänglichkeit [BBC 10] 34
Verbreitung/Zugänglichkeit [BBC 10] 35
Verbreitung/Zugänglichkeit [BBC 10] 36
Verbreitung/Zugänglichkeit [BBC 10] 37
Gliederung 1) Einführung und Definition 2) Klassifikationen 3) Anwendungsfälle 4) Vorteile 5) Nachteile / Bedenken 6) Technologien / Paradigmen 7) Schlüsse und Fragen der Zukunft 38
Schlüsse völlige Änderung in der IT-Landschaft Bedürfnis der Wirtschaft Service direkt an Kunden zu liefern erfüllt (Service wie Wasser, Strom, ) früher: Wachstum eines Unternehmens über Jahre heute: Wachstum innerhalb weniger Monate sehr umstrittenes Thema viele Möglichkeiten und Potenziale omnipräsente Sicherheitsthematik und Misstrauen der Etablierten wo der Weg hinführt ist ungewiss 39
Literaturverzeichnis [AFG 09] Michael Armbrust, Armando Fox, Rean Griffith et al. Above the Clouds: A Berkeley View of Cloud Computing, UC Berkeley Reliable Adaptive Distributed Systems Laboratory, Berkeley, USA, 2009. [BBC 10] BBC. The Global Growth of Broadband, URL:http://news.bbc.co.uk/2/hi/technology/ 8255695.stm [Stand: 10.05.2010] [BBKS 08]Günther Bengel, Christian Braun, Marcel Kunze und Karl-Uwe-Stucky. Masterkurs Parallele und Verteilte Systeme. Grundlagen und Programmierung von Multicoreprozessoren, Multiprozessoren, Cluster und Grid, Vieweg + Teubner, Wiesbaden, Deutschland 2008. [BKNT 10]Christian Braun, Marcel Kunze, Jens Nimis und Stefan Tai. Cloud Computing: Webbasierte dynamische IT-Services, Springer Verlag, Berlin, Heidelberg, Deutschland, 2010. [BM 09] Glenn Brunette und Rich Mogull. Security Guidance for Critical Areas of Focus in Cloud Computing V2.1, Cloud Security Alliance, 2009. 40
Literaturverzeichnis [BYV 09] Rajkumar Buyya, Chee Shin Yeo und Srikumar Venugopal. Market-Oriented Cloud Computing: Vision, Hype and Reality for Delivering IT Services as Computing Utilities, Grid Computing and Distributed Systems (GRIDS) Laboratory, University of Melbourne, Melbourne, Australia, 2009. [C 09] Mache Creeger. Cloud Computing: An Overview, ACM, New York, USA, 2009. [G 09] David Grünbeck. Einführung in das Thema Cloud Computing, Cloud Computing Seminar Universität Heidelberg, Heidelberg, Deutschland, 2009. [LKNTS 09] Alexander Lenk, Markus Klems, Jens Nimis, Stefan Tai und Thomas Sandholm. What's Inside the Cloud? An Architectural Map of the Cloud Landscape, IEEE Computer Society, Washington, DC, USA, 2009. 41