Cloud Computing
Als Cloud Computing bezeichnet man die Bereitstellung von Datenverarbeitungsdiensten durch ein Unternehmen oder einen Ort außerhalb des Ortes, an dem sie genutzt werden. Es ist wie die Art und Weise, in der Strom an die Nutzer geschickt wird: Sie nutzen einfach den Strom, der an sie geschickt wird, und müssen sich nicht darum kümmern, woher der Strom kommt oder wie er hergestellt und zu ihnen gebracht wird. Jeden Monat zahlen sie nur für das, was sie verbraucht haben, und nicht mehr. Die Idee hinter Cloud Computing ist ähnlich: Der Benutzer kann einfach Speicher, Rechenleistung oder Entwicklungsumgebungen nutzen, ohne sich hinter den Kulissen darum kümmern zu müssen, wie sie arbeiten.
Die Wolke ist eine Metapher für das Internet, die darauf basiert, wie es in Computernetzwerkdiagrammen beschrieben wird. Genauso wie in der realen Welt Wolken Teile des Himmels vor der Sicht verbergen, verbirgt die Wolke beim Computing die komplexe Infrastruktur, die das Internet funktionieren lässt. Es handelt sich um eine Art des Computings, bei der IT-bezogene Aktionen "als Dienstleistung" angeboten werden, so dass die Benutzer über das Internet ("in der Wolke") auf diese Dienste zugreifen können. Sie müssen die dahinter stehenden Technologien weder kennen noch kontrollieren, was verhindert, dass sie in ethische und rechtliche Probleme geraten.
Dem IEEE zufolge ist Cloud Computing ein Konzept, bei dem Informationen auf Servern abgelegt und über das Internet an andere Geräte wie Computer, Laptops, Handhelds und Sensoren gesendet werden. Es beinhaltet die Idee von Software as a Service (SaaS), wie z.B. Web 2.0, die auf das Internet angewiesen sind, um die Bedürfnisse ihrer Nutzer zu erfüllen. Google hat zum Beispiel mehrere Office-Suite-Anwendungen entwickelt, auf die über einen Webbrowser zugegriffen wird. Im Gegensatz zu anderer Software, die die gleichen Aufgaben erfüllt, einschließlich Microsoft Office, werden die Software und die Daten auf den Servern von Google gespeichert und nicht auf dem Rechner, auf dem sie verwendet werden.
Kurz
Vergleiche
Cloud Computing wird oft mit anderen Ideen verwechselt:
- Grid-Computing: eine Form des verteilten Rechnens, bei der ein "Super- und virtueller Computer" aus einem Cluster vernetzter, lose gekoppelter Computer besteht, die bei der Ausführung sehr großer Aufgaben zusammenarbeiten
- Utility-Computing: die Verpackung von Computerressourcen, wie z.B. Berechnung und Speicherung, wird als gemessene Dienstleistung bereitgestellt, die ähnlich wie bei einem traditionellen öffentlichen Versorgungsunternehmen wie Elektrizität bezahlt werden muss
- Autonomic Computing: Computersysteme, die in der Lage sind, sich selbst zu verwalten.
Cloud Computing verwendet häufig Grid Computing, hat autonome Eigenschaften und wird wie Versorgungsunternehmen abgerechnet, aber Cloud Computing kann als ein natürlicher nächster Schritt aus dem Grid-Utility-Modell betrachtet werden. Einige erfolgreiche Cloud-Architekturen haben wenig oder gar keine zentralisierte Infrastruktur oder Abrechnungssysteme wie Peer-to-Peer-Netzwerke wie BitTorrent und Skype.
Architektur
Der Großteil der Cloud-Computing-Infrastruktur besteht derzeit aus zuverlässigen Diensten, die über Rechenzentren bereitgestellt werden, die auf Computer- und Speichervirtualisierungstechnologien aufbauen. Die Dienste sind überall auf der Welt zugänglich, wobei die Cloud als ein einziger Zugangspunkt für alle Computing-Bedürfnisse der Verbraucher erscheint. Kommerzielle Angebote müssen die Servicequalitätsanforderungen der Kunden erfüllen und bieten in der Regel Service Level Agreements an. Offene Standards und Open-Source-Software sind ebenfalls entscheidend für das Wachstum des Cloud Computing.
Merkmale
Da die Kunden in der Regel nicht Eigentümer der Infrastruktur sind oder nicht alle Einzelheiten kennen, greifen sie hauptsächlich darauf zu oder mieten sie, so dass sie Ressourcen als Dienstleistung konsumieren können und möglicherweise für das bezahlen, was sie nicht benötigen, anstatt für das, was sie tatsächlich nutzen müssen. Viele Anbieter von Cloud Computing nutzen das Utility-Computing-Modell, das analog zum Verbrauch herkömmlicher öffentlicher Versorgungsleistungen wie Strom ist, während andere auf Abonnementbasis abgerechnet werden. Durch die gemeinsame Nutzung von verbrauchbarer und "immaterieller" Rechenleistung durch mehrere "Mieter" können die Nutzungsraten verbessert werden (da die Server nicht untätig bleiben), was die Kosten erheblich senken und gleichzeitig die Geschwindigkeit der Anwendungsentwicklung erhöhen kann.
Ein Nebeneffekt dieses Ansatzes ist, dass "die Rechnerkapazität dramatisch ansteigt", da die Kunden nicht für Spitzenlasten planen müssen. Die Annahme wurde durch eine "erhöhte Hochgeschwindigkeitsbandbreite" ermöglicht, die es ermöglicht, die gleichen Antwortzeiten von einer zentralisierten Infrastruktur an anderen Standorten zu erhalten.
Anbieter
Cloud Computing wird sowohl von Anbietern wie Google, Amazon.com und Yahoo! als auch von traditionellen Anbietern wie IBM, Intel, Microsoft und SAP vorangetrieben. Es kann von allen Arten von Benutzern übernommen werden, seien es Einzelpersonen oder große Unternehmen. Die meisten Internetnutzer nutzen derzeit Cloud-Dienste, auch wenn sie sich dessen nicht bewusst sind. Webmail zum Beispiel ist ein Cloud-Service, ebenso wie Facebook und Wikipedia sowie die Synchronisierung von Kontaktlisten und Online-Datensicherungen.
Geschichte
Die Wolke ist eine Metapher für das Internet, oder allgemeiner für Komponenten und Dienste, die von anderen verwaltet werden.
Das zugrundeliegende Konzept geht auf das Jahr 1960 zurück, als John McCarthy seine Meinung äußerte, dass "Berechnungen eines Tages als öffentliches Versorgungsunternehmen organisiert werden könnten", und der Begriff "Cloud" wurde bereits in den frühen 1990er Jahren kommerziell genutzt, um große ATM-Netzwerke zu bezeichnen. Um die Wende zum 21. Jahrhundert kamen Cloud-Computing-Lösungen auf den Markt, obwohl der Schwerpunkt zu dieser Zeit vor allem auf Software as a Service lag.
Amazon.com spielte eine Schlüsselrolle bei der Entwicklung von Cloud Computing, als sie ihre Rechenzentren nach der Dotcom-Blase aufrüsteten und 2002 den Zugang zu ihren Systemen über Amazon Web Services auf der Basis von Utility Computing anboten. Sie stellten fest, dass die neue Cloud-Architektur zu erheblichen internen Effizienzsteigerungen führte.
Im Jahr 2007 wurden vermehrte Aktivitäten beobachtet, darunter Google, IBM und eine Reihe von Universitäten, die ein groß angelegtes Cloud-Computing-Forschungsprojekt begannen, etwa zu der Zeit, als der Begriff in der Mainstream-Presse an Popularität gewann. Mitte 2008 war es ein heißes Thema, und es waren zahlreiche Cloud-Computing-Veranstaltungen geplant.
Im August 2008 bemerkte Gartner, dass "Organisationen von firmeneigenen Hardware- und Software-Assets auf nutzungsbezogene, dienstleistungsbasierte Modelle umstellen" und dass "die prognostizierte Umstellung auf Cloud Computing in einigen Bereichen zu einem dramatischen Wachstum von IT-Produkten und in anderen Bereichen zu erheblichen Reduzierungen führen wird".
Politische Fragen
Wolken überschreiten viele Ländergrenzen und "könnten die ultimative Form der Globalisierung sein". Als solche ist sie Gegenstand komplexer geopolitischer Fragen, wobei Anbieter viele rechtliche Beschränkungen erfüllen müssen, um Dienstleistungen auf einem globalen Markt anbieten zu können. Dies geht auf die Anfänge des Internets zurück, als liberale Denker der Meinung waren, dass "der Cyberspace ein eigenständiger Ort sei, der nach eigenen Gesetzen und rechtlichen Institutionen verlangt"; der Autor Neal Stephenson sah dies in seinem Science-Fiction-Klassiker Cryptonomicon als eine winzige Dateninsel an.
Obwohl es Bemühungen gegeben hat, das rechtliche Umfeld anzupassen (wie z.B. US-EU Safe Harbor), befassen sich Anbieter wie Amazon Web Services in der Regel mit internationalen Märkten (in der Regel die Vereinigten Staaten und die Europäische Union), indem sie eine lokale Infrastruktur bereitstellen und es den Kunden ermöglichen, ihr Land auszuwählen. Es gibt jedoch nach wie vor Bedenken hinsichtlich der Sicherheit und des Schutzes der Privatsphäre des Einzelnen auf verschiedenen Regierungsebenen (z.B. USA PATRIOT Act und Verwendung von nationalen Sicherheitsbriefen und Titel II des Electronic Communications Privacy Act, des Stored Communications Act).
Rechtliche Fragen
Im März 2007 meldete Dell in den Vereinigten Staaten den Begriff "Cloud Computing" als Marke an. Das Unternehmen erhielt im Juli 2008 eine "Notice of Allowance", die dann am 6. August storniert wurde, was in weniger als einer Woche später zu einer formellen Zurückweisung der Markenanmeldung führte.
Im November 2007 veröffentlichte die Free Software Foundation die Affero General Public License (abgekÃ?rzt als Affero GPL und AGPL), eine Version der GPLv3, die dazu gedacht ist, eine vermeintliche GesetzeslÃ?cke im Zusammenhang mit Freier Software zu schließen, die fÃ?r die AusfÃ?hrung Ã?ber ein Netzwerk entwickelt wurde, insbesondere fÃ?r Software als Dienstleistung. Gemäß der AGPL-Lizenz sind Anbieter von Anwendungsdiensten verpflichtet, alle Änderungen, die sie an einem unter der AGPL stehenden offenen Quellcode vornehmen, freizugeben.
Architektur
Cloud-Architektur ist die Systemarchitektur der Softwaresysteme, die an der Bereitstellung von Cloud-Computing beteiligt sind (z.B. Hardware, Software), wie sie von einem Cloud-Architekten entworfen wurde, der typischerweise für einen Cloud-Integrator arbeitet. Sie umfasst typischerweise mehrere Cloud-Komponenten, die über Schnittstellen zur Anwendungsprogrammierung (in der Regel Webdienste) miteinander kommunizieren.
Dies ist der Unix-Philosophie sehr ähnlich, bei der mehrere Programme eine Sache gut machen und über universelle Schnittstellen zusammenarbeiten. Die Komplexität wird kontrolliert, und die daraus resultierenden Systeme sind überschaubarer als ihre monolithischen Pendants.
Die Cloud-Architektur erstreckt sich auf den Client, wo Webbrowser und/oder Software-Anwendungen für den Zugriff auf Cloud-Anwendungen verwendet werden.
Die Cloud-Storage-Architektur ist lose gekoppelt, wobei die Metadaten-Operationen zentralisiert werden, so dass die Datenknoten in Hunderte skaliert werden können, wobei jeder unabhängig voneinander Daten an Anwendungen oder Benutzer liefert.
Schlüsselmerkmale
- Minimierter Investitionsaufwand, daher niedrige Eintrittsbarriere, da die Infrastruktur im Besitz des Anbieters ist und nicht für einmalige oder seltene intensive Rechenaufgaben angeschafft werden muss. Die Dienste sind in der Regel für Einzelhandelskunden und kleine Unternehmen verfügbar oder richten sich speziell an diese.
- Geräte- und Ortsunabhängigkeit, die es den Benutzern ermöglicht, unabhängig von ihrem Standort oder dem von ihnen verwendeten Gerät (z.B. PC, Handy,... etc.) auf Systeme zuzugreifen.
- Multitenancy ermöglicht die gemeinsame Nutzung von Ressourcen (und Kosten) unter einem großen Pool von Nutzern:
- Zentralisierung der Infrastruktur in Bereichen mit niedrigeren Kosten (z.B. Immobilien, Elektrizität)
- Erhöhung der Spitzenlastkapazität (Benutzer müssen nicht für höchstmögliche Laststufen planen)
- Auslastung und Effizienzverbesserungen bei Systemen, die oft nur zu 10-20% ausgelastet sind.
- Die Leistung ist überwacht und konsistent, kann jedoch durch unzureichende Bandbreite oder hohe Netzwerklast beeinträchtigt werden.
- Zuverlässigkeit durch mehrere redundante Standorte, was es für Business Continuity und Disaster Recovery geeignet macht. IT- und Geschäftsmanager können jedoch wenig tun, wenn sie von einem Ausfall betroffen sind. Historische Daten zu Ausfällen in der Cloud werden in der Cloud Computing Incidents Database nachverfolgt.
- Skalierbarkeit, die schnell auf wechselnde Benutzeranforderungen reagiert, ohne dass für Spitzenlasten geplant werden muss. Massive Skalierbarkeit und große Benutzerbasis sind zwar üblich, aber nicht unbedingt erforderlich.
- Sicherheit, die sich in der Regel durch die Zentralisierung von Daten, erhöhte sicherheitsorientierte Ressourcen usw. verbessert, aber Bedenken hinsichtlich des Kontrollverlusts über bestimmte sensible Daten aufwirft. Zugriffe werden in der Regel protokolliert, aber der Zugriff auf die Audit-Protokolle selbst kann schwierig oder unmöglich sein.
- Nachhaltigkeit durch verbesserte Ressourcennutzung, effizientere Systeme und Klimaneutralität.
Komponenten
Bewerbung
Eine Cloud-Anwendung beeinflusst das Cloud-Modell der Software-Architektur und macht es oft überflüssig, die Anwendung auf dem eigenen Computer des Kunden zu installieren und auszuführen, wodurch Software-Wartung, laufender Betrieb und Support reduziert werden. Zum Beispiel:
- Peer-to-Peer/Freiwilligenarbeit (Bittorrent, SETI@home, Skype)
- Web-Anwendung (Facebook)
- Software als Dienstleistung (Google Apps, Salesforce)
- Software plus Dienstleistungen (Microsoft Online Services)
Kunde
Ein Cloud-Client ist Computer-Hardware und/oder Computer-Software, die sich für die Anwendungsbereitstellung auf die Cloud stützt oder die speziell für die Bereitstellung von Cloud-Diensten entwickelt wurde und die in beiden Fällen ohne eine Cloud im Wesentlichen nutzlos ist. Zum Beispiel:
- Mobil (Android, iPhone, Windows Mobile)
- Thin-Client (CherryPal, Zonbu gOS-basierte Systeme)
- Dicker Client/Webbrowser (Google Chrome, Mozilla Firefox)
Infrastruktur
Cloud-Infrastruktur (z.B. Infrastructure as a Service) ist die Bereitstellung von Computer-Infrastruktur (typischerweise eine Plattform-Virtualisierungsumgebung) als Dienst. Zum Beispiel:
- Vollständige Virtualisierung (GoGrid, Skytap)
- Grid-Computing (Sonnengitter)
- Management (rechte Skala)
- Paravirtualisierung (Elastische Amazonas-Computerwolke)
Plattform
Eine Cloud-Plattform (z.B. Platform as a Service) (die Bereitstellung einer Computerplattform und/oder eines Lösungsstapels als Dienst) erleichtert die Bereitstellung von Anwendungen ohne die Kosten und die Komplexität, die mit dem Kauf und der Verwaltung der zugrunde liegenden Hardware- und Softwareschichten verbunden sind. Zum Beispiel:
- Web-Anwendungs-Frameworks
- Python Django (Google App Engine)
- Rubin auf Schienen (Heroku)
- Webhosting (Mosso)
- Geschützt (Azure, Force.com)
Dienst
Ein Cloud Service (z.B. Web Service) ist ein "Softwaresystem[e] zur Unterstützung interoperabler Maschine-zu-Maschine-Interaktion über ein Netzwerk", auf das andere Cloud Computing-Komponenten, Software (z.B. Software plus Dienste) oder Endnutzer direkt zugreifen können. Zum Beispiel:
- Identität (OAuth, OpenID)
- Integration (Einfacher Amazon-Warteschlangendienst)
- Kartierung (Google Maps, Yahoo! Maps)
- Zahlungen (Flexibler Amazon-Zahlungsservice, Google Checkout, PayPal)
- Suche (Alexa, Google Custom Search, Yahoo! BOSS)
- Andere (Mechanischer Amazonas-Türke)
Lagerung
Cloud-Storage ist die Bereitstellung von Datenspeicherung als Dienstleistung (einschließlich datenbankähnlicher Dienste), die häufig auf der Basis von Utility Computing abgerechnet wird (z. B. pro Gigabyte pro Monat). Zum Beispiel:
- Datenbank (Amazon SimpleDB, der BigTable-Datenspeicher der Google App Engine)
- Network Attached Storage (MobileMe iDisk-Komponente, Nirvanix CloudNAS)
- Synchronisation (Live Mesh Live Desktop-Komponente, MobileMe Push-Funktionen)
- Webdienst (Amazon Simple Storage Service, Nirvanix SDN)
Traditionelle Speicheranbieter haben vor kurzem damit begonnen, ihre eigene Variante von Cloud-Storage anzubieten, manchmal in Verbindung mit ihren bestehenden Softwareprodukten (z. B. Symantecs Online Storage für Backup Exec). Andere konzentrieren sich auf die Bereitstellung einer neuen Art von Back-End-Speicher, der optimal für die Bereitstellung von Cloud-Storage ausgelegt ist (Atmos von EMC), kategorisch bekannt als Cloud Optimized Storage.
Rollen
Anbieter
Ein Cloud-Computing-Anbieter oder Cloud-Computing-Dienstleister besitzt und betreibt Cloud-Computing-Systeme, die jemand anderem dienen. Dazu müssen in der Regel neue Rechenzentren gebaut und verwaltet werden. Einige Organisationen profitieren von den Vorteilen des Cloud Computing, indem sie "interne" Cloud-Provider werden und sich selbst bedienen, obwohl sie nicht von den gleichen Größenvorteilen profitieren und immer noch für Spitzenlasten planen müssen. Die Markteintrittsbarriere ist auch deutlich höher, da Investitionsausgaben erforderlich sind und die Rechnungsstellung und Verwaltung einen gewissen Overhead verursacht. Dennoch können selbst kleine Unternehmen erhebliche Vorteile in Bezug auf betriebliche Effizienz und Schnelligkeit erzielen, und die Serverkonsolidierung und Virtualisierung ist bereits im Gange. Amazon.com war der erste Anbieter dieser Art, der seine Rechenzentren modernisierte, die wie die meisten Computernetzwerke jeweils nur 10% ihrer Kapazität ausnutzten, nur um Platz für gelegentliche Spitzen zu lassen. Dies ermöglichte es kleinen, sich schnell bewegenden Gruppen, neue Funktionen schneller und einfacher hinzuzufügen, und sie öffneten es dann 2002 als Amazon Web Services auf Utility-Computing-Basis für Außenstehende.
Die im Abschnitt Komponenten aufgeführten Unternehmen sind Anbieter.
Benutzer
Ein Benutzer ist ein Konsument von Cloud Computing. Die Privatsphäre der Benutzer beim Cloud-Computing hat zunehmend an Bedeutung gewonnen. Die Rechte der Nutzer sind ebenfalls ein Thema, das durch die Bemühungen der Gemeinschaft um die Erstellung einer "Bill of Rights" (derzeit im Entwurf) angegangen wird.
Anbieter
Ein Anbieter verkauft Produkte und Dienstleistungen, die die Bereitstellung, Einführung und Nutzung von Cloud Computing erleichtern. Zum Beispiel:
- Computer-Hardware (Dell, HP, IBM, Sun Microsystems)
- Speicherung (3PAR, EMC, MogileFS)
- Infrastruktur (Solace-Systeme, Layer-7-Technologien, F5-Netzwerke)
- Computer-Software (3tera, GigaSpaces, Hadoop)
- Betriebssysteme (Windows Azure, Linux und Solaris)
- Plattformvirtualisierung (Citrix, Microsoft, VMware, Sun xVM)
Normen
Ein Cloud-Standard ist einer von mehreren bestehenden (typischerweise leichtgewichtigen) offenen Standards, die das Wachstum des Cloud-Computing erleichtert haben, darunter auch
- Bewerbung
- Kommunikation (HTTP, XMPP)
- Sicherheit (OAuth, OpenID, SSL/TLS)
- Syndikation (Atom)
- Kunde
- Internet-Browser (AJAX)
- Offline (HTML 5)
- Infrastruktur
- Virtualisierung (OVF)
- Plattform
- Lösungsstapel (LAMP, weltraumgestützte Architektur)
- Dienst
- Daten (XML, JSON)
- Webdienste (REST)
- Lagerung
Fragen und Antworten
F: Was ist Cloud Computing?
A: Von Cloud Computing spricht man, wenn Computing-Dienste von einem Unternehmen oder einem Ort außerhalb des Ortes, an dem sie genutzt werden, bereitgestellt werden. Es ist vergleichbar mit der Art und Weise, wie Strom an die Nutzer gesendet wird, damit diese über das Internet ("in der Cloud") auf diese Dienste zugreifen können.
F: Wie funktioniert Cloud Computing?
A: Der Benutzer kann einfach Speicherplatz, Rechenleistung oder Entwicklungsumgebungen nutzen, ohne sich Gedanken darüber machen zu müssen, wie diese hinter den Kulissen funktionieren. Die Cloud verbirgt die komplexe Infrastruktur, die das Internet zum Funktionieren bringt, und ermöglicht es, dass IT-bezogene Aktionen "als Service" angeboten werden.
F: Was ist ein Beispiel für Cloud Computing?
A: Ein Beispiel für Cloud Computing sind die Anwendungen der Office-Suite von Google, auf die über einen Webbrowser zugegriffen wird. Im Gegensatz zu anderer Software, die dieselben Aufgaben erfüllt, wie z.B. Microsoft Office, werden die Software und die Daten auf den Servern von Google gespeichert und nicht auf dem Rechner, auf dem sie verwendet wird.
F: Was sagt das IEEE über Cloud Computing?
A: Laut IEEE ist Cloud Computing ein Konzept, bei dem Informationen auf Servern gespeichert und über das Internet an andere Geräte wie Computer, Laptops, Handhelds und Sensoren gesendet werden. Dazu gehört auch Software as a Service (SaaS) wie Web 2.0, die auf das Internet angewiesen ist, um die Bedürfnisse ihrer Nutzer zu erfüllen.
F: Was müssen Benutzer nicht wissen oder kontrollieren, wenn sie Cloud-Dienste nutzen?
A: Die Nutzer müssen die Technologien, die hinter der Nutzung von Cloud-Diensten stehen, nicht kennen oder kontrollieren, um ethische und rechtliche Probleme zu vermeiden.
F: Wie verhält es sich mit der Bezahlung von Strom im Vergleich zur Bezahlung von Cloud-Diensten?
A: Genauso wie Sie bei der monatlichen Stromrechnung nur für das bezahlen, was Sie verbraucht haben, zahlen Sie bei der Bezahlung von Cloud-Diensten nur für das, was Sie verbrauchen, und nicht für mehr.