1. Cloud Computing
we:namix GmbH
Dipl-Inform. Stefan Wendel, 12.07.2012
2. Vorstellung
• Dipl.-Inform. Stefan Wendel
• Software-Architektur, Projektmanagement, Entwicklung
• J2EE- und webbasierte Unternehmensanwendungen
• IBM, Oracle, Accenture
• http://www.xing.com/profile/Stefan_Wendel
• https://twitter.com/stef_84
3. Agenda
Kapitel 1 - Was ist Cloud-Computing ?
Kapitel 2 - Umsetzung von Cloud-Computing
Kapitel 3 - Nutzen von Cloud-Computing
4. Kapitel 1
Was ist Cloud-Computing ?
1.1 Die Cloud im Kontext eines Unternehmens
1.2 Definition von Cloud-Computing
1.3 Arten von Clouds
1.4 Kennzeichen von Cloud-Computing
1.5 Heutige Praxisrelevanz von Cloud-Computing
5. 1.1 Die Cloud im Kontext eines Unternehmens
Strategie | Kontinuierliche Verbesserung | Marktsituation
Die Firma
Agilität
6. 1.1 Die Cloud im Kontext eines Unternehmens
Strategie | Kontinuierliche Verbesserung | Marktsituation
Die Firma
Analyse Entwurf+
Design
Geschäfts- Service-
prozess orientierte
modellierung Architektur
Agilität
Cloud- Agile-
Computing Software-
entwicklung
Betrieb Entwicklung
7. 1.1 Die Cloud im Kontext eines Unternehmens
Strategie | Kontinuierliche Verbesserung | Marktsituation
Die Firma
Time to Market
Analyse Entwurf+
Design
Geschäfts- Service-
prozess orientierte
modellierung Architektur
Agilität
Cloud- Agile-
Computing Software-
entwicklung
Betrieb Entwicklung
8. 1.1 Die Cloud im Kontext eines Unternehmens
Strategie | Kontinuierliche Verbesserung | Marktsituation
Die Firma
Time to Market
Analyse Entwurf+
Design
Geschäfts- Service-
prozess orientierte
modellierung Architektur
Agilität
Cloud- Agile- Adapt to Change
Computing Software-
entwicklung
Betrieb Entwicklung
9. 1.1 Die Cloud im Kontext eines Unternehmens
Strategie | Kontinuierliche Verbesserung | Marktsituation
Die Firma
Time to Market
Analyse Entwurf+
Design
Geschäfts- Service-
prozess orientierte
modellierung Architektur
Agilität ist im modernen
Markt notwendig für Wachstum und Überleben Change
Cloud- Agile- Adapt to
Computing Software-
entwicklung
Betrieb Entwicklung
10. 1.2 Definition von Cloud-Computing
Cloud computing ist ein
Paradigma, mit dem
externen Kunden auf Basis
von Internet-Technologien
hochgradig skalierbare
IT-Ressourcen
“as a service” bereitgestellt
werden
(http://www.gartner.com/it-glossary/cloud-computing)
11. 1.3 Arten von Clouds
• Public Cloud = Unternehmensexterne Nutzung einer Cloud
• Daten, Software, Infrastruktur extern
• Rechenzentrum transparent für Anwender
• Cloud-Infrastruktur „as a service“ über eine Web-Service-Schnittstelle bedienbar
• Prozesse zum Betrieb in der Cloud müssen in bestehende Betriebsprozesse integriert werden
• Private Cloud = Unternehmensinterne Realisierung einer Cloud
• Daten, Software, Infrastruktur intern
• Internes Rechenzentrum mit Anforderungen an Verfügbarkeit, Skalierbarkeit, Ausfallsicherheit
• Interne Cloud-Infrastruktur für Bedienung notwendig
• Bestehende Betriebsprozesse müssen auf die Private Cloud angepasst werden
• (Hybrid Cloud = Mischform aus Public und Private Cloud)
• (Personal Cloud = Persönliche Cloud für Zugriff auf Daten von verschiedenen Endgeräten)
> Die Entscheidung zur Nutzung einer Public oder Private Cloud strategisch wichtig
12. 1.4 Kennzeichen von Cloud-Computing
Hoher Grad an Standardisierung der angebotenen Produkte und
Standardisierung
Dienstleistungen
Software, Betriebssysteme, Ausstattungsmerkmale je nach
Flexibilität
Anforderungen des Kunden wählbar
Schnittstellen- Kunde nutzt die Cloud über definierte Service-Schnittstellen für
Steuerung Kapazitätsmanagement, operative Steuerung und Überwachung
Transparenz Interne Realisierung für den Kunden transparent
Automatisierte Die Bereitstellung von IT-Ressourcen erfolgt automatisiert und wird
Provisionierung durch den Kunde selbstständig angestoßen
IT-Ressourcen werden in dem Zeitpunkt bereitgestellt, in dem sie
On-Demand
gebraucht werden
Je nach Bedarf können Ressourcen zeitnah abgegeben oder
Elastizität
hinzugenommen werden
Bedarfsorientierte Bezahlmodell pro Nutzungseinheit einer Ressource (z.B. Cores/Stunde)
Abrechnung verlagert Investitionskosten in laufende Kosten
„Virtually unlimited computing power“ (Quelle: Citrix.com); Schätzung:
Größe
500.000 physische Server bei Amazon (Quelle: http://wp.me/pqvFA-2M)
Cloud-Computing unterscheidet sich deutlich vom klassischen Rechenzentrumsbetrieb
und stellt die nächste Evolutionsstufe in der Nutzung von Infrastruktur und Software dar.
13. 1.4 Kennzeichen von Cloud-Computing
Hoher Grad an Standardisierung der angebotenen Produkte und
Standardisierung
Dienstleistungen
Flexibilität
Software, Betriebssysteme, Ausstattungsmerkmale je nach KLASSISCH
Anforderungen des Kunden wählbar
Schnittstellen- Kunde nutzt die Cloud über definierte Service-Schnittstellen für
Steuerung Kapazitätsmanagement, operative Steuerung und Überwachung
Transparenz Interne Realisierung für den Kunden transparent
Automatisierte Die Bereitstellung von IT-Ressourcen erfolgt automatisiert und wird
Provisionierung durch den Kunde selbstständig angestoßen
IT-Ressourcen werden in dem Zeitpunkt bereitgestellt, in dem sie
On-Demand
gebraucht werden
Je nach Bedarf können Ressourcen zeitnah abgegeben oder
Elastizität
hinzugenommen werden
Bedarfsorientierte Bezahlmodell pro Nutzungseinheit einer Ressource (z.B. Cores/Stunde)
Abrechnung verlagert Investitionskosten in laufende Kosten
„Virtually unlimited computing power“ (Quelle: Citrix.com); Schätzung:
Größe
500.000 physische Server bei Amazon (Quelle: http://wp.me/pqvFA-2M)
Cloud-Computing unterscheidet sich deutlich vom klassischen Rechenzentrumsbetrieb
und stellt die nächste Evolutionsstufe in der Nutzung von Infrastruktur und Software dar.
14. 1.4 Kennzeichen von Cloud-Computing
Hoher Grad an Standardisierung der angebotenen Produkte und
Standardisierung
Dienstleistungen
Flexibilität
Software, Betriebssysteme, Ausstattungsmerkmale je nach KLASSISCH
Anforderungen des Kunden wählbar
Schnittstellen- Kunde nutzt die Cloud über definierte Service-Schnittstellen für
Steuerung Kapazitätsmanagement, operative Steuerung und Überwachung
Transparenz Interne Realisierung für den Kunden transparent
Automatisierte Die Bereitstellung von IT-Ressourcen erfolgt automatisiert und wird
Provisionierung durch den Kunde selbstständig angestoßen
IT-Ressourcen werden in dem Zeitpunkt bereitgestellt, in dem sie
On-Demand
gebraucht werden
Je nach Bedarf können Ressourcen zeitnah abgegeben oder
Elastizität
hinzugenommen werden
Bedarfsorientierte Bezahlmodell pro Nutzungseinheit einer Ressource (z.B. Cores/Stunde)
Abrechnung verlagert Investitionskosten in laufende Kosten
„Virtually unlimited computing power“ (Quelle: Citrix.com); Schätzung:
Größe
500.000 physische Server bei Amazon (Quelle: http://wp.me/pqvFA-2M)
Cloud-Computing unterscheidet sich deutlich vom klassischen Rechenzentrumsbetrieb
und stellt die nächste Evolutionsstufe in der Nutzung von Infrastruktur und Software dar.
15. 1.4 Kennzeichen von Cloud-Computing
Hoher Grad an Standardisierung der angebotenen Produkte und
Standardisierung
Dienstleistungen
Flexibilität
Software, Betriebssysteme, Ausstattungsmerkmale je nach KLASSISCH
Anforderungen des Kunden wählbar
Schnittstellen- Kunde nutzt die Cloud über definierte Service-Schnittstellen für
Steuerung Kapazitätsmanagement, operative Steuerung und Überwachung
Transparenz Interne Realisierung für den Kunden transparent
Automatisierte Die Bereitstellung von IT-Ressourcen erfolgt automatisiert und wird
AGIL
Provisionierung durch den Kunde selbstständig angestoßen +
IT-Ressourcen werden in dem Zeitpunkt bereitgestellt, in dem sie UTILITY
On-Demand
gebraucht werden
Je nach Bedarf können Ressourcen zeitnah abgegeben oder
Elastizität
hinzugenommen werden
Bedarfsorientierte Bezahlmodell pro Nutzungseinheit einer Ressource (z.B. Cores/Stunde)
Abrechnung verlagert Investitionskosten in laufende Kosten
„Virtually unlimited computing power“ (Quelle: Citrix.com); Schätzung:
Größe
500.000 physische Server bei Amazon (Quelle: http://wp.me/pqvFA-2M)
Cloud-Computing unterscheidet sich deutlich vom klassischen Rechenzentrumsbetrieb
und stellt die nächste Evolutionsstufe in der Nutzung von Infrastruktur und Software dar.
16. 1.5 Heutige Praxisrelevanz von Cloud-Computing
Quelle: Eclipse 2011 Community Report http://www.eclipse.org/org/community_survey/Eclipse_Survey_2011_Report.pdf
• „36% have already deployed or plans to deploy to the cloud“
• Amazon AWS ist Marktführer unter den Public Clouds
• Private Clouds gewinnen an Bedeutung
• Hybrid Clouds spielen aktuell eine Nebenrolle (Stand 2012)
17. Kapitel 2
Umsetzung von Cloud-Computing
2.1 Schematische Übersicht einer Cloud
2.2 Beispiele von Cloudangeboten
2.3 Platform as a Service (PaaS) und Infrastructure as a Service (IaaS)
2.4 Software as a Service (SaaS)
2.5 Architektur einer Cloud am Beispiel Instagram
19. 2.1 Schematische Übersicht einer Cloud
Darstellung gilt sowohl für Public, als auch für Private Clouds
„Cloud-Betriebssystem“
Virtualisierung
Rechenzentren & Hardware (Server, Switches, Storage)
20. 2.1 Schematische Übersicht einer Cloud
Darstellung gilt sowohl für Public, als auch für Private Clouds
Infrastruktur
(IaaS)
„Cloud-Betriebssystem“
Virtualisierung
Rechenzentren & Hardware (Server, Switches, Storage)
21. 2.1 Schematische Übersicht einer Cloud
Darstellung gilt sowohl für Public, als auch für Private Clouds
Plattform
(PaaS)
Infrastruktur
(IaaS)
„Cloud-Betriebssystem“
Virtualisierung
Rechenzentren & Hardware (Server, Switches, Storage)
22. 2.1 Schematische Übersicht einer Cloud
Darstellung gilt sowohl für Public, als auch für Private Clouds
Plattform
Schnittstellen-Steuerung („Cloud-API“)
(PaaS)
Infrastruktur
(IaaS)
„Cloud-Betriebssystem“
Virtualisierung
Rechenzentren & Hardware (Server, Switches, Storage)
23. 2.1 Schematische Übersicht einer Cloud
Darstellung gilt sowohl für Public, als auch für Private Clouds
Software
Plattform
Schnittstellen-Steuerung („Cloud-API“)
(PaaS)
Infrastruktur
(IaaS)
„Cloud-Betriebssystem“
Virtualisierung
Rechenzentren & Hardware (Server, Switches, Storage)
24. 2.2 Beispiele von Cloudangeboten (1/2)
Platform as a Service (PaaS)
• Anwendungsplattformen (oder: „Container“)
wie Applikationsserver oder Email sind
installiert und vorkonfiguriert
• Nutzer: Entwickler
• Plattform aus Angebot auswählbar
• Keine Installation und Konfiguration weiterer
Software notwendig
➡ Entwickler kann sich durch PaaS auf die
Entwicklung konzentrieren
• Anbieter:
• Amazon Elastic Beanstalk
• Microsoft Azure
• Heroku
• Google App Engine
25. 2.2 Beispiele von Cloudangeboten (2/2)
Infrastructure As a Service (IaaS)
• Virtualisierte Server mit Root-Zugang
• Nutzer: Systemadministratoren /
Betrieb
• Betriebssystem aus Angebot
wählbar
• Anlegen von „Images“ (Kopien des
aktuellen virtuellen Servers) als Basis
für weitere Instanzen
• Anbieter:
• Amazon EC2
• Microsoft Azure
• Rackspace Cloud Servers
26. 2.3 Schematische Übersicht
Platform/Infrastructure as a Service (PaaS/IaaS)
> In einer PaaS-Cloud bleibt die Infrastruktur und der Kern der Cloud transparent
> In der Praxis entscheiden sich Unternehmen wegen der Flexibilität fast immer für eine Umsetzung auf Level IaaS
Software
„Cloud-API“
Applikations-
Web-Server Email Content-Delivery
Plattform
server
(PaaS)
Virtuelle Server-
Storage
Netzwerk &
Datenbanken
Infrastruktur
instanzen Security
(IaaS)
„Cloud-Betriebssystem“
Virtualisierung
Rechenzentren & Hardware (Server, Switches, Storage)
27. 2.3 Schematische Übersicht
Platform/Infrastructure as a Service (PaaS/IaaS)
> In einer IaaS-Cloud bleibt der Kern der Cloud transparent
> Aber: Wie gelangt die Software auf die Server ?
Software
Applikations-
Web-Server Email Content-Delivery
Plattform
server
(PaaS)
„Cloud-API“
Virtuelle Server-
Storage
Netzwerk &
Datenbanken
Infrastruktur
instanzen Security
(IaaS)
„Cloud-Betriebssystem“
Virtualisierung
Rechenzentren & Hardware (Server, Switches, Storage)
28. 2.3 Umsetzung von Clouds in der Praxis:
PaaS und IaaS gehören zusammen!
> Im Rahmen einer agilen Entwicklungsmethode wird Entwicklern immer ein PaaS-Level angeboten
> Entscheidet sich ein Unternehmen für eine Cloud auf IaaS-Level, muss der PaaS-Level individuell umgesetzt werden
Software
Applikations-
Web-Server Email Content-Delivery
server
„Cloud-API“
Virtuelle Server- Netzwerk &
Storage Datenbanken
instanzen Security
„Cloud-Betriebssystem“
Virtualisierung
Rechenzentren & Hardware (Server, Switches, Storage)
29. 2.4 Schematische Übersicht
Software as a Service (SaaS)
Modell 1: Software in IaaS/PaaS-Cloud Modell 2: Software auslagern
(„Software as a Service“)
Public oder Private Cloud Public-SaaS-Cloud
Software
Schnittstellen-Steuerung („Cloud-API“)
Applikations- Content-
Web-Server Email
server Delivery
Software as s Service
Virtuelle
Netzwerk &
Server- Storage Datenbanken
Security
instanzen
Cloud-Betriebssystem
Virtualisierung
Rechenzentren & Hardware (Server, Switches, Storage)
Modell 1 geeignet für: Modell 2 geeignet für:
Individualsoftware („geschäftskritisch“) Standardsoftware
Kunden & interne Mitarbeiter Interne Mitarbeiter
> Einführung SaaS oft aus zwei Richtungen: Bottom-Up durch Mitarbeiter (z.B. Jira-Bugtracking in einer Abteilung)
und Top-Down z.B. als strategisches Outsourcing (Bsp.: Saleforce-CRM für die ganze Firma)
30. 2.5 Architektur einer Cloud
am Beispiel Instagram
• Instagram = Mobiler Service für Photo-Sharing,
bestehend aus App, Backend, Public API
• 40.000 neue User, 400.000 Fotos pro Tag (5 pro
Sekunde)
• Team: 3 Personen (Entwicklung + Ops =
„DevOps“)
• IaaS-Cloud auf Amazon AWS
• 100 EC2-Instanzen auf Ubuntu Linux
• Open-Source-Software-Stack (Django,
Memcache, Postgres)
• Lastverteilung Amazon ELB
• Fotos auf S3-Storage („several terabytes“)
• PaaS selbst entwickelt für schnelles und
automatisiertes Deployment
• SaaS-Nutzung für Monitoring, Alarming und
Kunden-Support (Pingdom.com,
PagerDuty.com, desk.com)
31. Kapitel 3
Nutzen und Auswirkungen von Cloud-Computing
3.1 Nutzen Cloud-Computing
3.2 Herausforderungen von Cloud-Computing
3.3 Vorgehensweise bei der Umsetzung
3.4 Auswirkungen der Cloud auf ein Unternehmen
3.5 Auswirkungen der Cloud auf Sie
32. 3.1 Nutzen Cloud-Computing
• Transparenz
• Kein Detailwissen notwendig (z.B. Security, Konfiguration Email-Server) und
somit Vermeidung von Spezialistentum
• Bedarfsorientierte Abrechung („Pay-as-you-go“)
• Vermeidung von Investitions- und Opportunitätskosten
• Agilität bei Deployments
• Time to Market erhöhen („Bild Video Reporter“)
• „Rapid Prototyping“ oder „Minimum Viable Product“ und somit frühes
Feedback über Markterfolg erlangen („The Lean Startup Methodology“)
• Größe
• Neue Marktchancen (siehe: http://www.cyclecomputing.com/)
• Elastizität
• Reduzierung der laufenden Kosten (Virtueller Arbeitsmarkt)
33. 3.2 Herausforderungen Cloud Computing
• Herausforderung 1: Ausfall der Cloud
• Gegenmaßnahmen: Rechenzentrum und Cloud-Betriebssystem muss
Anforderungen an Hochverfügbarkeit erfüllen (isolierte Standorte,
Mehrfachauslegungen von Komponenten)
• Software muss diese angebotene Infrastruktur nutzen (Fault-Tolerant,
Zustandslosigkeit)
• Keine neue Herausforderung, sondern „Standard-Risiko“ im Umfeld von
Unternehmenssoftware
• Herausforderung 2: Datenschutz in einer Public Cloud
• EU-Datenschutz verbietet die Übertragung in Staaten, die nicht über
europäischen Standard verfügen (u.a. USA)
• Gegenmaßnahme 1: „Safe-Harbour“, bei dem sich US-Firmen zu
Standards verpflichtet + Vertrauen
• Gegenmaßnahme 2: Private Cloud
• US-Firmen sind aufgrund des „Patriots Act“ verpflichtet, Daten an US-
Behörden weiterzugeben (auch aus ihren EU-Rechenzentren)
• Gegenmaßnahmen: Private Cloud
34. 3.3 Vorgehensmodelle für die Einführung von
Cloud-Computing
• Fraunhofer Vorgehensmodell zur Einführung und Nutzung von Cloud-Diensten
• Quelle: http://www.cloud.fraunhofer.de/profil/
> Cloud-Computing ändert nichts an der Vorgehensweise für eine Einführung eines
neues Produktes oder einer neuen Technologie in einem Unternehmen
> Wirtschaftsinformatiker, die mit der Einführung von CC beauftragt werden, greifen
auf bewährtes Handwerkszeug zurück
35. 3.4 Auswirkungen der Cloud auf ein Unternehmen
Cloud-Computing ist einer der wichtigsten Katalysatoren
für das agile Unternehmen
Geschäfts- Service-
prozess orientierte
modellierung Architektur
Das agile Unternehmen
Cloud- Agile-
Computing Software-
entwicklung
Aber: Alle vier Katalysatoren wirken zusammen !
36. 3.5 Auswirkungen der Cloud auf Sie
Cloud-Computing ist einer von vier Katalysatoren für das agile Unternehmen.
Das heisst für Sie: Business-
Analyst/
• Werden Sie in allen Bereichen so
-Modellierer
„komplett“ wie möglich
• Studieren
Sie Best-Practices der Geschäfts- Service-
prozess orientierte
Cloud-Programmierung, einer modellierung Architektur
SOA und der agilen Entwicklung
you are here!
• Probieren geht über Studieren
Cloud- Agile-
Computing Software-
• Traditionelle
Rollen wie Entwickler entwicklung
oder Sysadmin verschwinden,
dafür entstehen Mischformen.
Dev-Op
Akzeptieren Sie dies frühzeitig