Cloud Computing dynamisiert die IT

13.05.2008
IBM verwettet seine Zukunft im Server-Geschäft auf das eher undurchsichtige Cloud Computing. Wir haben den Cheftechnologen Hans-Joachim Schmitz* um Aufklärung gebeten.

Eine der größten Herausforderungen an die IT heutzutage ist die Notwendigkeit, sich an dynamische Veränderungen anpassen zu können - etwa bei Akquisitionen. Die vorhandenen Infrastrukturen sind jedoch oft starr und komplex. Innovationen durch neue Architekturen oder Technologien sind oft nur sehr schwer umzusetzen. IT-Betriebsabläufe werden zudem häufig noch manuell erledigt. Das bedeutet, dass in vielen Fällen 70 Prozent des gesamten IT-Budgets für Personalkosten verwendet werden. Verbunden mit dieser sehr geringen Automatisierung ist eine Fehlerquote, die nicht unterschätzt werden sollte. Denn sie wirkt sich direkt auf die Serviceverfügbarkeit und damit nachhaltig auf die Zufriedenheit der IT-Benutzer aus.

IT für eine dynamische Marktwirtschaft

Die Forderung an eine ideale IT wäre, dass die einzelnen Elemente ihrer Wertschöpfungskette - angefangen bei der Formulierung der Geschäftsanforderungen bis hin zum späteren Betrieb - perfekt aufeinander abgestimmt sind. So könnte die IT einer dynamischen Marktwirtschaft gerecht werden. Ein Ansatz, dieses Ziel zu erreichen, ist das Cloud Computing.

Virtuelle Server eignen sich besser als physische

Der Begriff meint sowohl die Plattform als auch den Typ der Anwendung. Eine Cloud-Computing-Plattform provisioniert, konfiguriert, rekonfiguriert und deprovisioniert alle Infrastrukturkomponenten, die nötig sind, um eine Cloud-Applikation zu betreiben - und dies dynamisch sowie hoch automatisiert. Zu den Infrastrukturkomponenten gehören dabei nicht nur die Server. Vielmehr sind in ein Cloud-Computing-Konzept auch Ressourcen wie Storage Area Networks (SANs), Netzequipment, Firewalls und andere Security-Elemente zu integrieren. Server in einer Cloud müssen, so weit möglich, virtuelle Maschinen sein. In Ausnahmefällen können jedoch auch physische Geräte bereitgestellt werden.

Cloud bedeutet Zugriff über das Internet

Cloud-Applikationen sind Anwendungen, die um den Zugriff über das Internet erweitert sind. Große Rechenzentren und Hochleistungs-Server stellen solche Web-Applikationen und Web-Services zur Verfügung. Beispiele solcher Consumer-orientierten Services sind etwa bei Amazon oder Google zu finden.

Die Zugriffe auf eine Cloud über das Internet stellen höchste Anforderungen an die dahinterliegende Architektur, an die Sicherheitsmechanismen und das Management-Framework. Daher ist die Mandantenfähigkeit in Form einer logischen Kapselung einer Kundenumgebung auf Applikationsebene zwingend notwendig. Diese logische Kapselung umfasst dabei nicht nur die Applikation, sondern auch die Trennung der Kundendaten. Es bedarf innerhalb einer Cloud penibelster Sicherheitsüberlegungen, um die Integrität und Verfügbarkeit der Daten zu jeder Zeit gewährleisten zu können.

Mit Cloud Computing können Unternehmensrechenzentren via neue Management- und Automationsmechanismen auf ein verbessertes Niveau gehoben werden. Dieser Mehrwert lässt sich unternehmensintern auch für Applikationen nutzen, die ursprünglich nicht für das Cloud Computing gedacht waren und die nicht zwangsläufig über das Internet zur Verfügung stehen.

Die Vorteile des Cloud Computing für Kunden erschließen sich diesem, wenn er durch ein innovatives Abrechnungsmodell finanzielle Vorteile hat. Das ist dann der Fall, wenn dem Kunden nur solche Leistungen in Rechnung gestellt werden, die er tatsächlich genutzt hat. Genau das ist aber der Sinn von Cloud Computing.

