Einbetten in das Internet der Dinge IoT von der Stange

Um die Fähigkeiten der Cloud zu nuten, muss man wissen welche Dienste man möche.
Um die Fähigkeiten der Cloud nutzen zu können, muss man wissen welche Dienste man möchte.

Heute sollte am besten jedes Gerät in die große Rechnerwolke eingebettet werden. Doch so einfach ist das nicht, denn Cloud ist viel mehr als nur das Internet der Dinge. Als Anwender muss man sich also fragen, welche Dienste man möchte und welchem Anbieter man sein Vertrauen schenkt.

Bereits seit einigen Jahren werden in der Informationstechnik am häufigsten die Begriffe Cloud und Big Data benutzt. Doch was verbirgt sich dahinter? Sind die Begriffe sogar synonym zu verwenden? Das sind Fragen, die eigentlich gestellt werden müssen, um den Hype rund um das Cloud Computing (Bild 1) zu verstehen.

Betrachtet man die historische Entwicklung der Datentechnik, so wird schnell deutlich, warum Cloud so spannend ist. Ursprünglich waren in den 1960er und Anfang der 1970er Jahre Zentralrechner mit Terminalschnittstellen Stand der Technik. Computer waren teuer, doch nur die Verwendung von mehreren Terminals ermöglichte eine Verteilung der Rechenleistung auf mehrere User. Für die industrielle Datentechnik wurde die DEC PDP11 in den 70er Jahren das Synonym für einen Prozessrechner. Eine Revolution in der Rechnertechnik erfolgte in den späten 70er Jahren. 1976 gründete Steve Jobs mit Steve Wozniak und Ronald Wayne Apple und 1981 führte IBM den PC (Personal Computer) ein. Erstmals erhielten Arbeitsplatzrechner eine eigene Intelligenz und ermöglichten ein lokales Arbeiten jenseits des Großrechners. Lokales Arbeiten, Spielen und Programmieren waren fortan Stand der Technik. Erst in den 90er Jahren mit der Entwicklung des Internets war auf einmal wieder vernetztes Computing angesagt. Sogenannte Client- und Server-Architekturen stellten dedizierte Dienste zur Verfügung, die temporär, per Einwahl genutzt werden konnten. Teure Einwahlverbindungen begrenzten die ferne Nutzung von Diensten auf ein Minimum. Erst in den späten 1990er Jahren wurde mit der Dotcom-Welle und der Internet-Flatrate eine ganz neue, digitale Welt geschaffen. „Immer online“ wurde zum Standard.

Der Trend führte zu einer deutlichen Zunahme von Anbietern für Internettechnik. Server mussten gehostet und Speicherplatz musste bereitgestellt werden. Um dem zunehmenden Bedarf an Speicher- und Rechnerkapazität gerecht zu werden, wurde die Hardware zunehmend virtualisiert und auf skalierbare Rechenzentren ausgelagert. Durch den Wechsel von Hardware-Zentrierung hin zu Software-basierten Systemen war der Schritt zu Mehrwertdiensten auf den Server-Systemen offensichtlich. Warum den ganzen Server mieten, wenn eine Anwendung ausreicht? Der dienstleistungsorientierte Ansatz wurde in der letzten Dekade zum Standard. Skalierbare Dienste, die auf einem oder vielen Rechnern arbeiten können, nutzen Speicher, der hinter einem virtuellen Server verborgen ist und keine physikalische Beziehung zu einer Hardware hat. Dienste und Infrastruktur sind irgendwo in der Cloud.

Unter einer Cloud (Bild 2) versteht man eine Ansammlung von Infrastrukturkomponenten und unterschiedlichen Diensten, die nicht mehr lokal innerhalb eines Netzwerkes sind. Stattdessen werden sie global aus der Ferne betrieben. Ganze IT-Infrastrukturen können über die Cloud genutzt und organisiert werden, ohne dass der Rechner physisch in der Nähe verfügbar sein muss. Die Grundideen stammen von den schnell wachsenden großen Internet-Dienstleistern wie Amazon, Google oder Yahoo. Die Firmen mussten teilweise sehr starke Spitzenlastzeiten mit der vorhandenen IT-Infrastruktur abfangen, obwohl die Grundlast deutlich geringer war. Ein anschauliches Beispiel liefert das alljährliche Weihnachtsgeschäft bei Amazon, bei dem die IT-Infrastruktur deutlich stärker beansprucht wird als zu allen anderen Zeiten. Die Anforderungen führen zu einer skalierbaren Infrastruktur, in der Ressourcen bereitgestellt werden, wenn sie tatsächlich benötigt werden.

Eine Cloud besteht aus Front Ends, also dem Benutzer-Client – zumeist ein Rechner mit einem Webbrowser –, und dem Back End. Das Back End einer Cloud stellt ein komplettes Ökosystem bereit, das skaliert durch den Betreiber oder Nutzer zur Anwendung kommt. 2009 veröffentlichte das National Institute of Standards and Technology (NIST) eine Definition für Cloud Computing, die auf hohe Übereinstimmung innerhalb der IT-Branche stieß [1]. Darin werden verschiedene Servicemodelle unterschieden:

