Aus Linux-Magazin 10/2011

Red Hat Open Shift: Plattform für Webentwickler und Hoster

© Bernd Jürgens, 123RF.com

Mit der Plattform Open Shift verspricht Red Hat Webentwicklern und Online-Anbietern eine Revolution. Wann sie kommt, steht allerdings in den Sternen. Eine Bestandsaufnahme der Developer Preview.

Im Mai 2011 kündigte Red Hat eine kleine Revolution an: Mit dem Einsatz von Cloud-Technologie möchte der Linux-Distributor den Markt für Platform-as-a-Service (PaaS) umkrempeln. Die Produktreihe Open Shift soll Webentwicklern auf Knopfdruck vorgefertigte Laufzeitumgebungen für PHP, Python und Ruby zur Verfügung stellen. Wer es noch ein paar Nummern größer braucht, kann sich gleich ganze Webcluster zusammenklicken.

Vorabversion

Doch derzeit läuft Open Shift noch als Developer Preview mit kostenlosen Benutzerkonten. Auf einen Zeitpunkt für die Fertigstellung mochte sich der Product Marketing Manager Aram Kananov beim Gespräch mit der Redaktion nicht festlegen. Dieser Artikel zeigt, was Open Shift derzeit kann.

Das Angebot gliedert sich in drei Kategorien: Open Shift Express [1] richtet sich an Webentwickler und bietet Zugang zu gehosteten Webumgebungen per Kommandozeile und Git. Flex [2] dagegen verfügt über ein umfangreiches Flash-GUI und kann nicht nur Anwendungen aufsetzen, sondern ganze Webcluster verwalten. Die dritte Kategorie heißt Power und soll den Betrieb nativer Linux-Anwendungen ermöglichen, sie existiert gegenwärtig aber lediglich als Ankündigung.

Express

Die Benutzung von Express ist derzeit kostenlos und verlangt vom Interessenten nur die Registrierung. Die Grundausstattung besteht aus einem per SE Linux eingeschränkten Account auf Red Hat Enterprise Linux 6, dem Apache-Webserver 2.2.15, SQLite 3.6.20 und 128 MByte lokalem Speicherplatz. Auf dieser Basis installiert sich der Anwender eine Laufzeitumgebung aus einer Auswahl so genannter Cartridges (Patronen): Perl 5.10, PHP 5.3.2, WSGI 3.2 mit Python 2.6.5, oder Rack 1.1 mit Ruby 1.8.7.

Im August hat Red Hat Features draufgelegt: Jedem Benutzer stehen nun statt einer beliebig viele App-Instanzen zur Verfügung, daneben gibt es nun auch MySQL sowie Java EE 6 auf Jboss AS7. Einen Shellzugang erhält der Anwender bei Express jedoch nicht.

Das Installieren von Cartridges, das Einrichten, Starten und Stoppen von Applikationen erfolgt über eine Sammlung von Kommandozeilentools (Abbildung 1). Sie lassen sich auf Red-Hat-basierten Systemen aus einem Yum-Repository installieren, auf anderen Linux-Distributionen als Rubygems. Die Kommunikation des Clients mit Open Shift ist per SSH und Benutzerpasswort abgesichert.

Abbildung 1: Open Shift Express bedient der Webentwickler über eine Handvoll Kommandozeilentools.

Abbildung 1: Open Shift Express bedient der Webentwickler über eine Handvoll Kommandozeilentools.

Los geht’s

Um eine eigene Anwendung aufzusetzen, erzeugt der Benutzer eine Subdomain mit »rhc-create-domain -n Subdomain« . Das Kommando »rhc-create-app -a wiki -t php-5.3.2« installiert beispielsweise eine PHP-Umgebung, die im Web unter der Adresse »-Subdomain.rhcloud.com« sichtbar ist.

Der typische Arbeitsablauf besteht nun darin, dass der Entwickler im lokalen Verzeichnis den Quellcode seiner Anwendung vorhält. Per »git add« und »git commit« fügt er den Bestand dem lokalen Repository hinzu, ein »git push« schiebt den Code schließlich auf Red Hats Server. Eine fertige Anwendung wie Drupal oder Mediawiki aus einem Tarball einzuspielen hilft bei der Einarbeitung und ist dank Anleitungen aus der Knowledge Base rasch erledigt.

Was allerdings einige Anwender stört, die das auch im Forum beklagen: Das Löschen und Umbenennen von Dateien auf dem Server ist umständlich. Korrekterweise geschieht es per »git-rm« und »git-mv« . Da das Server-Datenverzeichnis »data/« aber nicht unter Git steht, helfen dort nur die Fähigkeiten der eingesetzten Programmiersprache. Hier sollte Red Hat überdenken, ob dem nicht doch ein SE-Linux-gesicherter Shellzugriff vorzuziehen ist.