Und was genau ist nun Cloud Computing?

Eine Cloud lässt sich dahingehend charakterisieren, dass sie zum einen eine Vielzahl unterschiedlicher Workloads wie beispielsweise Batch-Jobs und interaktive Frontend-Anwendungen verarbeiten kann. Zum anderen kann eine Cloud Workloads schnell verteilen, indem sie physische und virtuelle Ressourcen bereitstellt. Eine Cloud basiert auf einer redundant ausgelegten IT-Architektur. Diese kann sich im Havariefall automatisch wieder in den Ausgangszustand versetzen beziehungsweise Workloads wiederherstellen. Sie ist hoch skalierbar. Um die Workloads ausbalanciert zu verteilen, überwacht eine Cloud die gesamten IT-Ressourcen in Echtzeit.

Warum Grid Computing etwas anderes ist

Cloud-Computing-Umgebungen unterstützen Grid Computing, indem sie physikalische oder virtuelle Ressourcen, auf denen die Grid-Applikationen laufen können, schnell bereitstellen. Generell sollte darauf geachtet werden, Cloud Computing nicht mit Grid Computing gleichzusetzen (siehe "Der Trend geht zur Virtualisierung" auf Seite 20).

Grid Computing basiert auf der Zerlegung von komplexen Vorgängen in kleine Arbeitspakete, die dann auf vielen Ressourcen parallel zur Ausführung kommen. Grids erfordern eine große Anzahl von Servern, Desktops oder Laptops - typischerweise mehrere hundert oder tausend.

Clouds unterstützen auch Applikationen, die nicht auf einem Grid aufsetzen. Hierzu zählen etwa Standardapplikationen wie von SAP oder Web-2.0-Applikationen auf Basis einer ThreeTier-Web-Architektur.

Eine Cloud ist zudem mehr als die Ansammlung von Ressourcen. Denn sie verwaltet diese Systeme auch effektiv. Sie handhabt also beispielsweise Change Requests, die Workload-Verteilung, sie sichert die Hochverfügbarkeit und etwa das Monitoring. Management und Automation gehören zum Design einer Cloud.

Landscape-Management verwaltet Cloud-Elemente

Eine besondere Funktion kommt in der virtualisierten Infrastruktur einer Cloud dem Landscape-Management zu. Es verwaltet alle Elemente, die für den Aufbau und Betrieb einer Cloud notwendig sind. Auch bei Problemen im System wird es aktiv und leitet bei Ausfällen sofort Aktionen zur Wiederherstellung ein.

Dazu braucht das Landscape- Management Bau- und Management-Pläne. In diesen wird genau definiert, aus welchen Ressourcen - in Form von Ensembles und Applikationen - sich die Cloud zusammensetzt. In den Plänen wird zudem festgelegt, welche Software (unter anderem auch welches Betriebssystem), welche Patch-Levels und welche Applikationen installiert werden müssen. Das Landscape-Management legt also den "Soll-Zustand" der Cloud und des angebotenen Service fest.

Die notwendige Flexibilität einer Cloud auf Infrastrukturebene erreicht man durch die virtuelle Bereitstellung von Ressourcen, die hier Ensembles genannt werden. Das sind gleichartige Ressourcen wie Unix- und/oder Wintel-Server und Storage. Ensembles erweitern das bekannte Konzept der Pools um ein integriertes Management. Hiermit soll ein hocheffizientes Workload-Managements erreicht werden.

Die Auslastung bestimmt die Ressourcenverteilung

Der Management-Plan definiert zudem die Verfahren und Abläufe, die notwendig sind, um den ordnungsgemäßen Betrieb der Cloud-Applikationen zu gewährleisten. Hier werden auch die Richtlinien definiert, die das "Atmen" der Cloud ermöglichen. "Atmen" bedeutet die Möglichkeit, je nach Workload Ressourcen zu addieren oder freizugeben. Der Management-Plan beinhaltet ferner die Verfahren und Abläufe, die für eine applikationskonsistente Wiederherstellung einer Cloud im Katastrophenfall notwendig sind.

