JAXenter.de

Das Portal für Java, Architektur, Cloud & Agile
X

Wieviel Cyborg steckt jetzt schon im Menschen? Die webinale VISIONS klärt auf.

Flinke Feder - Die Apache-Kolumne

Cloudbusting

Bernd Fondermann

Schaut man sich eine vorbeiziehende Wolke am Himmel an, erkennt der eine vielleicht die Form eines Schwans, der nächste einen Elefanten und ein anderer nur einen großen schwebenden Klumpen von Wassertropfen. Cloud Computing ist so eine Wolke: Für jeden stellt sie etwas anderes dar. Kämpfen jedenfalls müssen am Ende Programmierer und Systemadministratoren mit den Wolkenungetümen, die derzeit so bedrohlich in der Ferne wachsen wie die Wolkentürme eines heraufziehenden Gewitters. Da träumt offensichtlich mancher von der Cloudbusting-Maschine, die die Wolken beherrschen kann. Und mancher arbeitet schon ganz konkret an Software zum Beherrschen der Cloud.

Im Juli, rechtzeitig zur OSCON, hatte Jim Curry von der Firma Rackspace OpenStack.org vorgestellt. Dahinter steckt Sourcecode sowie eine Organisation, deren Ziel es sein soll, drumherum eine Open-Source-Community aufzubauen. Adressaten sind Service-Provider und Institutionen, die öffentliche oder geschlossenen Cloud-artige Angebote aufbauen und betreiben wollen. "Cloud" wird von OpenStack.org als große Sammlung von virtualisierten Servern verstanden, die jeder Kunde je nach Bedarf für daten- und rechenintensive Anwendungen nutzen kann. Dies ist von Amazon EC2 bereits bekannt, wird aber auch von Rackspace und anderen bereits angeboten.

Ein Interview von Curry mit dem JAXenter machte mit der Überschrift auf, dass OpenStack.org eine vergleichbare Position erlangen soll wie Apache oder Linux. Der Vergleich lässt mich sofort aufhorchen. Denn hinter Linux und Apache stehen Ökosysteme, die nun gerade nicht von einem oder mehreren Unternehmen zentral initiiert und gesteuert werden, sondern von den individuellen Committern. Laut Mission Statement kann bei OpenStack jeder mitmachen. In der Tat erinnert einiges an die Art und Weise, wie auch die Apache Software Foundation funktioniert. De fakto ist OpenStack ein Industriekonsortium, an dem sich vom Start weg eine beeindruckende Zahl von Cloud-affinen Unternehmen beteiligen, vor allem Start-ups aus den USA. Es lässt sich daher vielleicht eher mit der Eclipse Foundation vergleichen als mit der ASF.

Bei näherem Hinsehen bezieht sich Currys Vergleich mit Apache und Linux auf die Positionierung der OpenStack-Software. Er möchte sie zu einem "Standard Cloud Stack" entwickeln, an dem man ähnlich wie an Linux oder am Webserver Apache httpd kaum vorbeikommt. Und "Software" ist dann der Anlass für mich, mal zu schauen, was bei der ASF beim Stichwort "Cloud" zum Vorschein kommt. Das Ergebnis ist sehr überraschend. Natürlich ist Apache Hadoop mit seinem verteilten Filesystem HDFS und der darauf aufbauenden Map-/Reduce-Applikationsschicht schon in den Wolken etabliert. Aber auch 7 der rund 40 Inkubator-Projekte beschäftigen sich mit dem Thema Cloud.

In der sich entwickelnden Cloud-Landschaft kocht noch jeder Anbieter sein eigenes API-Süppchen. Deshalb vervielfacht sich der Aufwand, mehrere Anbieter anzubinden. Aus Gründen der Flexibilität in Bezug auf Verfügbarkeit, Performance, Preisgestaltung und Quality of Service ist aber eine möglichst redundante Nutzung von Anbietern sinnvoll. Es ist auch kaum voraussehbar, welche Anbieter langfristig auf dem Markt bestehen werden. Auf die Gefahr eines Lock-ins auf einen einzigen Service-Provider bei so etwas grundlegendem wie IT-Infrastruktur sollte man sich nicht einlassen.

Deltacloud und libcloud scheinen auf diesem Weg am weitesten fortgeschritten zu sein: Sie decken alle gängigen Zielplattformen ab. Nuvem, ein jüngeres Inkubator-Baby, geht in dieselbe Richtung. Es erhebt ebenfalls den Anspruch, ein übergreifendes Java-API etablieren zu wollen. Luciano Resende, einer der Initiatoren tritt in seinem Blog der Vermutung entgegen, nur ein weiteres libcloud oder Deltacloud zu sein. Nuvem solle unter Verwendung einer Service Component Architecture mittels OSGi auch die Anwendungen selbst portabel machen, anstatt bei der Administration auf Maschinenebene aufzuhören.

