Grundlagen des Cloud Computing
Aus Winfwiki
1 Titel
| Name des Autors / der Autoren: | Corinna Ehm, Mathias Just, Carsten Möller |
| Titel der Arbeit: | Grundlagen des Cloud Computing |
| Hochschule und Studienort: | FOM Duisburg |
2 Abkürzungsverzeichnis
| Abkürzung | Bedeutung |
|---|---|
| API | Application Programming Interface |
| CC | Cloud Computing |
| IaaS | Infrastructure as a Service |
| OWA | Outlook Web Access |
| P2P | Peer to Peer |
| PaaS | Platform as a Service |
| SaaS | Software as a Service |
| SDK | Software Development Kit |
| SAN | Storage Area Network |
| TCO | Total Cost of Ownership |
| USV | unterbrechungsfreie Stromversorgung |
3 Abbildungsverzeichnis
| Abb.-Nr. | Abbildung |
|---|---|
| 1 | Überschneidende Entwicklungen |
| 2 | Trennung von User- und Provider-Seite |
| 3 | Wie Nutzer sich mit der Cloud verbinden |
| 4 | Mehrschicht-Architektur der Cloud Plattform |
| 5 | Lebenszyklen neuer Technologien |
4 Einleitung
Diese Hausarbeit behandelt thematisch die Grundlagen des Cloud Computing. Dieser Begriff wird im Rahmen der Arbeit zunächst definiert und gegenüber weiteren Begriffen und Entwicklungen abgegrenzt.
Inhaltlich wird erläutert welchen Ursprung Cloud Computing besitzt und wie es sich bis zum heutigen Stand entwickelt hat und für welche potentiellen Anwender sowie Anwendungsbereiche es aufgrund von Vorteilen die es mit sich bringt von Interesse ist bzw. sein kann.
Des Weiteren wird darauf eingegangen, welche technischen Aspekte und welche Aspekte in Hinsicht auf Applikationen und Datenhaltung eine Rolle spielen. Dies bezüglich wird auf Voraussetzungen eingegangen die geschaffen werden müssen und auf Hindernisse die es zu überwinden gilt, um Cloud Computing im privaten und im unternehmerischen Einsatz zu etablieren.
Mit einem Ausblick auf angestrebte/mögliche zukünftige Entwicklungen schließt diese Arbeit ab.
5 Umfassende Definition des "Cloud Computing" Begriffs
Hinter dem Begriff Cloud Computing verbirgt sich eine Idee die derzeit noch in ihren Anfängen steckt und einen großen Umschwung für die Softwarebranche (und die Computerbranche im Allgemeinen) bedeuten soll.[1]
Software und Hardware sollen einem Kunden als Dienstleistung und auf Abruf zur Verfügung gestellt werden.[2] Dies wird auch als Utility Computing bezeichnt. In dieser Eigenschaft können etwa Parallelen zur der Versorung von Haushalten mit Elektrizität oder Wasser gezogen werden. Ähnlich einfach soll auch die Bereitstellung von Rechenleistung und anderen Diensten vollzogen werden, wobeidie Bezahlung für Dienste nur in der Höhe der tatsächlichen Beanspruchung (Nutzung, Verbrauch) durch den Kunden erfolgen soll.[3]
Trotz wesentlicher Aspekte die das Cloud Computing beinhaltet, kann eine klare allgemeingültige Definition allerdings nicht getroffen, da die Entwicklung des CC noch nicht abgeschlossen ist.[4] Definitionen sind zudem auch von den jeweiligen Aspektendie angesprochen werden und individuellen Auffassungen abhängig. Teilweise gehen die Meinungen stark auseinander welche Thematiken mit in den Begriff Cloud Computing einzuschließen sind. Dies ist zudem auch von den bereits auf dem Markt vertretenen Anbietern im Bereich CC abhängig, die bei eigenen Definitionen den Schwerpunkt oftmals auf das eigene Angebot legen. Darüber hinaus zeigt das CC auch Überschneidungen zu anderen Thematiken wie dem Grid- oder Utility Computing und weiteren Entwicklungen auf, da es keine unabhängige Entwicklung darstellt, sondern aus anderen Technologien hervorgeht.[5]
Die Bedeutung des CC wird erwartungsgemäß zukünftig steigen, denn der immer größer werdende Bedarf an komplexen IT-Infrastrukturen kann durch den Einsatz von CC flexibel abgedeckt werden.[6][7] Gleichzeitig sollen niedrigere Kosten für IT-Infrastrukturen realisiert werden, die auch aus der Tatsache resultieren, dass kostspielige Hardwarebeschaffungen und die Wartung der Hardware entfallen.[8]
In Verbindung mit dem Interesse an CC sind vor allem die folgenden Faktoren zu nennen:
- der Zeitverlauf zeigt, dass Hardwarekosten bei steigenden Speicherkapazitäten und steigender Rechenleistung weiter sinken (speziell in Verbindung mit der Entwicklung von Multiprozesser-Architekturen bestehend aus zwei oder mehr Kern Prozessoren[9]
- das Ausmaß an aufwendigen, umfangreichen Berechnungen und Datenmengen nimmt weiter zu (auch im Rahmen notwendiger Archivierungen)
- Unternehmen setzen oft eine Vielzahl an verschiedenen Applikationen ein die es zu verwalten gilt (Installationen, Konfigurationen, Aktualisierungen)[10]
Einerseits bezieht sich CC auf Aspekte angebotener Software und andererseits auf Hardware-Ressourcen die bereitgestellt werden. Die Bereitstellung erfolgt dabei über das Medium "Internet", aufgrund dessen Nutzung der Begriff „Cloud“ hervorgeht (in grafischen Darstellungen in der IT wird das Internet meist als Wolke abgebildet). Genauer erfolgt der Zugang in Form einer „Public Cloud“. Theoretisch besitzt somit jeder der autorisiert ist und über einen Zugang zum Internet verfügt die Möglichkeit auf Leistungen zuzugreifen und diese zu nutzen. Dieser Aspekt ist wichtig im Zusammenhang mit der Definition, denn CC bezieht sich ausschließlich auf das Medium "Internet". Im Gegensatz zur „Public Cloud“ steht die „Private Cloud“. Sie ist nicht Bestandteil dessen, was als CC definiert wird.[11] Als „Private Cloud“ werden lokale Netzwerke verstanden innerhalb denen Ressourcen verfügbar gemacht werden (etwa unternehmenseigene, interne Netzwerke in denen Hard- und Software integriert sind und auf die Mitarbeiter zugreifen können, sei es über direkten Zugriff auf das Unternehmensnetzwerk oder durch den Zugriff über gesicherte VPN-Verbindungen).
Die Art wie Computer und damit im Zusammenhang stehend Software und Hardware genutzt werden, soll sich durch Cloud Computing grundlegend ändern. Weg von einer Sicht, die stark auf einen Computer-Arbeitsplatz bezogen ist, hin zu einer Sicht, die sich auf die Ressourcen selbst (Rechenleistung, Software und Daten) bezieht und diese praktisch global, und somit von überall aus erreichbar macht. Bei umfassender Anwendung und Integration von CC entsteht daher eine vollständige Unabhängigkeit gegenüber einem festen Arbeitsplatz (die Notwendigkeit eines solchen entfällt).[12]
Für die Endanwender bildet CC eine nebulöse Schicht. Wie die Umsetzung im Detail erfolgt (in technischer Hinsicht und in Hinsicht auf Applikationen), d.h. wo Daten gespeichert werden, wie Installationen erfolgen, welche Konfigurationen notwendig sind, ob Anwendungen gewartet werden müssen und ob Aktualisierungen erforderlich sind usw. ist dem Kunden nicht bekannt, da dies Aufgaben des Dienstleisters sind. Der Kunde greift lediglich auf nutzungsbereite Leistungen zu und kann sich zudem weitere Vorteile des CC zu Nutzen machen. Dies sind zum einen neuen Wege der Online-Zusammenarbeit (Collaborative Computing) die sich entwickeln werden bzw. bereits vorhanden sind und die eine nahezu barrierefreie Zusammenarbeit ermöglichen. Ein Merkmal stellt hierbei der quasi simultane Zugriff auf Daten sowie deren Bearbeitung durch mehrere Personen dar. Zusätzlich wird der Abgleich bzw. die Synchronisation unterschiedlicher Datenbestände obsolet. Einen weiteren wichtigen Hauptaspekt des CC bildet die Flexibilität in Hinsicht auf die verfügbare Hardwareleistung, die je nach aktuellen Bedarf angepasst werden kann. Diese Eigenschaft kann etwa eingesetzt werden, um Lastspitzen abzufangen.[13]
Im Folgenden wird im Rahmen der Definition gesondert auf den Bezug zu Hard- und Software sowie auf unterschiedliche Service-Arten eingegangen. Die Service-Arten werden auch als Ebenen der Abstraktion betitelt.[14]
5.1 Bezug zur Hardware
Aus Sicht der Hardware sind insbesondere die folgend genannten Betrachtungsweisen maßgebend für das Cloud Computing:[15]
- Kunden haben Zugriff auf unbegrenzte Ressourcen wenn diese benötigt werden
- flexible Erweiterung bzw. die generelle Anpassung der Ressourcen an die Gegebenheiten ist möglich
- keine Kapitalbindung, Ressourcen werden nur dann bezahlt wenn diese auch tatsächlich genutzt werden
Diese Aspekte beruhen vorwiegend auf der Annahme bzw. der angestrebten Eigenschaft der Skalierbarkeit der Ressourcen beim Cloud Computing. Diese Eigenschaft wird zum Teil auch als Elastizität bezeichnet.
5.2 Bezug zur Software
Die Seite der Softwarebereitstellung des Cloud Computing in Form einer Dienstleistung wird häufig auch als „Software as a Service“ oder kurz SaaS bezeichnet. Cloud Computing im Allgemeinen stellt allerdings eine Weiterentwicklung des SaaS-Ansatzes dar. So ist es nicht nur das Ziel reine Software verfügbar zu machen, sondern auch Entwicklungsplattformen sowie weitere Dienste anzubieten. Somit soll die Möglichkeit bestehen Anwendungen bereits in der Cloud entwickeln zu können, neben dem herkömmlichen Weg diese zunächst außerhalb der Cloud zu entwickeln und anschließend einzubinden. Die Bezeichnung „…as a Service“ wird im Bezug auf Cloud Computing häufig als Terminologie genutzt um unterschiedliche Aspekte zu benennen. Entwicklungsplattformen betreffend, können diese auch als „Platform as a Service“ oder PaaS bezeichnet werden.
5.3 User und Provider
Der Anschaulichkeit soll die folgende Grafik dienlich sein. Sie zeigt auf welche Weise die Trennung der Bereitstellungs- und Nutzungsseite erfolgen kann und welche Abhängigkeiten bestehen. Ebenfalls wird hier eine Trennung von Hard- und Software vollzogen, wobei diese in der Praxis nicht zwangsläufig in dieser Form nötig ist.
Cloud Provider (IaaS)
Sie stellen Ressourcen zur Verfügung die von Endnutzern (Cloud User) in Anspruch genommen werden können. Ressourcen können neben Rechenleistung (CPU-Zeit) auch primär die Bereitstellung von Speicherplatz sein.
Der Grad der Bereitstellung ist nicht definiert und kann in unterschiedlicher Weise erfolgen. Dies bezieht sich auf die Möglichkeiten die einem Cloud User zur Verfügung stehen auf die Ressourcen zuzugreifen (etwa direkter Zugriff auf die Hardware oder Zugriff auf die Hardware über definierte Schnittstellen…).
Die Leistungen der Cloud Provider werden auch unter dem Begriff "Infrastructure as a Service" (IaaS) zusammengefasst.
Cloud User
Hinter dem Begriff Cloud User können sich sowohl gewerbliche als auch private Kunden verbergen, wobei gewerbliche Nutzer wiederum die gestellten Ressourcen selbst in Anspruch nehmen können oder diese Nutzen um als SaaS-Provider aufzutreten.
Hinter dem Begriff Ressourcen verbergen sich Hardwareressourcen (wie Rechenleistung, Arbeitsspeicher, Festplattenspeicher...) die als Dienstleistung über das Internet bereitgestellt werden.
SaaS / PaaS Provider
Provider sind zum einen Anbieter von Applikationen für unterschiedlichste Zwecke (SaaS) und zum anderen auch Anbieter von integrierten Entwicklungsplattformen (PaaS),zur Entwicklung von Anwendungen sowie deren Test und Verteilung.[16]
Kunden stehen diese Leistungen auf Abruf zur Verfügung.
SaaS / PaaS User
User sind die Endkunden die privat oder zu gewerblichen Zwecken auf Applikationen zugreifen (SaaS) oder Online-Entwicklungsplattformen nutzen (PaaS) . Installationen, Konfigurationen, Wartungen sind auf Kundenseite nicht notwendig, da diese Leistungen durch den SaaS Provider übernehmen werden.
6 Entwicklung des Cloud Computing
6.1 Geschichtliche Hintergründe und Vorläufer des Cloud Computing
6.1.1 Mainframes
Die Vorläufer des Cloud Computing sind sowohl in der klassischen Client-Server-Architektur als auch in den vor einigen Jahren sehr populär gewordenen Peer-to-Peer-Netzwerken zu finden. Der Grund hierfür liegt in der Vereinfachung der Zusammenarbeit von Menschen durch zentrale Speicherorte für digitale Inhalte, sowie in der Möglichkeit, durch vernetzte Computer sehr hohe Gesamtrechenleistungen zu erreichen.
In den frühen Jahren der elektronischen Datenverarbeitung basierte die rechnergestützte Arbeit auf dem Client-Server Modell. Jede Anwendung, alle Daten sowie die Kontrolle und Rechteverwaltung wurden auf sehr großen zentralen Servern, Mainframes genannt, vorgehalten. Wenn ein Benutzer Daten abrufen oder ein Programm ausführen wollte, so musste er sich zuerst mit dem Mainframe verbinden und konnte dann (je nachdem welche Rechte er besaß) alle nötigen Programme starten, seine Dokumente bearbeiten oder Nachrichten an andere Benutzer versenden. Diese Nachrichten können, auch wenn sie von der Reichweite her auf das jeweilige System beschränkt waren, als Vorläufer der E-Mail angesehen werden.
Die Endgeräte, die für eine Verbindung mit dem Mainframe benutzt wurden, waren zumeist sehr „dumme“, d.h. mit nur wenig oder keinem Speicher und mit nur sehr beschränkter Rechenleistung ausgestattete Terminals, deren einzige Aufgabe es war, dem Anwender Zugriff auf die Ressourcen des Mainframes zu geben. Diese Clients werden in diesem Zusammenhang auch als „Thin Clients“ bezeichnet.
Da aber auch die Leistung der Mainframes beschränkt war, konnte ein Zugriff nur erfolgen, wenn die nötige Freigabe der Administratoren zur Verfügung stand. Administratoren waren dafür zuständig, dass die zur Verfügung stehende Rechenleistung nicht unnötig verbraucht wurde. Doch wenn Berechtigungen angefordert wurden, so standen diese keinesfalls unmittelbar (wie es bei den meisten IT-Systemen heutzutage der Fall ist), sondern nur zeitversetzt zur Verfügung. Ein echter Multi-User-Betrieb war daher nicht möglich und die primäre Kontrolle über die Ressourcen lag bei den Betreuern der Mainframes.
Auf Änderungsanforderungen von Benutzerseite konnte nur selten eingegangen werden – und falls doch, so sind Änderungen nur mit einiger Verzögerung vollzogen worden. Eine breite Auswahl an Anwendungen stand Benutzern ebenfalls nicht zur Verfügung, so dass diese mit den gegebenen Applikationen auskommen mussten. In Bezug auf die Entwicklungen des CC stellt dies einen wesentlichen Unterschied dar.[17]
6.1.2 Peer-to-Peer Netzwerke
Da die Client-Server-Architektur aufgrund der Tatsache, dass jegliche Kommunikation über den Server ablief, mit einem massiven „Flaschenhals“ zu kämpfen hatte, führte dies zu der Entwicklung einer gänzlich neuen Technologie, der Peer-to-Peer-Netzwerke.
Anders als in einer Client-Server-Architektur, in der die Rollen des Systems welches Daten liefert und Rechenleistung bereitstellt klar verteilt sind, sind in einem Peer-to-Peer-Netzwerk grundsätzlich alle beteiligten Systeme gleichwertig bzw. gleichberechtigt. Sie agieren gleichsam als Client und als Server. Hieraus ergibt sich die Möglichkeit eines direkten Datenaustauschs ohne zentrale Verwaltungsinstanzen.
Das ursprüngliche Design des Internets basierte ebenfalls auf dem Peer-to-Peer-Konzept. Am Beispiel des Usenets, das als Vorgänger des Internets gilt, ist die Entwicklung dieses Konzepts nachzuvollziehen, da verschickte Nachrichten jeweils von einzelnen Clients weitergeleitet wurden.
Im Zuge des Vormarschs des World-Wide-Web wurde diese Entwicklung allerdings weitestgehend durch eine Client-Server-Architektur verdrängt, in der die Server die zur Verfügung stehenden Inhalte vorhalten. Ähnlich wie in der Mainframe-Architektur liegen auch hier die Inhalte und die Kontrolle auf den Serversystemen.[18]
6.1.3 Verteiltes Rechnen
Eine heute noch benutzte Form der Peer-to-Peer-Architektur ist das verteilte Rechnen, „Distributed Computing“. Hierbei wird vor allem die Rechenleistung der angeschlossenen Computer gebündelt, um komplexe mathematische Berechnungen durchzuführen. Ein bekanntes Beispiel hierfür ist das SETI@home Projekt, bei dem die beteiligten Rechner Teile der Radiodaten diverser Radioteleskope analysieren. Üblicherweise wird die Rechenleistung der Computer dem Netzwerk allerdings erst dann zur Verfügung gestellt, wenn an diesem keine Aktivität mehr herrscht, also freie Kapazitäten zur Verfügung stehen. Die dann vorhandene kumulierte Prozessorleistung aller Clients übersteigt schnell die Rechenleistung eines Hochleistungsrechners.
Viele Distributed Computing Projekte werden auch in Firmen realisiert, um Rechenleistung aus ohnehin schon vorhandenen Ressourcen in Zeiten zu nutzen, in denen diese brachliegen. Es existieren auch offline-Projekte, bei denen ein permanenter Zugang zum Netzwerk nicht benötigt wird und deren Clients die Ergebnisse von zugeteilten Berechnungen immer dann übermitteln, wenn eine Verbindung zum Netzwerk besteht.[19]
6.1.4 Groupware
Schon zu Mainframe-Zeiten und auch durch die Verbreitung der Peer-to-Peer-Netze, war das gemeinsame Arbeiten von mehreren Beteiligten an demselben Projekt eines der Hauptwünsche der Nutzer. Zentrale Speicherung von Daten und Programmen auf der Mainframe-Seite und Flexibilität sowie Skalierbarkeit als Stärke der P2P-Netze waren letztlich die treibende Kraft diese Anforderung zu realisieren.
Um paralleles Arbeiten zu ermöglichen, muss den Benutzern die Möglichkeit gegeben werden, miteinander zu kommunizieren. Dazu werden in geläufigen Groupware-Softwarelösungen zumeist textbasierte Instant-Messaging und/oder Audio/Video-Lösungen integriert. Des Weiteren muss ebenfalls die Möglichkeit gegeben sein, Dateien auszutauschen oder ggf. auch simultan zu bearbeiten. Doch auch die komplexesten heute gebräuchlichen Systeme sind auf einen geschlossenen Benutzerkreis beschränkt. Die physikalischen Grenzen der Firmennetzwerke sind oft ein nicht zu überwindendes Hindernis. Selbst wenn physikalisch die Möglichkeit bestände das benutzte System auch der Öffentlichkeit zugänglich zu machen, so ist dies üblicherweise keinesfalls gewollt, da hier potentiell die Gefahr höher erscheint, dass sensible Firmendaten den Weg in die falschen Hände finden.[20]
6.1.5 Cloud Computing
Mit der zunehmenden Verbreitung des Internets in vielen Bereichen des Lebens und der unternehmerischen Tätigkeit wiegt die Notwendigkeit, den Benutzerkreis bzw. die Zugriffsmöglichkeiten von Plattformen einzuschränken, allerdings immer geringer. Nutzer, die an verschiedenen Orten aber in derselben Firma arbeiteten, aber auch Nutzer verschiedener Firmen und Länder wollen die Möglichkeit besitzen, zusammen und ggf. auch gleichzeitig an Projekten zu arbeiten. Zu diesem Zweck werden Dokumente und Daten in der „Wolke“ (engl. Cloud), das heißt im Internet abgelegt. Der Zugriff kann somit theoretisch von jedem Ort aus erfolgen, an dem eine Verbindung zum Internet möglich ist.
Das Vorhalten von Dokumenten und anderen digitalen Inhalten ging einher mit dem Entstehen großer Serverfarmen, wie beispielsweise denen von Google. In Fall von Google werden die vorhandenen Rechenkapazitäten genutzt, um zusätzlich noch Internet-basierende Anwendungen und Netzwerkspeicherlösungen anzubieten.
Nicht nur Google, sondern auch Hersteller/Anbieter wie IBM oder SUN erkannten die Zeichen der Zeit und begannen Angebote und Dienstleistungen zu entwickeln, die auf die Bedürfnisse von Cloud Computing abgestimmt sind. Parallel dazu begannen duzende Softwarehersteller Anwendungen zu entwickeln, die dem Prinzip des Cloud Computing folgten.
Heute nutzen viele Personen Internet-Dienste wie etwa gmail, rapidshare oder flickr. Zukünftig werden ebenfalls Anwendungen an Bedeutung gewinnen, die nicht nur rein autark handeln, sondern in der Lage sind mit anderen Cloud Computing Angeboten zu kommunizieren und Informationen auszutauschen.[21]
6.2 Abgrenzung zu anderen Begrifflichkeiten und Thematiken
Die Abgrenzung des Cloud Computing zu anderen Begriffen fällt nicht immer leicht. Dienste wie StudiVZ oder MySpace werden von einer großen Anzahl Menschen bereits seit längerer Zeit genutzt und dabei eher dem Bereich des „Web 2.0“ zugeordnet. Streng genommen zählen jedoch auch solche Dienste zum Cloud Computing, denn Daten sind nicht auf privaten Rechnern sondern auf Servern gespeichert, die an das Internet angebunden sind. Web 2.0 umfasst allerdings die Gesamtheit der Entwicklung des Internets von einer rein statischen Form des Informations-/Datenlagers hin zu einer dynamischen und interaktiven Form. Dienste wie die oben erwähnten StudiVZ und MySpace zeigen diese Entwicklung sehr deutlich. Während in früherer Zeit Webseiten einmalig programmiert immer gleiche Inhalte aufwiesen, so generieren auf Webseiten der nächsten Generation (Web 2.0) die Benutzer einen wesentlichen Teil der Inhalte selbst. Gleichsam jedes Forum, jeder Blog, jeder Chat und jede andere Webseite deren Inhalte nicht ausschließlich von den Betreibern, sondern auch anteilsmäßig von den Nutzern generiert werden, können daher dem Web 2.0 zugerechnet werden. Allerdings umschließt die Definition des Begriffs Web 2.0 auch den Begriff des Cloud Computing, da auch hier Interaktivität und eine Dynamik in Bezug auf die Nutzung des Internets vorhanden ist. Allerdings ist hier die Definition etwas enger gefasst, da Cloud Computing sich in erster Linie auf die Verfügbarkeit von Anwendungen, Rechenleistung und Speicherplatz, d.h. von Dienstleistungen von jedem internetfähigen Endgerät aus bezieht. Mit der fortschreitenden Entwicklung des Internets sind unterschiedliche Anwendungen entstanden, die auf die Verfügbarkeit des Internets angewiesen sind und ohne eine aktive Verbindung nicht genutzt werden können. Solche Anwendungen sind allerdings nicht ohne weiteres auch als Cloud Computing Anwendung zu bezeichnen.
Beispiele sind hier:
- World of Warcraft
Ein Online-Rollenspiel in dem sich Spieler auf vom Hersteller bereitgestellten Servern treffen. Das Spielgeschehen findet somit im Internet statt und auch Daten werden online gespeichert. Allerdings wird weder Infrastruktur angeboten, noch eine Entwicklungsplattform und vor allem auch kein Dienst. Der „Dienst“ des Spielens der bereitgestellt wird, umfasst die Bereitstellung der „Spielwelt“ von Seiten des Herstellers. Auf dem privaten Computer ist die Installation eines umfangreichen Clients notwendig, der nicht nur die Verbindung mit den Servern ermöglicht, sondern auch lokal Daten vorhält. Die Funktionsweise anderer Online-Rollenspiele ist hier sehr ähnlich.
- ICQ
Ein Dienst der die Kommunikation im Internet ermöglicht. Die Kontaktlisten der Mitglieder werden online gespeichert und verwaltet. Allerdings erfolgt die Kommunikation direkt und darüber hinaus wird auch hier ein Client zur Kommunikation benötigt, der in diesem Fall allerdings nicht umfangreich ausfällt.
- FTP
Vielleicht der Klassiker unter den Diensten des Webs. Daten werden online abgelegt und können weltweit abgerufen werden. Allerdings wird zum Ablegen der Daten ebenfalls ein Client benötigt. Dieser wird jedoch von vielen Servern als Web-Interface angeboten.
- Microsoft Exchange
Ein Zwitter unter den vorgestellten Diensten/Anwendungen. Die Kommunikation mit dem Exchange-Server kann sowohl mit dem Client Microsoft Outlook erfolgen, als auch komplett über die integrierte Web-Oberfläche OWA (Outlook Web Access).
7 Kategorisierung des Einsatzes
7.1 Vor- und Nachteile im Überblick
Das Cloud Computing birgt neben großen Chancen auch erhöhte Risiken. Miller [22] bietet diesbezüglich einen guten Überblick.
Vorteile
Die großen Chancen liegen in der flexiblen Verfügbarkeit von Ressourcen und Daten über jedes internetfähige Medium. Zunächst sei hier der Speicherplatz genannt. Durch die Möglichkeit der zeitnahen Anmietung neuer Ressourcen sowohl im Geschäfts- als auch im Privatkundenbereich können sowohl in finanzieller Hinsicht erhebliche Ersparnisse erzielt werden, als auch Speicherplatz orts- und zeitunabhängig genutzt werden.
Ein weiterer Vorteil liegt in der ubiquitären Verfügbarkeit von Daten. Firmen können ihre Datenbanken auf einem in der Cloud befindlichen Bereich ablegen und die Mitarbeiter darauf von jedem angebundenen Ort aus zugreifen. Dies erhöht die Aktualität der Informationen bis hin zu einer 1:1-Verfügbarkeit. Der Einsatz von "Wikis" stellt hierbei ein gutes Beispiel dar im Bezug auf die Zusammenarbeit. Anstatt Informationen z.B. per E-Mail auszutauschen und verschiedene Versionen eines Dokuments von mehreren Personen bearbeiten zu lassen, können Personen simultan an einer Version arbeiten und Ergenisse sowie Erkenntnisse zeitnah mit anderen Beteiligten austauschen. Informationen liegen zu jeder Zeit für alle aktuell vor.
Software kann medienunabhängig genutzt werden. Ob ein Nutzer in der Cloud mit einem internetfähigen Handy auf Daten zugreift, oder ob ein Nutzer über einen an das Internet angebunden Computer den Zugriff vornimmt, ist nicht von Bedeutung. Daten befinden sich in der Cloud und werden, so denn eine konsequente Anwendung des CC-Grundgedanken stattfindet, zu keiner Zeit lokal gespeichert.
In allen Bereichen können durch die Nutzung der Cloud Kosten eingespart werden: Auslagerung der Rechenkapazität, Flexibilisierung der Kosten für die Softwarenutzung, sowie Einsparung von Kosten für die IT-Infrastruktur, deren Anschaffung, Betrieb und Wartung.
Nachteile
Ortsunabhängige Software hat ihren besonderen Reiz für den Nutzer, allerdings auch für möglichen Missbrauch. Der Schutz durch Passwörter oder andere Sicherheitvorkehrungen ist hier besonders wichtig. Das Risiko des Verlustes des Mediums ist hier nämlich z.B. höher, als bei eher ortsgebundenen Medien, dies bedeutet, dass CC den Nutzer von einer verfügbaren Internetverbindung abhängig macht, die zudem auch ausreichend Bandbreite für eine zufriedenstellende Nutzung zur Verfügung stellt.
Was den Datenaustausch und die Speicherung in Datenbanken angeht, so muss sicherlich bei der Vielzahl der Übertragungswege verstärkt Sorge für die Konsistenz der abgelegten Daten getragen werden.
Im Falle der reinen Nutung von Speicherplatz sind die möglichen Risiken sicherlich geringer, als bei der Bereitstellung der Daten zwecks Austausch. Auch hier sollte jedoch das Augenmerk auf möglich Fremdzugriffe auf sensible Daten gerichtet werden.
7.2 Einsatzbereiche
7.2.1 Consumer-Bereich
Im Consumer-Bereich kommen Anwendungen zum Einsatz, die in der Hauptsache den flexiblen Abruf von Daten ermöglichen:
Internet-basierte Mailboxen
Der Anwender nutzt nicht mehr die klassische Ablage und Ansicht der E-Mails unter dem auf dem PC installierten Programm, sondern kann von überall und medienunabhängig darauf zugreifen.
Downloaddienste
Stark vertreten sind bereits bezahlte oder unbezahlte Dienste für den Download von Musikdateien, Filmen, Software etc.
Speicherdienste
Der Anwender bekommt gegen Gebühr oder auch kostenlos eine bestimmte Speicherkapazität zur Verfügung gestellt, die ebenfalls orts- und medienunabhängig genutzt werden kann.
Officedienste
Software-Applikationen werden in der Cloud bereit gestellt, ohne dass die Software dafür heruntergeladen und installiert werden müsste.
[23]
7.2.2 Business-Bereich
Im Business-Bereich werden Daten eher Dritten bereitgestellt und daher wird mehr Wert auf die Upload-Möglichkeiten gelegt:
Server-Virtualisierung
Das Unternehmen stellt nicht mehr eigenen Speicherplatz für die Firmendaten auf einem hauseigenen Server zur Verfügung, sondern mietet Speicherplatz in der Cloud an. Hierbei stehen besonders die Flexibilisierung von Kosten und Administrationsleistungen im Vordergrund.
Desktop-Virtualisierung
Der persönliche Desktop eines Mitarbeiters kann ortsungebunden jederzeit hergestellt werden.
Storage-Virtualisierung
Die Speicherung von Daten unter dem Sicherheitsaspekt wird nicht mehr vom eigenen Serversystem geleistet, sondern die Spiegelung und Sicherung der Daten erfolgt an ausgelagerter Stelle.
Netzwerk-Virtualisierung
Ein firmeneigenes Netzwerk muss nur noch zur Bereitstellung des notwendigen Internetzuganges installiert werden. Andere Netzwerkdienste wie Datenspeicherung auf virtuellen oder tatsächlichen gemeinsam genutzten Laufwerken wird komplett ausgelagert.
Applikations-Virtualisierung
Software wird nicht mehr oder nur noch in sehr reduzierter Form auf dem eigenen PC installiert, sondern direkt über die in der Cloud bereitgestellte Applikation genutzt. In gewisser Weise erinnert dies an die in den Anfängen der Computerei genutzen Terminal-Systeme.
Security-Virtualisierung
Virtualisierte Sicherheitsanwendungen stellen sicherlich die größte Hereausforderung aus dem Bereich des Cloud Computing dar, da der Cloud speziell in diesem Punkt Mängel unterstellt werden.
[24]
7.3 Anwendungsfelder
CC-Dienste können für viele Arten von Anwendern von Interesse sein. Folgende Unterscheidungen können hier getroffen werden:
Nutzung durch Unternehmen
Sie sind besonders interessiert an einer schnellen Verarbeitung großer Datenmengen, z.T. über einen begrenzten Zeitraum hinweg und das bei kleinst möglichem finanziellen und zeitlichen Aufwand bei der Beschaffung der Rechenleistung.
Private Einzelnutzung
Interesse von privaten Nutzern, die Daten ortsungebunden ablegen wollen.
Gruppennutzung
Bereitstellung von Anwendungen wie Foren oder Chatrooms erlauben dem Nutzer, gezielt mit anderen Mitgliedern des sozialen Umfeldes zu kommunizieren und die Nutzungsumgebung teils selbst mitzugestalten.
Nutzung durch die Regierung
Bislang konnte diese Gruppe noch nicht in verstärktem Maße an die Cloud-Nutzung herangeführt werden. Vordergründig stehen hier die teils noch nicht abschätzbaren Sicherheitsaspekte im Wege.
Nutzung medizinischer Dienstleistungen
Großen Gesundheitsorganisationen liegt daran, eine Überwachungsmöglichkeit von z.B. Vitalfunktionen gesundheitlich gefährdeter Personen bereitstellen zu können. Diese Entwicklung bedarf sicherlich noch größerer organisatorischer oder politischer Schritte, besonders im Bezug auf den Datenschutz.
Nutzung durch das Militär
Dieser Bereich ist mit Sicherheit der am wenigsten weit entwickelte. Denkbar wäre die Nutzung der Cloud für weniger streng geheime oder operationskritische Bereiche. Eine Entwicklung einer eigenständigen Cloud zu rein militärischen Zwecken wäre hier sicherlich eine bessere Alternative.
[25]
8 Realisierung von Cloud Computing - technisch und aus Applikations- und Datensicht
Die Realisierung bzw. Umsetzung von Cloud Computing bedarf der Betrachtung dieser Entwicklung aus verschiedenen Blickwinkeln. So spielen Aspekte die Hardware betreffen eine Bedeutung und auf der anderen Seite sind es auch Maßnahmen die aus der Sicht von Applikationen, deren Bereitstellung und Entwicklung, sowie der generellen Datenhaltung in der Cloud notwendig sind.
8.1 Voraussetzungen und Anforderungen an Netzinfrastrukturen
Der Zugang zum Internet besitzt beim Cloud Computing eine zentrale Bedeutung. Ist keine Verbindung zum Internet möglich, so kann auch kein Zugriff auf Anwendungen, Dienstleistungen, Daten usw. erfolgen Cloud Computing stellt daher erhöhte Anforderungen an die Netz-Infrastruktur: Hohe Bandbreiten sind für Nutzer und insbesondere für Anbieter ebenfalls eine unverzichtbare Voraussetzung, um eine akzeptable Verfügbarkeit zu erreichen.
Daher ist dies der wunde Punkt von Cloud-Angeboten[26], denn selbst garantierte Verfügbarkeiten von 99,9 Prozent reichen für unternehmenskritische Anwendungen bei weitem nicht aus. Auf ein Jahr gerechnet entspräche dies einer Ausfallzeit von acht Stunden. Wenn diese Zeit ungünstig auf normale Arbeitstage fällt, können enorme Umsatzeinbußen die Folge sein.
Ein weiterer Aspekt ist hier aber auch einer psychologischer Art. Die meisten Unternehmen scheuen davor zurück von einer Infrastruktur abhängig zu sein auf die sie keinen Einfluss haben. Grundsätzlich sind hier aber vor allem die Carrier gefragt, die die eigentliche Netzinfrastruktur betreiben und diese ebenfalls zu Teilen weitervermieten. Um eine Verlagerung auch von unternehmenskritischen Anwendungen in die Cloud möglich zu machen, müssen hier z.T. Backupleitungen oder Bandbreiten vorgehalten werden, um bei Ausfällen von einzelnen Knoten eine Anbindung trotzdem noch garantieren zu können.
Allerdings liegt hier ein Problem der Netzinfrastruktur an sich. Wenn man auch ein Rechenzentrum relativ „leicht“ absichern kann indem Cluster verwendet werden, Notstromversorgung, mehrere Einspeisungen etc., so ist dies bei Transportnetzen deutlich aufwendiger und damit auch teurer, da hier notwendige Leitungen zumeist unterirdisch verlegt sind.
Ein weiteres Problem ist die Tatsache, dass mit dem Cloud Computing auch die Datenintensität der Anwendungen zunehmen wird.[27] Vorhandene Datenleitungen stellen in diesem Zusammenhang den Flaschenhals dar, daher kann es unter Umständen günstiger und schneller sein "herkömmliche" Wege für die Übertragung der Daten zu nutzen. Gemeint ist damit der Versand von Festplatten, auf denen die Daten gespeichert sind, direkt an den Anbieter, der die Daten somit direkt vor Ort integrieren kann.
8.2 Architektur und Infrastruktur
Abbildung 4: Mehrschicht-Architektur der Cloud Plattform
Der grundsätzliche Aufbau einer Cloud-Architektur sieht im Idealfall folgendermaßen aus:
- oberhalb der eigentlich eingesetzten Hardware sorgen die Cloud Infrastructure Services für eine Virtualisierung
- darauf aufsetzend stellen die Cloud Platform Services (PaaS) die Cloud Shared Services bereit, an die die Cloud Anwendungen der Kunden angebunden werden
- parallel dazu existiert eine Anwendungs-SDK, welches die Entwicklung der SaaS-Schnittstellen ermöglicht
- ebenfalls parallel zu der eigentlichen Arbeitsumgebung sind die Management und Security Services angesiedelt, die für die Verwaltung und Wartung verantwortlich sind
8.2.1 Betriebssysteme und Virtualisierung
Für den Betrieb einer Cloud ist neben der Netzanbindung und der physikalischen Hardware ebenfalls noch ein Betriebssystem (OS) notwendig. Im kleinen Rahmen oder zum Testen eigener Anwendungen kann hierzu u.U. auch ein Desktop-OS wie Windows oder Linux benutzt werden. Die Anwendung, die als Cloud-Anwendung genutzt werden soll, muss dann allerdings über eine Möglichkeit verfügen, sie auch ohne direkten Zugriff auf den Server nutzen zu können. Ein Beispiel wäre hier der der Azureus BitTorrent Client, der über ein Web-Interface verfügt. Hierdurch wäre man also bereits in der Lage, Rechenlast, Installationsaufwand und Wartung auf den Server zu verlagern.
Da Cloud-Computing aber vor allem durch Ausfallsicherheit und Skalierbarkeit die herkömmliche Art der Softwarenutzung ablösen will, stößt man mit einem normalen Desktop-OS an die Grenzen des Machbaren. Server-Betriebssysteme wie Microsofts Server 2003 und 2008 oder Linux (z.B. die Distribution "Red Hat") bieten hier bereits deutlich mehr Möglichkeiten, was das Aufbauen von Clustern oder das Ansteuern von SANs angeht. Ein Cluster bietet generell eine sehr hohe Ausfallsicherheit, da auch bei einem Totalausfall eines Systems die Erreichbarkeit erhalten bleibt. Darüber hinaus werden Cluster allerdings auch aufgrund ihrer Leistungsfähigkeit eingesetzt. Die Skalierbarkeit ist hingegen meist nicht dynamisch genug, um den Anforderungen des Cloud Computings zu entsprechen.
Als Basis für das CC gilt daher die Virtualisierung von Ressourcen.[28] Produkte wie der ESX-Server von VMWare und VirtualPC Server von Microsoft sind in der Lage, die physikalischen Ressourcen der Wirtsrechner vollständig zu virtualisieren und sehr spezifisch den einzelnen installierten Gast-Betriebssystemen zuzuweisen. Eine Anpassung oder ein Umzug einer virtuellen Maschine auf eine andere physikalische ist ebenfalls im laufenden Betrieb möglich. In welchem Umfang Kunden tatsächlicher Zugriff auf reale Ressourcen gewährt wird und in welchem Maße Kunden selbst die Möglichkeit besitzen zur Verfügung stehende Ressourcen zu erweitern bleibt jedoch offen und kann sich von Anbieter zu Anbieter unterscheiden.
Das Produkt vSphere 4 von VMWare geht noch einen Schritt weiter und bietet neben der Virtualisierung von ganzen Servern auch die Virtualisierung einzelner Anwendungs-Services an. Durch diese Plattform können einzelne Anwendungen Cloud-fähig gemacht werden und durch den hohen Grad der Virtualisierung je nach Bedarf mehr oder weniger Ressourcen zugeordnet bekommen.
8.2.2 Hardware
Die Aufstellung der Hardware wird eine der größten Herausforderungen darstellen: Wenn die Nachfrage nach Cloud-Diensten eine bestimmte Schwelle überschreitet, werden beständig mehr Ressourcen benötigt werden. Die notwendigen Rechenzentren befinden sich im Optimalfall in geographischer Nähe zu den Abnehmern, wenn es nötig ist Verzögerungszeiten minimal zu halten um Kunden ein "Echtzeithandhabung" zu vermitteln wie sie es von einem lokalen Computer gewohnt sind. Jeder Kilometer Laufzeit zwischen Nutzer und Server würde die Verzögerungszeit in diesem Fall erhöhen.
Die verwendeten Hardwarekomponenten sind aufgrund der Virtualisierung von Ressourcen in Hinsicht auf die Kompatibilität zu Virtualisierungslösungen zu wählen. Ebenfalls ein gutes Verhältnis zwischen den Total Cost of Ownership (TCO) und der Leistung ist zu beachten.
Dabei schließt die TCO hier natürlich nicht nur den Kaufpreis und den Stromverbrauch, sondern auch den Preis pro m³ Serverraum, die Kühlung und die Entsorgung mit ein. Da gerade Serverraumplatz extrem teuer ist, kann es hier durchaus sinnvoll sein, sehr leistungsstarke und –hungrige Hardware zu kaufen, die aber im Vergleich zu schwächerer Hardware mehr Leistung pro m³ besitzt.
8.3 Applikationsentwicklung und Bereitstellung
Die Entwicklung von Applikationen kann sowohl offline als auch online (PaaS) erfolgen.
Die Offline-Entwicklung stellt die übliche Vorgehensweise dar, bei der ein Entwickler meist gebunden an einen Arbeitsplatz operiert, an dem unterschiedlichste Entwicklungsumgebungen installiert und konfiguriert sind.
Die PaaS steht der Online-Entwicklung gegenüber. Anwendungen werden bereits in der Cloud entwickelt und getestet und müssen nicht mehr in diese hoch geladen und eingebunden werden.
Online werden dem Entwickler die notwendigen Entwicklungsumgebungen sowie ggf. bereits Entwicklungsbausteine (fertiger, standardisierter Programmcode der sich flexibel für neue Anwendungen nutzen lässt) zur Verfügung gestellt.
Die Entwicklung des Cloud Computing ist generell mit Prozessen verbunden, die ein Umdenken im Bezug auf die Entwicklung und der Bereitstellung von Applikationen notwendig machen. Software wird nicht mehr auf individuellen Computern sondern auf rechenstarken Servern mit Mehrkernprozessoren im Verbund und in virtuellen Umgebungen installiert. Aus diesem Grund muss Software für die Cloud in der Lage sein, sich die zur Verfügung stehende Rechenleistung zu Nutze zu machen. Dies stellt neue Anforderungen an die Entwickler, die zuverlässige, zentral verwaltbare, skalierbare, dynamische, universelle Applikationen entwickeln müssen.[29]
Integration bestehender Applikationen
Die Auslagerung von Applikationen in die Cloud ist alles andere als einfach. Was der Nutzer an Aufwand spart (Installation, Konfiguration, Wartung, Updates, etc.), verlagert sich auf den Anbieter der Cloud; für ihn stellt Cloud-Computing daher eine recht hohe Herausforderung dar. Meistens erfüllen die vorhandenen Applikationen nicht die Voraussetzungen der Cloud-Plattformen. Oft handelt es sich bei den klassischen Enterprise-Anwendungen um Software auf COBOL-Basis, deren Programm-Philosophie und Datenstrukturen sich stark von dem unterscheiden, was auf Cloud-Plattformen üblicherweise eingesetzt wird. Dies sind beispielsweise Programmiersprachen wie Python für Google Apps, oder Ruby für Amazon Elastic Compute Cloud (EC2). Auch für Microsofts Cloud-Plattform Azure trifft dies zu, denn die Azure-APIs, z.B. die Identity Services oder SQL Data Services, haben kaum Gemeinsamkeiten mit dem Standard-.NET. Kein Softwarehersteller kann jedoch seine Anwendungen für Cloud-Computing ohne weiteres komplett neu programmieren. Für eine solch aufwendige Neuentwicklung stehen selten Zeit noch Geld zur Verfügung. Außerdem stellen Neuentwicklungen immer ein nicht unerhebliches Risiko dar, da ausgereifte Algorithmen und Prozesse durch neuartige ersetzt werden, die ihre Leistung und vor allem ihre Stabilität und Interoperabilität erst noch beweisen müssen.
Außerdem würden Neuentwicklungen die Entwicklung von Software langfristig blockieren. Vor allem in der aktuell sehr angespannten Wirtschaftslage können und wollen viele Softwarehersteller derartige Risiken nicht eingehen. Sie sind nur dann in der Lage in das Cloud-Computing einzusteigen, wenn sich diese Projekte in einem kalkulierbaren Zeit- und Kostenrahmen realisieren lassen.
Die Hersteller sind daher gezwungen ihre vorhandenen Enterprise-Anwendungen "Cloud-ready" zu machen, selbst wenn diese unter dem Einfluss "traditioneller" Software-Paradigmen mit COBOL oder PL1 erstellt wurden. Auf einem anderen Weg ist ein Einstieg ins Cloud-Computing (bzw. Platform as a Service, PaaS) für die meisten Unternehmen jedoch wirtschaftlich nicht möglich. Am sinnvollsten erscheint es hier, die vorhandenen Anwendungen so zu modifizieren, dass ein und dieselbe Code-Basis für unterschiedliche Plattformen verwendet werden kann, also sowohl für die Cloud, als auch für den eigenen Server, respektive das eigene Rechenzentrum. Die Schwierigkeit liegt hier darin, dass so unterschiedliche Technologien wie COBOL, CICS, IMS, ESDS oder RRDS auf der einen Seite, mit den Techniken der Web-Welt wie HTTP, HTTPS, XML, AJAX oder JavaScript aneinander gekoppelt werden müssen.
Mittlerweile existieren Tools, die diese Arbeiten wesentlich erleichtern. Software-Hersteller können bspw. mit den Enterprise Cloud Services von Micro Focus ihre Anwendungen so modifizieren, dass sie diese ohne größere Eingriffe in den Quellcode auch als Web-Anwendung per Cloud-Computing anbieten können.
Dazu wird eine Schicht zwischen die PaaS und bereits vorhandene Enterprise Anwendungen gelegt und die einzelnen Funktionalitäten (in weiten Teilen automatisch) gekapselt und mit standardisierten Schnittstellen ausgestattet. Dadurch ist ein Aufruf durch andere Anwendungen möglich.
Auf diese Weise ist es dann möglich diese Anwendungen in einer Cloud zu hosten und dem Kunden im Bedarfsfall anzubieten (on demand). Der wichtige Vorteil dieser Lösung liegt in der Beibehaltung der vorhandenen und implementierten Business-Logik. Diese kann nun gleichzeitig als Cloud-Anwendung und auf herkömmlichen Weg angeboten werden. Davon profitieren auch zukünftige Änderungen und Updates, die auf diese Weise nicht doppelt durchgeführt werden müssen. Der Aufwand beschränkt sich daher auf die Bereitstellung der Kommunikation der gekapselten Services mit dem neuen Web-Interface und der Entwicklung des SaaS-Interfaces.[30]
8.3.1 Besonderheiten der CC-Applikationsentwicklung
Skalierbarkeit
Im Bereich des SaaS ist zu erwarten, dass bei der gewerblichen Nutzung vermehrt Applikationen genutzt werden, die dazu dienen große Berechnungen auszuführen. Sei es etwa um umfangreiche Datenmengen zu analysieren (Ziel kann es etwa sein, das Kaufverhalten von Kunden zu analysieren) oder Konvertierungen von Daten durchzuführen (Etwa die Aufbereitung von Daten, Konvertierung von Datenformaten...). Die Daten auf denen Berechnungen durchgeführt werden befinden sich dabei in der Cloud.
Cloud Computing zeigt hierbei neue Möglichkeiten auf, die sich die Elastizität der Ressourcen zu Nutze machen.
Die Skalierbarkeit der Cloud zeigt bei großen und aufwendigen Berechnungen seine Stärke. Da die Abrechnung der Nutzung auf Grundlage der tatsächlichen Beanspruchung von Ressourcen erfolgt, spielt es für einen Kunden keine Rolle, ob die Rechenleistung einer Einheit für beispielsweise zehn Stunden in Anspruch genommen wird oder ob stattdessen zehn Einheiten in Anspruch genommen werden, die die Berechnungen innerhalb einer Stunde abschließen können.[31] Dieses Gedankenspiel lässt sich prinzipiell in der Art weiterführen. Festzuhalten ist demnach, dass sich enorme Zeitvorteile realisieren lassen, dessen Grundlage die Skalierbarkeit des CC bildet. Notwendige Daten liegen somit bereits früher vor und können wiederum zur weiteren Bearbeitung genutzt werden. Insbesondere wenn Informationen aus Berechnungen zeitnah benötigt werden, stellt dies einen entscheidenden Vorteil dar. Doch auch wenn Lastspitzen abgefangen werden sollen, also höhere Belastungen (z.B. durch erhöhte Zugriffszahlen auf Anwendungen) die ohne CC zusätzliche Hardwareanschaffungen notwendig gemacht hätten, lässt sich die Elastizität effektiv nutzen.
Um solche Vorteile allerdings realisieren zu können, müssen die Applikationen die sich in der Cloud befinden in der Lage sein, die Skalierbarkeit effizient zu nutzen und auf veränderte Gegebenheiten flexibel zu reagieren. Dies sollte unabhängig davon geschehen, ob der Kunde selbst Anpassungen der Leistung vornimmt oder ob diese auf der Anbieterseite erfolgen, indem je nach Auslastung skaliert wird.
Hierzu ist es notwendig, dass Prozesse die üblicherweise bei Nutzung einer Recheneinheit sequentiell abgearbeitet werden, parallelisiert werden. Dies erfordert ein Umdenken bei der Softwareentwicklung, dass dem bei der Nutzung von Mehr-Kern-Prozessoren ähnlich ist, allerdings weitaus größere Umfänge annimmt.
Kompatibilität
Einen wichtigen Aspekt stellt auch die Gewährleistung der Kompatibilität von Anwendungen und Daten zwischen unterschiedlichen CC-Providern dar, um die zeitnahe Migration von Anwendungen und Daten möglich zu machen. Unter Berücksichtigung der Möglichkeit, dass CC-Provider auch ihre Dienste einstellen können (beispielsweise aufgrund der Auflösung, der Übernahme, des Verkaufs des Unternehmens oder aufgrund der generellen Einstellung von CC-Diensten), stellt dies eine anzustrebende Eigenschaft dar. Kompatibilität besitzt jedoch auch in Hinsicht auf die Verknüpfung von CC-Anwendungen Vorteile, wenn diese in der Lage sein sollen, untereinander zu kommunizieren und Informationen auszutauschen (auch CC-Provider übergreifend).
Anpassungen
Im Vergleich zu herkömmlicher Softwareentwicklung stellen Applikationen des CC lediglich die Anforderung, Änderungen zentral an einer Stelle vorzunehmen. Vorgenommene Änderungen (Einbindung neuer Funktionen, generelle Softwareupdates, Schließung von Sicherheitslücken...) finden dadurch in jeder Instanz die durch einen Kunden aufgerufen wird bereits Anwendung. Diese Eigenschaft erspart personelle Auwendungen und damit verbunden auch Zeit sowie Kosten.
8.3.2 Zugangsschnittstellen
Der Zugang des Kunden zu Dienstleistungen des CC, sei es der Zugriff auf Ressourcen oder bestimmte Applikationen, muss über entsprechende Schnittstellen erfolgen.
Wie diese in der Praxis gestaltet werden ist dabei nicht klar definiert und zukünftige Entwicklungen werden hier Wege aufzeigen.
Heutige CC-Dienste sind primär über einen Webbrowser als Schnittstelle erreichbar. Da ein oder mehrere Webbrowser üblicherweise bereits auf einem Computer als Standardanwendung installiert sind, sind zusätzliche Installationen nicht notwendig.
Im Bezug auf die Bereitstellung von Applikationen haben einfache Zugangsschnittstellen den Vorteil, dass diese Installationen überflüssig machen. In Unternehmen lassen sich Anwendungen für Mitarbeiter in dieser Weise schnell und problemlos bereitstellen.
Dieser Vorteil bleibt auch dann noch erhalten wenn definierte Schnittstellen in Form von Zusatzsoftware eingeführt werden. Durch den Einsatz von Zusatzsoftware ist es möglich Vorteile in der Handhabung und Bedienung zu erzielen, sowie ggf. Funktionalitäten einführen, die auch noch gebräuchlich sind, wenn keine aktive Verbindung zum Internet bestehen sollte.[32]
Damit das CC seine Vorteile behält ist es notwendig, dass im Falle des Einsatzes von Zusatzsoftware als Schnittstelle diese nicht umfangreich ausfällt, sondern die Eigenschaft besitzt, sich zeitnah und unkompliziert integrieren zu lassen.[33]
8.4 Anforderungen an die Datenhaltung - Risiken und Bestimmungen
Insbesondere im Bezug auf Kunden- und Unternehmensdaten ist aus Unternehmenssicht großer Wert darauf zu legen, dass diese Daten oder Teile davon nicht verloren gehen (Datensicherheit), nicht beschädigt oder verfälscht werden (Datenintegrität) und auch nicht von Dritten eingesehen werden (Datenschutz). Einen Zusammenhang zum Datenschutz besitzen zudem auch staatliche Datenschutzbestimmungen, die ggf. mit der Speicherung von Daten in Konflikt stehen können.
8.4.1 Gefahrenpotentiale
Der Einsatz von Cloud Computing bringt zudem auch neue Risiken, Anforderungen und Denkansätze mit sich die es ebenfalls zu beachten gilt, denn niedrigere Kosten die durch CC erreicht werden können, sollten nicht durch Inkaufnahme höherer Gefahrenpotentiale realisiert werden.
Es ist notwendig, dass Anwender vollstes Vertrauen in die Provider besitzen, denn sobald Daten sich in der Cloud befinden, besteht seitens der Dateneigentümer keine aktive Kontrolle mehr darüber, was mit den Daten passiert. Dies betrifft sowohl private, als auch Unternehmensdaten (E-Mails, Dokumente, Bilder, Kundendaten, Bankdaten...). Selbst wenn das Vertrauen gegeben ist, so kann von Providerseite aus keine Garantie gewährleistet werden. Dies bezüglich stellt sich etwa die Frage was unternommen werden kann um zu verhindern, dass einzelne Mitarbeiter der Provider Kundendaten einsehen bzw. auslesen oder manipulieren.[34] Bei Überlegungen Daten auszulagern ist eine langfristige Bindung an einen Provider zu berücksichtigen, doch auch an den Weg zurück aus dem CC ist zu denken. Macht man sich durch den Einsatz von CC auf Lange Sicht hin abhängig von einzelnen Providern? Was passiert mit Unternehmensdaten wenn ein Provider seine Dienste einstellt? Wie können Daten wieder aus der Cloud entfernt werden, auch ohne das Reste von Datenbeständen bei Providern verbleiben?[35]
Auch die Gefahr des Ausfalls von CC-Dienstleistungen darf nicht außer Acht gelassen werden, denn ein solcher Ausfall könnte für Kunden nachhaltige Folgen mit sich ziehen, wenn etwa sämtliche Unternehmensdaten für Stunden, Tage oder noch längere Zeit nicht verfügbar wären oder es sogar zu Datenverlusten auf Seiten des Providers kommt.[36]
Ausfallsicherheit
Die Ausfallsicherheit als ein Merkmal von Computersystemen und Netzwerken, meint den ausfallfreien und störungssicheren Dauerbetrieb. Zur Verbesserung dieser Ausfallsicherheit existieren verschiedene Techniken und Verfahren, mit denen Übertragungsstrecken und System redundant ausgeführt, Versorgungsspannungen abgesichert und Daten dupliziert werden können.[37]
Ein heute sehr wichtiger Faktor zur Erhöhung der Ausfallsicherheit stellt die Wärmeableitung dar. Ein gute und sichere Wärmeableitung und die damit verbundene geringere Umgebungstemperatur von elektronischen Bauteilen erhöht die Ausfallsicherheit beträchtlich.
Desweiteren werden in der Systemtechnik Serverfarmen eingesetzt, die den Ausfall eines oder mehrerer Server ohne Datenverlust oder Arbeitsbeeinträchtigungen kompensieren können.
Für die Sicherung der Versorgungsspannung existieren unterbrechungsfreie Stromversorgungen (USV), die den eigentlichen Servern vorgeschaltet sind und neben der Aufrechterhaltung der Versorgungsspannung bei Spannungsausfall auch Spannungsschwankungen kompensieren, die ansonsten der Hardware schaden könnten.
Wenn auch die Nutzung von USVs zur Aufrechterhaltung des Betriebs mit enormen Aufwand/Kosten verbunden ist, so sind unterbrechungsfreie Stromversorgungen unabdingbar um vorhandene Systeme bei Stromausfällen kontrolliert herunterzufahren um somit Datenverlusten vorzubeugen.
Was die Duplizierung von Daten betrifft, so existieren dafür verschiedene Möglichkeiten für die Erstellung von Sicherungskopien, der Spiegelung von Festplatten oder das Striping von Datenblöcken, die mit RAID-Systemen realisiert werden.
8.4.2 Authentifizierung
Die Sicherheit ausgelagerter Daten ist daher auch zu großen Teilen vom Zugang zu diesen abhängig. Der Zugangsschutz zu wichtigen Unternehmensdaten oder Applikationen durch einfache Passwörter ist bei der Nutzung von CC-Diensten daher nicht zweckmäßig, aus diesem Grund spielt Zwei-Wege-Authentifizierung, d.h. die Zugangskontrolle mit mehreren Schritten, eine zunehmende Rolle.[38] Die Bereitstellung von Zwei-Wege-Authentifizierung kann ebenfalls als SaaS erfolgen.[39] Die Authentifizierung erfolgt dabei mit Hilfe eines Token. Der Kunde, in Form eines Mitarbeiters, besitzt dazu ein festes persönliches Passwort sowie ein einmalig vom Token generiertes Passwort. Die Prüfung der Identität erfolgt über den SaaS Provider der Authentifizierung. Auch wenn ein Mitarbeiter Zugänge zu mehreren verschiedenen CC-Diensten besitzt kann ein und das selbe Token zur Authentifizierung genutzt werden, allerdings unter der Voraussetzung dass standardisierte Schnittstellen vorliegen.
8.4.3 Sicherheitslösungen
Es ist anzunehmen, dass zukünftig mit der Bedeutung und Verbreitung des CC auch das Interesse seitens Hackern und Programmierern von Schadsoftware zunehmen wird Hacker besitzen nun die Möglichkeit durch gezielte Angriffe weitaus größeren Schaden anzurichten oder an eine viel umfangreiche Masse an Informationen zu gelangen, da viele Unternehmensdaten gebündelt bei einzelnen Providern vorliegen werden.[40] Doch nicht nur Hacker können größeren Schaden anrichten, auch Schadsoftware stellt eine große Gefahr dar.
Um die Integrität von Daten zu gewährleisten, welche in einer Cloud abgelegt wurden, sind, ebenso wie auf Desktop-Computern, umfangreiche Schutzmaßnahmen nötig. Neben Virenscannern und Firewalls ist es nötig auch die Signaturen und Aktivitäten von gehosteten Anwendungen zu überwachen, um eine Zweckentfremdung zu verhindern.
Anders als bei Sicherheitslösungen im Desktopbereich ist es mit einer zentralen Überwachung und der flexiblen Skalierung jedoch möglich, die benötigten Ressourcen bedarfsgerecht abzurufen. Dies führt dazu, dass eine ansonsten als eher bremsend empfundene Sicherung der Arbeitsumgebung vermieden wird. Bei einer ausschließlichen Koppelung der Endgeräte an eine Cloud und die Nutzung des Internets bspw. über einen in der Cloud gehosteten Browser, könnte eine andauernde Pflege der Sicherungssyteme der Clients entfallen. Eine einmal gesicherte Verbindung wäre ausreichend. Alle weiteren im Internet möglichen Gefahren durch Viren, Würmer, Trojaner oder manipulierte Webseiten würden durch die in der Cloud eingerichteten Sicherungssysteme abgefangen. Um ein komfortables Arbeiten im Internet auch über eine Vermittlungsstelle wie der Cloud möglich zu machen, sind aber möglichst kurze Laufzeiten unabdingbar. Sicherrungssysteme für die Cloud besitzen zudem das Potential, sich an veränderte Gegebenheiten anzupassen. So können derartige Sicherheitslösungen etwa mit permanent aktuellen Virensignaturen arbeiten und auf eine große Wissensbasis im Bezug auf die Erkennung von Schadsoftware zurückgreifen.[41]
8.4.4 Datenschutzbestimmungen
Bezüglich geltenden Gesetzen sind auch Datenschutzbestimmungen beim Einsatz von CC einzuhalten, dies gilt insbesondere für Unternehmen, denn letztlich bleibt die Verantwortung zur Einhaltung geltender Bestimmungen und Anforderungen an den Datenschutz bei den Dateneigentümern.[42]
Nach geltendem deutschen Gesetz ist etwa die Auslagerung personenbezogener Daten nicht umproblematisch, denn es herrschen Vorschriften darüber, wohin, dass heißt in welche Länder eine Auslagerung stattfinden darf, und in welche Länder nicht. Die europäische Union unterscheidet dies bezüglich EU-Staaten und weitere vertrauenswürdige Staaten in denen eine Datenverarbeitung erfolgen darf und des weiteren sogenannte Drittstaaten, die von der EU als solche eingestuft werden und in denen eine Datenverarbeitung nicht gestattet ist. Die Liste der Drittstaaten wird von der EU immer aktuell gehalten und kann öffentlich eingesehen werden.[43] Für das CC bedeuten derartige Regelungen, dass ein Provider dem Kunden die Möglichkeit gewähren muss, Einfluss darauf zu gewähren an welchem Ort Daten gelagert und verarbeitet werden.[44] Eine solche Möglichkeit bietet bereits Amazon mit seiner "Elastic Compute Cloud" und unterscheidet dabei das Angebot regional nach Europa und den USA.[45]
9 Cloud Computing aus wirtschaftlicher Sicht
9.1 Kosten für die Provider
Für Provider, d.h. die Anbieter von Hardware-Ressourcen, ist Cloud Computing mit enormen Aufwand verbunden. Ein Provider muss dazu riesige Rechenzentren aufbauen, betreiben und instandhalten, was hohe Kosten mit sich zieht. Die wenigen großen Anbieter von Cloud Computing Leistungen die bereits auf dem Markt vertreten sind besitzen in dieser hinsicht einen entscheidenden Vorteil gegenüber Anbietern die neu auf dem Markt auftreten und sich etablieren wollen. Unternehmen wie Google, Microsoft, IBM usw. können bereits auf komplexe vorhandene Rechenzentren zurückgreifen und müssen diese lediglich erweitern wenn es der Bedarf erfordert. Stehen den Anbietern noch freie Kapazitäten zur Verfügung, so lassen sich in diesem Fall weitere Einnahmequellen realisieren.[46]
Grundsätzlich stellt sich jedoch die Frage, ob es generell lohnenswert ist als Provider von Ressourcen aufzutreten. Wichtig ist hierbei hauptsächlich, ob es dem Provider möglich ist die hohen Investitionskosten und laufenden Kosten zu amortisieren, indem sie an die Kunden weitergegeben und indem Skaleneffekte realisiert werden.[47]
Aufgrund der Notwendigkeit großer Mengen an Hardware ist es Providern möglich bei Beschaffungen, Netzanbindungen und der Stromversorgung Rabatte zu realisieren. Auch die Standortwahl ist für potentielle Provider von entscheidender Rolle, da sich speziell unterschiede in den Kosten für die Stromversorgung bei riesigen Rechenzenten bemerkbar machen.[48]
9.2 Kosten für die Anwender
Modelle der Lizenzierung sind gegenüber herkömmlicher an einen Arbeitsplatz oder Standort gebundener Software an das Modell des Cloud Computing anzupassen.
In herkömmlichen Verfahren wird die Lizenzierung etwa durch feste Lizenzen vorgenommen (gebunden an einen Computer oder einen lokalen Benutzer) oder eine feste Anzahl an Lizenzen wird von einem Lizenz-Server verwaltet und individuell zugewiesen. Doch solche Lizenzierungsmodelle beziehen sich auf erworbene Softwarekopien. Dem gegenüber werden Applikationen des CC allerdings nicht erworben sondern vielmehr gemietet bzw. geleast. Die Bezahlung erfolgt daher nicht für den Besitz der Software sondern für deren Nutzung (pay-for-use).[49] Das mieten bzw. leasen von Software bedeutet gegenüber dem Kauf von Software eine Schonung der Liquidität (keine Investitionskosten in Hardware - Server - zudem bleiben hohe Anschaffungskosten für Software aus) und bietet dem Nutzer eine erhöhte Flexibilität.[50]
Abrechnungsmodelle für das CC sollten vor allem den Aspekt der Abrechnung nach Bedarf berücksichtigen, d.h. die Bezahlung soll sich nach der tatsächlichen Inanspruchenahme von Diensten richten. Dies wird auch als pay-as-you-go bezeichnet. Modelle für das CC können etwa in der Art gestaltet sein, dass die Bezahlung für Software oder genutzte Hardwareressourcen auf Abrechnungseinheiten basiert. Beispiele für Abrechnungseinheiten können dabei Minuten/Stundensätze für Rechenzeiten sein, Kosteneinheiten die sich an dem Datenumsatz orientieren oder auch Kosteneinheiten wie beispielsweise die Anzahl an vorgenommenen Transaktionen und weitere denkbare. Um den Ansatz den CC verfolgt konsequent umzusetzen, d.h. nur für den tatsächlichen Bedarf zu bezahlen, müssen Abrechnungseinheiten klein gehalten werden. Kosten die etwa durch Grundgebühren, Pauschalen, Flatrates oder feste Abnahmekapazitäten entstehen, widersprechen diesem Ansatz. In diesen Fällen würde dem Kunden auch bei nicht in Anspruchnahme der Dienstleistungen Kosten entstehen.[51] Eine Alternative kann auch die Bereitstellung in der Art von Prepaid-Tarifen bedeuten, die eine bestimmte Nutzungsdauer, Datenvolumen, Anzahl an Transaktionen etc. beinhalten und aufgebraucht werden (nach Möglichkeit sollte das Guthaben aus den Tarifen nicht verfallen). Prepaid-Tarife bieten den Vorteil einer leichteren Kostenkontrolle, richten sich allerdings auch nach der Bezahlung für die tatsächliche Inanspruchnahme. Desweiteren sind derartige Tarife komfortabler in Berechnungen der Kosteneffizienz für Unternehmen einzubeziehen.[52]
Abgesehen von den Kosten die für Nutzung von CC-Leistungen fällig werden, ist es Unternehmen jedoch durch den Einsatz möglich Kosten einzusparen und die eigene Flexibilität zu steigern. Im Extremfall lagern Unternehmen ihr Rechenzentrum vollständig in die Cloud aus und können die Leistungsfähigkeit des Rechenzentrums. Wartungen, Installationen und sonstige Arbeiten müssen in diesem Fall nicht mehr eigenständig durchgeführt werden, wodurch Unternehmen ebenfalls Kosten für Mitarbeiter einsparen können.
10 Cloud Computing heute und zukünftig
10.1 Aktuelle Anbieter und Produkte
Zu den derzeit größten und wichtigsten Anbietern von Cloud Computing Leistungen zählen Amazon, IBM, Google, Salesforce.com und Microsoft.[53] Im Folgenden werden die jeweiligen Angebote und Ziele der Unternehmen in einem Überblick dargestellt.
Amazon
Das Amazon-Produkt trägt den Namen "Elastic Compute Cloud" kurz EC2.[54]
Amazon ermöglicht es Entwicklern sowie Unternehmen Kapazitäten der Amazon-Serverfarm zu mieten. Die zur Verfügung stehenden Kapazitäten sind skalierbar, das bedeutet, die Anzahl der virtuellen Maschinen die vom Kunden nutzbar sind, lassen sich variabel anfordern. Neben der Anzahl können Kunden auch aus verschiedenen Ausführungen virtueller Maschinen wählen, die sich in ihrer Ausstattung unterscheiden.[55]
Merkmale nach denen die virtuellen Maschinen unterschieden werden sind der verfügbare Festplattenspeicher, die Größe des Arbeitsspeichers und die Anzahl sowie Architektur (32 oder 64bit) der virtuellen Prozessoren.
Kunden die Cloud Computing Leistungen von Amazon in Anspruch nehmen zahlen dabei nur für die tatsächlich genutzten Kapazitäten. Zu diesen Kapazitäten zählen etwa die genutzte Rechenleistung oder aber auch das verursachte Datentransfervolumen.
IBM
Als Zielgruppe seiner Cloud Computing Dienstleistungen hat IBM kleine und mittelgroße Unternehmen ausgemacht. Im Rahmen der Blue Cloud-Initiative bietet IBM Cloud Computing an, das verschiedene Leistungen enthält. Zu diesen Leistungen zählen unter anderem on-demand services wie Datenbackup und Wiederherstellung, generelle Leistungen in Bezug auf Datensicherheit sowie weitere Angebote im Zusammenhang mit E-Mail-Services und der Archivierung von E-Mails.[56][57]
Google
Google bietet einen Service an der unter dem Namen "Google App Engine" geführt wird. Google App Engine bietet voll funktionsfähige Entwicklungsumgebungen, die es Entwicklern ermöglichen eigene Anwendungen zu erstellen. Diese selbst entwickelten Anwendungen nutzen die selbe Infrastruktur, auf der auch Googles eigene Applikationen aufbauen.[58]
Erstellte Anwendungen können in die Cloud geladen und somit anderen Personen zur Verfügung gestellt werden. Gleichzeitig bietet Google noch weitere Funktionen die zur Verfügung stehen. So können Applikationen etwa "URL Fetch" nutzen um Informationen über andere Internetressourcen zu sammeln oder den App Engine Mail Service nutzen, um Nachrichten zu versenden.[59]
Bekannte Applikationen die von Google selbst angeboten werden sind Picasa (Online Fotoalben), Google Reader (für Newsfeeds), Google Kalender, Google Docs (Online Text- und Tabellenbearbeitung).
Salesforce.com
Salesforce ist Anbieter von Geschäftsanwendungen (das Angebot ist somit auch Unternehmen ausgerichtet) und bietet über Force.com eine eigene Plattform für die Entwicklung und die Infrastruktur für die Bereitstellung von SaaS-Anwendungen an.[60]
Über Force.com werden Entwicklern unterschiedliche Werkzeuge für die Anwendungsentwicklung zur Verfügung gestellt.
Die Abrechnung der Bereitstellung erfolgt dabei nach der Anzahl der Zugriffe auf die Anwendungen, die je nach Einstellung einer breiten Masse oder nur autorisierten Personen zur Verfügung gestellt werden können.[61]
Den Großteil des Angebots von force.com stellen Anwendungen für die Analyse, etwa von Verkaufszahlen, Finanzanalysen oder auch Auswertungen im Bereich des Marketing und weiteren Bereichen.
Microsoft
Mit Windows Azure bietet auch Microsoft eine Service Plattform im Bereich des Cloud Computing.[62]
Ziel ist es mit Windows Azure das Hosting und die Administration von Anwendungen zu ermöglichen, sowie Speicher und weitere Leistungen anzubieten. Wie andere Anbieter im Bereich des Cloud Computing stellt auch hier Microsoft seine eigene Infrastruktur zur Verfügung. Anwendungen werden mit Hilfe der .NET Bibliotheken entwickelt. Weitere Entwicklungstools wie Visual Studio sollen zukünftig ebenfalls Einzug erhalten.[63]
Unter dem Begriff "Microsoft Online Services" weitet Microsoft sein Cloud Computing Angebot zudem weiter aus und hat als Zielgruppe sowohl mittelständische als auch Großunternehmen ins Auge gefasst. Zu dem erweiterten Angebot zählt die Bereitstellung von Microsoft Exchange Online, SharePoint Online, Office Communications Online, Office Live Meeting und weiteren Diensten.[64]
Die Abrechnung der Dienste erfolgt auf einer monatlichen pro Nutzer Basis.
10.2 Zukünftige / angestrebte Entwicklungen
Damit das Cloud Computing sich etablieren kann, sind zunächst überzeugende Sicherheitskonzepte notwendig, um sensiblen Daten während des Austausches und der Konservierung einen ausreichenden Schutz zu gewähren. Die emotionale Seite im Umgang mit Firmendaten spielt sicherlich bei der Akzeptanz des Konzepts eine große Rolle. Einige bereits verbreitete Medien begünstigen die zukünftige Entwicklung des Cloud Computing, da ihre Nutzung an wechselnden und sich bewegenden Standorten für den Produktnutzen unabdingbar ist. Explizit zu nennen sind hier (in der Reihenfolge zunehmender Abhängigkeit von Umweltinformationen)
- der mp3-Player (mit Verfügbarkeit neuer Musikdaten)
- das Handy (mit Verfügbarkeit von Kontaktdaten)
- der RFID-Chip (mit Anbindung zum Warenwirtschaftssystem)
- das GPS-Systems (mit Verfügbarkeit von Geodaten)
All diese Medien kommunizieren mit Ihrer Umwelt in einer Weise, die eine aktualisierende Datenverfügbarkeit zumindest wünschenswert, teils sogar unabdingbar machen. Dunkel nennt in diesem Zusammenhang den Begriff des Ubiquitous Computing, welcher die Omnipräsenz von Computern und Sensoren bezeichnet.[65] Zukünftig werden weitere Medien hinzukommen, die bislang wenig oder gar nicht etabliert sind. Zu nennen sind hier z.B.:
- Messung der Vitalfunktionen des menschlichen Körpers mittels Sensoren für medizinische Zwecke mit Anbindung zum medizinischen Versorgungsnetz
- Messung der Körpertemperatur zwecks automatisierter Steuerung des häuslichen Heizsystems
Um bei den zukünftigen Entwicklungen den wachsenden Ansprüchen an die Verfügbarkeit der Informationen zu genügen, muss das gesamte System mit hoher Rechenleistung, großem Speicherumfang und einer dezentralen Organisation ausgestattet sein. Bei Dunkel[66] findet man hierzu den Begriff des Ultra-Large-Scale System (ULS-System). Hierbei handelt es sich um eine Größenordnung der sog. „digitalen Ökosysteme“, d.h. vernetzte sozio-technische Systeme von Computern, Sensoren und Mensch, die miteinander kommunizieren und interagieren. Sowohl das Internet als auch große Organisationsnetze gehören lt. Masak dazu. Die Besonderheit solcher Systeme besteht darin, dass sie (analog zum biologischen Ökosystem) von einer eigenen Dynamik bestimmt werden und bestimmte Entwicklungen teils nicht mehr oder nur mit größerem Aufwand vorhersehbar sind.
Sie zeichnen sich durch folgende Fähigkeiten aus:
- kontinuierliches Design und Redesign
- dynamische Architekturen
- selbstständige Software
- Kontinuierliche Installation
- Selbstinstallation
- selbstveränderliche Software
- automatische Fehlerkorrektur
- Feedback
- Autopoia (dynamische Systeme) Allopoia (statische Systeme)[67]
Insbesondere derartige Entwicklungen können dazu beitragen Cloud Computing zu etablieren, da es in solchen Fällen seine Stärken der Flexibilität und Skalierbarkeit ausspielen kann.
Im Modell des von der Jackie Fenn (Beraterin beim Marktforschungsinstitut Gartner Inc.) entwickelten Hype Cycle [68] sind unterschiedliche Technologietrends dargestellt sowie ihr Entwicklungsverlauf. Zu diesen Trends gehört ebenfalls das Cloud Computing, welches als Entwicklung zunächst den Höhepunkt seines "Hypes" erreichen wird. Erst wenn die Potentiale des CC von der Öffentlichkeit richtig eingeschätzt werden, wird das Cloud Computing einen von der breiten Masse akzeptierten, produktiven Status einnehmen. Um dieses Ziel allerdings zu erreichen ist es ebenfalls notwendig, dass die in dieser Arbeit genannten Voraussetzungen geschaffen und die Risiken die mit dem CC in Verbindung stehen begrenzt werden. Wichtig ist es das Vertrauen der Öffentlichkeit gegenüber dieser Entwicklung zu gewinnnen.[69]
11 Fußnoten
- ↑ Vgl. Rajkumar et al. (o.J.), S.5
- ↑ Vgl. Kunze et al. (2008), S.3
- ↑ Vgl. Rajkumar et al. (o.J.), S.1
- ↑ Vgl. Kunze et al. (2008), S.3
- ↑ Vgl. Foster et al. (o.J.), S.2
- ↑ Vgl. Foster et al. (o.J.), S.1
- ↑ Vgl. Kunze et al. (2008), S.3
- ↑ Vgl. Foster et al. (o.J.), S.1
- ↑ Vgl. Foster et al. (o.J.), S.1f.
- ↑ Vgl. Kunze et al. (2008), S.3
- ↑ Vgl. Armbrust et al. (2009), S.1,4
- ↑ Vgl. Miller (2009), S.8
- ↑ Vgl. Armbrust et al. (2009), S.11
- ↑ Vgl. Briscoe/Marinos (2009), S.2
- ↑ Vgl. Armbrust et al. (2009), S.1
- ↑ Vgl. Foster et al. (o.J.), S.4
- ↑ Vgl. Miller (2009), S.11
- ↑ Vgl. Miller (2009), S.12
- ↑ Vgl. Miller (2009), S.13
- ↑ Vgl. Miller (2009), S.14
- ↑ Vgl. Miller (2009), S.15
- ↑ Vgl. Miller (2009), passim
- ↑ Vgl. Lindau (2009), S. 1
- ↑ Vgl. IT-Business (2009-05)
- ↑ Miller (2008) passim
- ↑ Vgl. Armbrust et al. (2009), S.14
- ↑ Vgl. Armbrust et al. (2009), S.16
- ↑ Vgl. Armbrust et al. (2009), S.8
- ↑ Vgl. Rajkumar et al. (o.J.), S.1
- ↑ Vgl. Blome (2009)
- ↑ Vgl. Armbrust et al. (2009), S.10
- ↑ Vgl. Armbrust et al. (2009), S.19
- ↑ Vgl. Kunze et al. (2008), S.5
- ↑ Vgl. Kalkuhl (2009)
- ↑ Vgl. Friedmann (2008)
- ↑ Vgl. Weiss (2008)
- ↑ Vgl. ITWissen
- ↑ Vgl. Valcke (2009)
- ↑ Beispiel: https://www.vasco.com/about/press/fullstory.html?press=672 (09.06.2009, 18:50)
- ↑ Vgl. Johnston (2008)
- ↑ Vgl. Kalkuhl (2009)
- ↑ Vgl. Paulus (2009)
- ↑ siehe http://ec.europa.eu/justice_home/fsj/privacy/thridcountries/index_de.htm
- ↑ Vgl. Paulus (2009)
- ↑ Vgl. Amazon (o.J.)
- ↑ Vgl. Armbrust et al. (2009), S.5
- ↑ Vgl. Armbrust et al. (2009), S.6
- ↑ Vgl. Armbrust et al. (2009), S.6
- ↑ Vgl. Miller (2009), S.40
- ↑ Vgl. Miller (2009), S.39
- ↑ Vgl. Michels (2009)
- ↑ Vgl. Armbrust et al. (2009), S.19
- ↑ Vgl. Computerwoche (o.J.)
- ↑ Vgl. Amazon (o.J.)
- ↑ Vgl. Miller (2009), S. 42f.
- ↑ Vgl. Miller (2009), S. 44f.
- ↑ Vgl. IBM (o.J.)
- ↑ Vgl. Miller (2009), S. 43f.
- ↑ Vgl. Google (o.J.)
- ↑ Vgl. Salesforce (o.J.)
- ↑ Vgl. Miller (2009), S. 45
- ↑ Vgl. Microsoft (o.J.)
- ↑ Vgl. Kaufmann (2008)
- ↑ Vgl. IT-Republik (2009)
- ↑ Vgl. Dunkel et al. (2008), S. 273
- ↑ Vgl. Dunkel et al. (2008), S. 274
- ↑ Vgl. Masak (2009), S. 236
- ↑ Vgl. Fenn (2008)
- ↑ Vgl. Armbrust et al. (2009), S.19
12 Literatur- und Quellenverzeichnis
| Allspaw (2008) | Allspaw, John: The Art of Capacity Planning: Scaling Web Resources. 2008, http://books.google.de/books?id=Yi3trjJ1JuQC&pg=RA1-PA108&dq=cloud+computing |
| Amazon (o.J.) | o.V.: Amazon Elastic Compute Cloud, http://www.amazon.com/ec2 (09.06.2009, 17:27) |
| Apple (o.J) | Apple Webauftritt mit dem iPhone http://www.apple.com/de/iphone/ |
| Armbrust et al. (2009) | Armbrust, Michael; Fox, Armando; Griffith, Rean; Joseph, D. Anthony; Katz, Randy; Konwinski, Andy; Lee, Gunho; Patterson, David; Rabkin, Ariel; Stoica, Ion; Zaharia, Matei: Above the Clouds: A Berkeley View of Cloud Computing, http://digitalassets.lib.berkeley.edu/techreports/ucb/text/EECS-2009-28.pdf (09.06.2009, 18:07) |
| Beard (2008) | Beard, Haley: Cloud Computing Best Practices for Managing and Measuring Processes for On-demand Computing, Applications and Data centers in the Cloud with SLAs. 2008. |
| Briscoe/Marinos (2009) | Briscoe, Gerard; Marinos, Alexandros: Digital Ecosystems in the Clouds: Towards Community Cloud Computing, http://arxiv.org/PS_cache/arxiv/pdf/0903/0903.0694v2.pdf (09.06.2009, 18:10) |
| CIO (2009) | o.V.: Die fünf Schwachstellen von Cloud Computing, http://www.cio.de/knowledgecenter/ondemand/877810/index1.html (09.06.2009, 18:22) |
| Computerwoche (o.J.) | o.V.: wichtige Cloud-Anbieter, http://www.computerwoche.de/knowledge_center/software_infrastruktur/cloud-computing/anbieter/ (09.06.2009, 17:15) |
| Dunkel et al. (2008) | Dunkel, Jürgen, Andreas Eberhart, Stefan Fischer, Arne Koschel, Carsten Kleiner:
Systemarchitekturen für verteilte Anwendungen: Client-server, Multi-tier, SOA, Event-driven Architectures, P2P, Grid, Web 2.0. Hanser 2008. 293 Seiten. |
| Fenn et al. (2008) | Fenn, Jackie; Mark Maskino: Mastering the Hype Cycle: How to Choose the Right Innovation at the Right Time. 2008. |
| Foster et al. (o.J.) | Foster, Ian; Lu, Shiyong; Raicu, Ioan; Zhao, Yong: Cloud Computing and Grid Computing 360-Degree Compared, http://arxiv.org/ftp/arxiv/papers/0901/0901.0131.pdf (09.06.2009, 18:00) |
| Friedmann (2008) | Friedmann, Katharina: Cloud Computing - Wo die Gefahren lauern, http://www.computerwoche.de/knowledge_center/security/1867951/index2.html (09.06.2009, 18:16) |
| Gardner et al. (2008) | Gardner, P.; Prange, M.; Rehr, J.; Svec, L.; Vila, F.: Scientific Computing in the Cloud, http://arxiv.org/ftp/arxiv/papers/0901/0901.0029.pdf (09.06.2009, 18:02) |
| Gartner (2008) | o.V.: Hype Cycle for Emerging Technologies, http://www.gartner.com/it/page.jsp?id=739613 (13.06.2009, 17:50) |
| Google (o.J.) | o.V.: Google App Engine, http://code.google.com/intl/de-DE/appengine/docs/whatisgoogleappengine.html (09.06.2009, 17:16) |
| IBM (o.J.) | o.V.: Cloud Computing - Zugriff auf Ihre Anwendungen, von überall, zu jeder Zeit., http://www-05.ibm.com/de/cloud/ (09.06.2009, 19:10) |
| IT-Republik (2009) | o.V.: Cloud-Computing-Angebote von Microsoft, http://it-republik.de/business-technology/news/Cloud-Computing-Angebote-von-Microsoft-048548.html (09.06.2009, 17:16) |
| ITWissen | o.V.: http://www.itwissen.info/definition/lexikon/Ausfallsicherheit-reliability.html (14.06.2009, 19:27) |
| Johnston (2008) | Johnston, Sam: Cloud Computing and Privacy, http://www.circleid.com/posts/89163_cloud_computing_and_privacy/ (09.06.2009, 18:22) |
| Kalkuhl (2009) | Kalkuhl, Magnus: Freier Blick für die Zukunft: Cloud-Computing und Cloud- Sicherheit, http://www.viruslist.com/de/analysis?pubid=200883647#4 (09.06.2009, 18:16) |
| Kaufmann (2008) | Kaufmann, Joachim: Microsoft stellt Windows Azure vor, http://www.zdnet.de/news/wirtschaft_investition_software_microsoft_stellt_windows_azure_vor_story-39001022-39198143-1.htm (09.06.2009, 17:26) |
| Kunze et al. (2008) | Kunze, Marcel; von Laszewski, Gregor; Tao, Jie; Wang, Lizhe; : Cloud Computing: a Perspective Study, https://ritdml.rit.edu/dspace/bitstream/1850/7821/1/LWangConfProc11-16-2008.pdf (09.06.2009, 17:55) |
| Masak (2009) | Masak, Dieter: Digitale Ökosysteme: Serviceorientierung bei dynamisch vernetzten Unternehmen. 2009. |
| Menken (2008) | Menken, Ivanka: Cloud Computing - The Complete Cornerstone Guide to Cloud Computing Best Practices Concepts, Terms, and Techniques for Successfully Planning, Implementing ... Enterprise IT Cloud Computing Technol. 2008. |
| Michels (2009) | Michels, Jochen K.: Cloud Computing fehlen in der Praxis echt bedarfsgerechte Abrechnungsmodelle, http://www.computerzeitung.de/articles/cloud_computing_fehlen_in_der_praxis_echt_bedarfsgerechte_abrechnungsmodelle:/2009017/31922487_ha_CZ.html?thes=8006,9825,10227,10228,10232,10233&tp=/ausrichtungen/management&page=2 (09.06.2009, 18:15) |
| Microsoft (o.J.) | o.V.: Azure Services Platform, http://www.microsoft.com/azure (09.06.2009, 17:18) |
| Miller (2009) | Miller, M.: Cloud Computing, Web-Based Applications That Change the Way You Work an Collaborate Online, 2. Aufl., Indianapolis (USA, 2009) |
| Paulus (2009) | Paulus, Sachar: Datenschutz und Cloud Computing – ein Widerspruch?, http://www.computerzeitung.de/articles/datenschutz_und_cloud_computing__ein_widerspruch:/2009020/31942144_ha_CZ.html (09.06.2009, 18:25) |
| Rajkumar et al. (o.J.) | Rajkumar, Buyya; Chee Shin, Yeo; Srikumar, Venugopal:Market-Oriented Cloud Computing: Vision, Hype, and Reality for Delivering IT Services as Computing Utilities, http://arxiv.org/ftp/arxiv/papers/0808/0808.3558.pdf (09.06.2009, 17:42) |
| Salesforce (o.J.) | o.V.: Salesforce, http://www.force.com (09.06.2009, 17:24) |
| Valcke (2009) | Valcke, Jan: Mit Cloud Computing Geld sparen ohne Sicherheitsrisiko, http://www.searchsecurity.de/themenbereiche/identity-und-access-management/authentifizierung/articles/176162/ (09.06.2009, 18:23) |
| Weiss (2008) | Weiss, Harald: Cloud Computing - Amazons Cloud-Storage für acht Stunden ausgefallen, http://microsite.computerzeitung.de/article.html?art=/articles/2008031/31593923_ha_CZ.html&page=2&ms=/cloud-computing/index.html&pos=71&tpid=ee54f3c7-0de1-40f5-bb23-2cfdf022aee5&pid=ee54f3c7-0de1-40f5-bb23-2cfdf022aee5 (09.06.2009, 18:20) |
| Wohl (2008) | Wohl, Amy D.: Succeeding at SaaS. 2008 |
| Zeitler (2008-08) | Zeitler, Nicolas: Die neuen Trends des Gartner Hype Cycle 2008. Cloud Computing wird Mainstream. In: CIO-Netzwerk http://www.cio.de/markt/uebersichten/858133/ (13.06.2009, 17:45) |