Interessant ist nun, dass durch die Verknüpfung des Landscape Managements mit kundenseitig definierten Service-Level-Agreements (SLAs) ein Mehrwert erzielt werden kann. Durch diese Koppelung entsteht eine Wertschöpfungskette, die Erwartungen des Kunden in qualitativer und finanzieller Hinsicht mit den flexiblen Leistungsmerkmalen des Cloud Computing in Einklang bringt. Mit anderen Worten: Cloud Computing ermöglicht dynamische IT-Services.

Beispiel aus der Praxis: Testen und Entwickeln

Eine Möglichkeit für Cloud Computing kann die Bereitstellung von Test- und Entwicklungsumgebungen sein. Diese Umgebungen sind dadurch geprägt, dass sie nur über begrenzte Zeiträume für eventuelle Abnahme- oder Qualitätstests gebraucht werden. Die meiste Zeit im Jahr werden diese Ressourcen jedoch nicht benötigt und tragen somit nur zur Erwärmung des Rechenzentrums bei.

Daher wäre der erste Schritt in eine Test- und Entwicklungs-Cloud die Überführung dieser Ressourcen in entsprechende Ensembles. Die Bereitstellung der zukünftigen Umgebungen erfolgt zu einem hohen Maß auf Basis von virtuellen Ressourcen. Sollte es eine Applikation zwingend erforderlich machen, so ist eine Ausstattung mit physikalischen Ressourcen jedoch ebenfalls möglich. Allerdings ist diese Alternative nicht empfehlenswert, da sie die Effektivität und Effizienz des Cloud Computing beeinträchtigen kann. Ein elementares Merkmal einer Cloud ist ja gerade die Virtualisierung.

Baupläne für die Produktionsumgebung

Bildet man nun diese Test- und Entwicklungsumgebungen in Form von Bau- und Management-Plänen einer Landscape ab, so besteht die Möglichkeit, die benötigten Anwendungen in sehr kurzer Zeit automatisch aufzubauen. Diese Baupläne können auch für die spätere Produktionsumgebung verwendet werden, um einen störungsfreien Betriebsübergang zu gewährleisten.

Über ein entsprechendes "Cloud-Portal" können Entwickler und/oder Qualitätssicherer die Anforderungen für Test- und Entwicklungsumgebungen selbständig erfüllen.

(jm)

Hier lesen Sie ...

  • welches die größten Herausforderungen für die IT sind;

  • was sich in einer Cloud versteckt;

  • worum es beim Cloud Computing geht;

  • was man mit dem Konzept in der Praxis erreichen kann.

Mehr zum Thema

www.computerwoche.de

www.computerwoche.de/

1861475: Amazon baut Service für Cloud Computing;

1860108: Cloud Computing - Buzzword des Jahres?

1853165: IBM-Software unterstützt Cloud Computing.

Fazit

Cloud-Computing-Infrastrukturen sind als Plattformen der nächsten Generation für Unternehmen jeglicher Größe wertvoll. Sie können dabei helfen, die Effizienz der IT-Hard- und -Software zu verbessern. Innovationen lassen sich durch die flexible Architektur schnell integrieren. Cloud Computing erhöht die Profitabilität der IT, weil die Ressourcen besser ausgelastet werden. Mit Cloud Computing können die Kosten reduziert werden, weil IT-Leistungen nur nach der tatsächlichen Nutzung berechnet werden.

Cloud Computing ist eine natürliche Weiterentwicklung von Rechenzentren. Effizienz und Effektivität der gesamten IT können gesteigert werden, indem Cloud Computing eine Infrastruktur auf Basis von Ensembles oder Pools samt integriertem Landscape-Management und Cloud-Applikationen bereitstellt. Und dies für eine global ausgerichtete Kundschaft. Der Cloud-Computing-Ansatz ermöglicht es zudem etablierten IT-Dienstleistern, sich neue Kundensegmente zu erschließen, da ihr Service über das Internet sehr einfach und schnell in Anspruch genommen werden kann.