Im Grunde gehen aber alle drei Projekte in dieselbe Richtung und damit scheint dieser junge Softwarezweig innerhalb kürzester Zeit der CMS-Vielfalt nacheifern zu wollen.

Whirr, entstanden aus der Hadoop-Community, hat sich konkreter auf das Management von verteilten Diensten spezialisiert, deckt aber bisher nur Hadoop auf EC2 ab. Tashi geht in eine ähnliche Richtung, mit einer speziellen Ausrichtung auf Zugriffs- und Rechtekontrolle, ein Thema, das zum Beispiel in Hadoop und anderen NoSQL-DBs erst jetzt ins Zentrum rückt.

VCL arbeitet auf bereits aufgesetzten Clustern und bildet die einzelnen logischen Maschinen, seien es VMs oder das "pure Metall" in einem Ressourcenmodell ab. In diesem Modell können dann Provisionierungen durchgeführt sowie Ressourcen gebucht, reserviert und für eine Gruppe von Usern zum nämlichen Zeitpunkt dann auch zugänglich gemacht werden. Einfaches Beispiel: Morgens arbeiten zwei Schulungskurse auf jeweils der Hälfte des Clusters, mittags läuft ein Job auf dem gesamten Cluster und später können Einzelpersonen sich Teile des Clusters nach Verfügbarkeit für Experimente schnappen, während der Administrator einen Teil der Maschinen wartet.

OODT wurde von der NASA entwickelt, um eine einheitliche Prozessschicht um die riesigen heterogenen Datenmengen unterschiedlichster Missionen zu legen. Es verwendet Java, XML und - da schau her - CORBA. Ob dies die richtige Architektur ist, um im Jahr 2010 Open-Source-Entwickler zu begeistern, sei mal dahingestellt.

Incubator-Projekt Ziel
Deltacloud Web-Service-API zur einheitlichen Ansprache von Cloud-Providern und den genutzten Ressourcen.
libcloud Python-Bibliothek zur transparenten Anbindung an mehrere Cloud-Provider.
OODT Object Oriented Data Technology - NASA- Software zur Aggregation und Auswertung von großen Datenmengen aus heterogenen Quellen mittels Java/CORBA/XML.
Tashi Management Toolkit um Cluster von BigData-Anwendungen zu managen und entfernten Nutzern sicher zugänglich zu machen.
VCL Dient zum Ressourcen-Sharing, bspw. ein Set von Blades oder VMs aus einem Pool zu reservieren und den jeweiligen Nutzern zugänglich zu machen.
Whirr Framework inkl. Kommandozeile, um verteilte Dienste wie Hadoop oder Cassandra einfach in der Cloud, z. B. auf Amazon EC2, laufen zu lassen.
Nuvem Cloud-API, das das Portieren von Applikationen über Cloud-Grenzen hinweg erlauben soll.

OpenStack.org macht sicher vieles richtig. Rackspace hat sich zum Start viele Mitstreiter ins Boot geholt und beabsichtigt offenbar eine offene Community zu etablieren. Die sehr zerklüftete und junge Cloud-Software-Welt braucht eine gemeinsame Anstrengung, um den Amazons und Googles Paroli zu bieten. Im Moment lässt sich noch kaum sagen, ob ein Inkubator-Projekt, OpenStack oder ein ganz anderes Tool sich durchsetzten wird. Insbesondere muss sich zeigen, ob ein Industriekonsortium mit handfesten, auch konkurrierenden wirtschaftlichen Interessen in der Lage ist, die Dynamik eines entstehenden Markts auszuhalten. Bis zum endgültigen Fazit werden noch einige Schönwetter- und auch Gewitterwolken an uns vorbeiziehen und vermutlich auch noch weitere Cloud-bezogene Projekte im ASF-Inkubator landen.

Bernd Fondermann (bernd.fondermann[at]brainlounge.de) ist freiberuflicher Softwarearchitekt und Consultant in Frankfurt a. M. Er beschäftigt sich mit innovativen Open-Source-Technologien wie Apache Hadoop und Lucene und ist Member der Apache Software Foundation und Vice President Apache Labs.
 
Verwandte Themen: 

Kommentare

Ihr Kommentar zum Thema

Als Gast kommentieren:

Gastkommentare werden nach redaktioneller Prüfung freigegeben (bitte Policy beachten).