Infrastructure as a Service (IaaS)
IaaS ist die grundlegende Basis in einem Back End. Die „Rechnerwolke“ bietet Nutzungszugang von virtualisierten Computer-Hardware-Ressourcen wie Rechnern, Netzen und Speicher. Mit IaaS gestalten sich Nutzer frei ihre eigenen virtuellen Computer-Cluster und sind daher für die Auswahl, die Installation, den Betrieb und das Funktionieren ihrer Software selbst verantwortlich.

Platform as a Service (PaaS)
Werden spezifische Software-Pakete bereits als Infrastruktur mitgegeben, spricht man von PaaS. Hier kommt zu der eigentlichen skalierbaren, virtualisierten Hardware noch eine Dienstleistungsschicht zum Nutzungszugang von Programmierungs- oder Laufzeitumgebungen hinzu. Nutzer können so ihre eigenen Software-Anwendungen entwickeln und ausführen oder es können Software-Umgebungen vom Dienstanbieter (Service Provider) bereitgestellt und unterhalten werden.

Software as a Service (SaaS)
Bei SaaS werden Software-Pakete durch den Provider einsatzbereit zur Verfügung gestellt. Nicht nur selbst entwickelte Software kann in der Cloud gehostet werden. Mittlerweile werden viele Anwendungsprogramme in der Cloud angeboten – wie Office, Datenbanken und Webshops. SaaS wird auch als Software on Demand (Software bei Bedarf) bezeichnet.

Business as a Service (BaaS)
Das nächste Level stellt BaaS, eine Anhäufung unterschiedlicher Software-Pakete, dar. Werden verschiedene Software-Dienste miteinander verknüpft, können auch komplexe Geschäftsprozesse abgewickelt werden. Das kann zum Beispiel die Verknüpfung eines Webshop mit Banktransaktionen und den Diensten eines Logistikdienstleisters sein. Hier sind beliebige Kombinationen denkbar, die sehr stark von der individuellen Bedarfslage abhängen.

Everything as a Service (XaaS)
Heute geht man so weit, dass eigentlich alles als Dienst angeboten werden kann. Das XaaS ist sicherlich nicht ganz ernst zu nehmen, zeigt aber, wohin die Service-Welt geht – sie ist quasi grenzenlos und nur noch von der Kreativität des Entwicklers und Betreibers abhängig. Nichts ist unmöglich.

Neben den vorhergehenden Service-Modellen werden auch sogenannte Liefermodelle unterschieden. Unter Liefermodellen (Bild 3) versteht man die Form, wie die Nutzer einen Zugang zu den Diensten erhalten.

Public Cloud – Zugriff für alle
Die öffentliche Cloud bietet Zugang zu abstrahierten IT-Infrastrukturen für die breite Öffentlichkeit über das Internet. Public-Cloud-Dienstanbieter erlauben ihren Kunden, IT-Infrastruktur auf einer flexiblen Basis zu mieten. Sie müssen nur den tatsächlichen Nutzungsgrad bzw. Verbrauch bezahlen (pay as you go), ohne Kapital in Rechner- und Datenzentrumsinfrastruktur investieren zu müssen. Anbieter sind die großen Vier: Amazon, Microsoft, IBM und Google.

Private Cloud – die ganz private Rechnerwolke
In einer privaten Cloud wird ein Zugang zu abstrahierten IT-Infrastrukturen innerhalb der eigenen Organisation – z.B. Behörde oder Firma – gewährt. Eine Private Cloud bietet größte Sicherheit, denn nur Mitglieder der spezifischen Cloud haben einen Zugang zu den Diensten.

Hybrid Cloud – skalierbare Dienste mit privatem und öffentlichem Zugang
Häufig ist der Zugriff auf öffentliche und private Dienste erforderlich. Dafür bieten hybride Clouds einen kombinierten Zugang zu abstrahierten IT-Infrastrukturen aus den Bereichen der öffentlichen und privaten Clouds, ganz nach den Bedürfnissen ihrer Nutzer.

Community Cloud – die gemeinschaftliche Rechnerwolke
Immer attraktiver werden Gemeinschafts-Clouds. Sie bieten einen Zugang zu abstrahierten IT-Infrastrukturen wie bei der öffentlichen Cloud – jedoch für einen genau bestimmten Nutzerkreis, der sich, meist örtlich verteilt, die Kosten teilt – z.B. mehrere städtische Behörden, Universitäten, Betriebe oder Firmen mit ähnlichen Interessen, Forschungsgemeinschaften und Genossenschaften. Somit wird es möglich, sehr spezifische Daten und Dienste einer eingeschränkten Nutzergruppe mit einem hohen Sicherheitsgrad zugänglich zu machen.