Dennoch kann ein Webentwickler mit Express bereits einiges auf die Beine stellen. Der Red-Hat-Mitarbeiter Dan Radez beispielsweise beschreibt in einem Blog, wie man das Python-Framework Django samt MySQL auf Open Shift einrichtet [2].

Baustelle

Es ist deutlich spürbar, dass es sich um eine Technology Preview handelt, die sich in aktiver Entwicklung befindet: Man kann sich nicht darauf verlassen, dass alles ständig funktioniert. Dafür sind die Entwickler des Herstellers im Forum sehr aktiv und hilfsbereit, Nachfragen der User nach neuen Features kommt das Team immer wieder entgegen. Andererseits muss der Anwender auf Antworten gefasst sein wie: “Im »HEAD« funktioniert das schon. Wenn Du willst, dass es jetzt schon geht, kopiere folgende Zeilen in Dein Buildskript.” Express präsentiert sich als Spielplatz für Webentwickler.

Flex

Open Shift Flex [3] läuft ebenfalls im Testbetrieb, spielt aber in der Enterprise-Klasse. Das zeigt sich nicht nur in einem Flash-GUI mit schickem Design, über das der Anwender viele Aufgaben erledigt. Wer hier testet, verwendet nicht nur einen Server, sondern einen Cluster von Cloudmaschinen. Derzeit spielt Flex nur mit Amazons EC2 als Cloudprovider zusammen, für die Zukunft plant Red Hat aber ein Partnerprogramm mit mehreren Anbietern. Für die Teilnehmer an der Preview gibt es derzeit ein kostenloses EC2-Angebot von Amazon, den Clouddienst für 30 Tage oder maximal 30 Betriebsstunden zu nutzen.

Über das Flash-GUI definiert der Anwender Cluster, Server und deren Leistungsmerkmale. In weiteren Reitern der Oberfläche installiert er Komponenten wie Apache Tomcat 6.0.18, Memcached 1.4.5, Mongo DB 1.6.5 oder Zend Framework 1.10.8. Seine Applikationen kann er über die Benutzeroberfläche hochladen, die einen Dateimanager in Baumansicht besitzt, oder per SCP, denn Flex bietet SSH-Zugang für einen Admin-Account ohne Rootrechte.

Ebenso wie Express stellt auch Flex die Dateien der Anwendung unter die Versionskontrolle Git, nur ist sie hier per SSH sowie per Flash grafisch bedienbar. Daneben gibt es einen Logviewer für die Protokolle von Webserver, Applikation und weiteren Komponenten. Er erlaubt das Filtern nach Zeiträumen, Schweregraden und Suchbegriffen. Hinter dem Reiter »Performance« verbirgt sich eine flexible Monitoring-Oberfläche für alle Knoten des Clusters, auf der der Anwender Performance-Diagramme frei anordnen kann (Abbildung 2).

Abbildung 2: Zur Cluster-Administration gesellt sich bei Open Shift Flex ein detailliertes Monitoring.

Abbildung 2: Zur Cluster-Administration gesellt sich bei Open Shift Flex ein detailliertes Monitoring.

Das Interessanteste an Red Hats Flex aber ist die Autoskalierung. Sie erlaubt es dem Cloud-Admin, Regeln für das automatische Hinzufügen oder Abziehen von Serverinstanzen festzulegen. Anhand der Größen CPU-Last und Zahl der Anfragen pro Sekunde definiert er, wann Instanzen hinzugefügt oder entfernt werden. Zu den konfigurierbaren Bedingungen gehört auch, wie lange ein Wert die Grenzen über- oder unterschreiten darf .

Wolkig

Wann Open Shift erhältlich sein wird und zu welchem Preis, verrät der Red-Hat-Mann Kananov nicht. Er sagt nur, es werde vermutlich eine Version als Service sowie eine On-Site-Version für die interne Cloud beim Kunden geben. “Open Shift ist das Resultat des Ankaufs des Cloudspezialisten Makara.com [im November 2010, Anm. d. Red.]. Derzeit läuft die Code-Review”, teilt der Manager mit. Dies sei Teil des normalen Entwicklungszyklus bei Red Hat.

Am Ende solle sowohl eine Open-Source-Release als auch ein Produkt mit Support stehen. Der Softwarehersteller kalkuliert dabei offenbar die Erfahrungen und Wünsche der Testbenutzer ein. Erfreulich wäre es etwa, wenn er in Flex die proprietäre Flash-Oberfläche durch eine Open-Source-Lösung ersetzen würde.

DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 2 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
LINUX-MAGAZIN KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Readly Logo
E-Mail Benachrichtigung
Benachrichtige mich zu:
0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben