© Excellent backgrounds/Shutterstock.com
Platform as a Service am Beispiel von Red Hats OpenShift

PaaS out of the Box


In Zeiten von DevOps, also der immer engeren Zusammenarbeit zwischen Development- und Operationsabteilungen, fällt auch immer wieder der Begriff PaaS. Unter PaaS (Platform as a Service) versteht man die Möglichkeit, operative Plattformen zum Betrieb von Webanwendungen auf einfache Art und Weise „per service“ aufzubauen. Kleineren Firmen wird somit ermöglicht, ohne eigene Operationsabteilung eigenständig maßgeschneiderte Serverumgebungen aufzusetzen. Ich möchte in diesem Artikel den Aufbau einer PaaS an einem konkreten Beispiel darstellen, um zu zeigen, wie einfach der Betrieb einer Webanwendung damit ist.

Red Hat bietet mit OpenShift [1] eine PaaS an, die in ihrer kleinsten Variante sogar vollkommen kostenlos ist. Um sich bei OpenShift zu registrieren, benötigt man nur einen E-Mail-Account. Nachdem der Account eingerichtet ist, hat man die Möglichkeit, so genannte Applikationen anzulegen. Dieser Schritt ist der erste und gleichzeitig der wichtigste (Abb. 1). Hier werden die Applikationen erstellt und mit Leben gefüllt. Zu einer Applikation können mehrere Cartridges hinzugefügt werden, die die konkreten Bauteile der Serverumgebung repräsentieren. Wenn man z. B. ein Spring-MVC-Projekt veröffentlichen möchte, legt man als Erstes einen Tomcat-7-Server an.

jungermann_1.tif_fmt1.jpgAbb. 1: Auswahl der Applikationen

Bevor die Applikation angelegt wird, muss man noch einige grundlegende Einstellungen vornehmen (Abb. 2). Am wichtigsten wird wohl der URL sein, unter dem die Applikation später erreichbar sein wird. Üblicherweise besteht der URL aus einem Cartridge-Bezeichner sowie einem Namespace, sodass schließlich folgende Form vorliegt: http://<car­tridge-name>-<namespace>.rhcloud.­com. Es ist auch möglich, von einer eigenen Adresse auf OpenShift zu verweisen. Die Erläuterungen dazu würden allerdings hier den Rahmen sprengen.

Des Weiteren kann man ein Git Repository angeben, das die Sourcen enthält und direkt eingebunden wird. Sofern die Applikation dynamisch skalierbar sein soll, kann man dies hier angeben. Ein Load Balancer sorgt dann dafür, dass – sofern notwendig – weitere Server zugeschaltet (und auch wieder abgeschaltet) werden.

jungermann_2.tif_fmt1.jpgAbb. 2: Einstellungen für die Tomcat 7 Cartridge

Zusätzlich zum Server benötigt man in den meisten Fällen natürlich noch eine Persistenzschicht. Hier kann man wieder aus mehreren Möglichkeiten wählen. Ich entscheide mich für eine MongoDB-Instanz und lasse direkt noch zum besseren Monitoring der DB das Tool RockMongo installieren. Man erhält eine Bestätigun...

Exklusives Abo-Special

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang