Virtualisierung ist nicht die einzige Lösung

Architekturansatz für Applikations-Server

8. Januar 2010, 7:54 Uhr | Christian Botta/jos

Einen interessanten Mix aus klassischer Drei-Tier-Architektur und Virtualisierung stellen die Experten aus dem Haus Consol vor. Ziel ist eine Reduzierung der benötigten Ressourcen und eine bessere Verwaltbarkeit.

Virtualisierung ist derzeit in aller Munde, und viele Unternehmen lassen sich auf diesen Trend
ein. Diese Entscheidung ist durchaus nachvollziehbar, denn Virtualisierung spart Kosten, sorgt für
eine verbesserte Ausnutzung von Systemressourcen und steigert die Verfügbarkeit von Applikationen
und Systemen. Jedoch muss Virtualisierung nicht immer die ideale Lösung darstellen, denn jedes
Unternehmen hat unterschiedliche Voraussetzungen und Ansprüche an seine IT-Landschaft. So gibt es
für Unternehmen mit klassischen Drei-Tier-Architekturen (Web-Server/Applikations-Server/Datenbank)
einen alternativen Ansatz zur Virtualisierung: Dieser richtet sich im Speziellen an große
Java-Applikations-Server-Installationen im Business-Umfeld zum Beispiel in der Bank- und
Automobilbranche. Spezielle JEE-Server (Java Enterprise Edition) stellen dabei die Laufzeitumgebung
oder den Container für Java-Enterprise-Applikationen dar. Die gängigsten Vertreter sind
beispielsweise das kommerzielle Produkt BEA Weblogic sowie die Open-Source-Lösung JBoss. Ihre
Einsatzgebiete finden sich überall und reichen vom Trading-System über Zuliefererportale bis hin
zum Web-Shop.

Die folgenden Überlegungen diskutieren einen Ansatz, der die anfangs genannten Vorteile von
Virtualisierung umfasst und mit einer klassischen Drei-Tier-Architektur vereint. Dies zeigt
exemplarisch, für welche Unternehmen dieser Ansatz geeignet ist.

Angenommen, ein Unternehmen betreibt drei unternehmenskritische Applikationen: eine für das
Marketing, eine für Sales sowie eine Web-Shop-Applikation. Die klassische Drei-Tier-Architektur
besagt, dass es pro Applikation einen eigenen Web-Server, einen Applikations-Server und eine
Datenbank gibt, die wiederum auf getrennter physischer Hardware ablaufen. Für dieses
Beispielunternehmen ergeben sich folglich drei Web-Server, drei Applikations-Server sowie drei
Datenbank-Server, insgesamt also neun Hardwarekomponenten. Zudem fallen noch Kosten für
Softwarelizenzen an, wenn es sich nicht um Open-Source-Produkte handelt, sowie für das
Betriebssystem. Ein Vorteil dieser Lösung ist, dass sich die Anwendungen nicht gegenseitig
beeinflussen, etwa durch Ausfall, Wartung oder Last. Nachteilig sind in erster Linie die Kosten.
Denn werden neue Applikationen im Unternehmen benötigt, muss man in neue Hardware investieren.

Der klassische Architekturansatz

Um diese Kostenfalle zu umgehen, können Unternehmen ihre Umgebung optimieren, indem sie
Ressourcen gemeinsam nutzen. Sie nehmen innerhalb eines JEE-Servers mehrere Applikationen
gleichzeitig in Betrieb und lassen diese parallel innerhalb des Applikations-Servers laufen. Der
Vorteil: Unternehmen kommen mit deutlich weniger Hardware aus. Der Nachteil: Es gibt starke
Abhängigkeiten zwischen den einzelnen Applikationen. Führt beispielsweise ein Fehler oder eine
Lastspitze in der Sales-Applikation zu einer Fehlfunktion oder Performance-Einbuße des JEE-Servers,
ist das Verhalten der anderen Applikationen ebenfalls gestört, oder sie sind nicht mehr erreichbar.

Virtualisierung und Systemressourcen

Virtualisierung ermöglicht es, Rechnerressourcen dediziert aufzuteilen und einzelnen
virtuellen Maschinen zuzuordnen. Jede dieser virtuellen Maschinen verfügt über ihr eigenes
Betriebssystem, ihre eigenen Systemressourcen und ihre eigenen Applikationen innerhalb eines
physischen Rechners. Für das beschriebene Beispielunternehmen bedeutet dies, dass jeder der drei
Applikations-Server gekapselt in einer virtuellen Maschine läuft. Abhängigkeiten zwischen den
Applikationen lassen sich somit vermeiden und die Systemressourcen des Rechners besser nutzen. Bei
entsprechend ausgebauter Hardware mit viel Speicherplatz und hoher Rechnerleistung wäre es sogar
denkbar, Web-Server, Applikations-Server und Datenbank auf einem physischen Server in beliebig
vielen virtuellen Maschinen zu betreiben. Von diesem Ansatz ist allerdings abzuraten, da
Hardwarefehler alle virtuellen Maschinen beeinflussen würden. Nachteilig an der
Virtualisierungslösung sind vor allem die hohen nicht hardwarespezifischen Kosten: zum einen für
das erforderliche Know-how, um die Virtualisierungstechniken zu beherrschen, und zum anderen
zusätzliche Lizenzkosten für Virtualisierungssoftware. Hinzu kommt der Mehraufwand für die Pflege
der Virtualisierungssoftware, der Betriebssysteme sowie der Applikationen innerhalb einer
virtuellen Maschine.

Hardwaretechnisch müsste das Beispielunternehmen in fünf physische Server investieren, in
jeweils einen für Web-Server und Applikations-Server sowie in drei Datenbank-Server. Hinzu kommen
die Kosten für die jeweils erforderlichen Softwarelizenzen für Betriebssystem und
Applikationssoftware.

Der Architektur-Ansatzvon Consol

Ein zur Virtualisierung alternativer Ansatz ist die Consol-JEE-Server-Architektur, die sich
insbesondere für den Betrieb von JEE-Applikations-Servern eignet. Dieser Best-Practice-Ansatz eint
nach Einschätzung seiner geistigen Väter die Vorteile der klassischen Architektur mit denen der
Virtualisierung. Die Lösung verfolgt primär die Ziele Kostenersparnis und erhöhte Verfügbarkeit und
ist sowohl für kleine als auch große JEE-Applikationen und -Installationen geeignet. Sie ist nur
auf allen Unix- und Linux-Derivaten wie Solaris, Redhat Linux und Suse anwendbar. Basis der
Architektur ist eine zentrale Softwareinstallation. Die Basissoftware entspricht der ursprünglichen
Applikations-Server-Software, die um wenige Skripte erweitert wurde, um mehrere Instanzen auf diese
Basis zugreifen zu lassen. Diese Instanzen (in diesem Falle JEE-Server) nutzen die zur Verfügung
gestellte Basissoftware und laufen dann eigenständig und isoliert voneinander ab. Das heißt, es
laufen nicht mehrere Applikationen auf einem JEE-Server, sondern mehrere JEE-Server-Prozesse mit
jeweils einer Applikation auf dem zugrunde liegenden Betriebssystem. Die Applikationen können so
für sich getrennt betrachtet und betrieben werden, obwohl sie auf dieselbe Basis zurückgreifen:
eine gemeinsame, identische Softwarebasisinstallation.

Wartung vereinfacht

Die einzelnen JEE-Server können unabhängig von den anderen gewartet werden, direkte
Abhängigkeiten bestehen nicht. Die Applikationen sind nahezu 100 Prozent gekapselt, sie können also
getrennt betrieben, gestoppt und gestartet werden, ohne die anderen zu beeinflussen – sie sind
gewissermaßen virtualisiert. Dabei sind sie nur über das zugrunde liegende Betriebssystem
miteinander verbunden. Dies hat den Vorteil, dass die Applikationen unabhängig voneinander arbeiten
können. In der Praxis zeigte sich häufig, dass eine 100-prozentige Kapselung gar nicht zwingend
erforderlich ist beziehungsweise sich der damit verbundene Mehraufwand nicht rechnet.

Pflege und Wartung leicht gemacht

Bei einer virtualisierten Umgebung muss jedes virtuelle System für sich selbst gepflegt und
gewartet werden, da es stets aus Betriebssystem und Applikation besteht. Betrachtet man nun im
Vergleich zu einer derartigen Virtualisierungslösung den Ansatz von Consol, fällt auf, dass die
Applikations-Server-Software und das Betriebssystem nur einmal installiert und folglich auch nur
einmal gewartet und gepflegt werden müssen. Zeitaufwändige und folglich personen- und
kostenintensive Wartungsarbeiten (etwa Patch- und Update-Management) reduzieren sich auf ein
Minimum. Zudem bietet die Lösung standardisierte Applikationsserver-Installationen "out-of-the-box"
.

Der Consol-Ansatz basiert auf gängigen Linux- und Unix-Betriebssystem-Mechanismen. Diese
werden analog angewendet, sodass es für den Systemadministrator eines Unternehmens, der ohnehin die
IT-Landschaft betreut, relativ einfach sein soll, den Ansatz zu übernehmen. Weitere entscheidende
Vorteile sind die Kosten: Denn es entfallen sowohl Lizenzkosten für zusätzliche
Virtualisierungssoftware als auch der nicht zu unterschätzende Kostenfaktor des Know-hows für den
Aufbau einer virtualisierten Server-Landschaft.

Um den Consol-Architektur-Ansatz umzusetzen, benötigt das Beispielunternehmen an Hardware
drei Web-Server, einen Applikations-Server und drei Datenbank-Server, insgesamt also sieben.
Aufgrund der Softwarebasisinstallation sind das Betriebssystem sowie die Lizenzen für den Web- und
Applikationsserver nur ein Mal nötig. Zusätzliche Kosten für Virtualisierungssoftware treten nicht
auf.

Vorteile von Virtualisierung und Drei-Tier-Ansatz

Der Consol-Ansatz soll die Vorteile des Virtualisierungsansatzes mit denen der klassischen
Drei-Tier-Architektur vereinen, um große Unternehmensapplikationen basierend auf
JEE-Applikations-Servern kostengünstig umzusetzen.

Christian Botta ist Senior Consultant bei Consol Consulting & Solutions Software.


Lesen Sie mehr zum Thema


Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu Lampertz GmbH & Co. KG

Matchmaker+