Der strategische Spagat mit Linux

18.03.2005
MAN Nutzfahrzeuge war eines der ersten Unternehmen, das Linux für Entwicklung und Betrieb seiner Web-basierenden Anwendungen einsetzte - mit Vorteilen für Ausfallsicherheit und Budget.

Ein LKW ist Maßarbeit. Von den 120 Nutzfahrzeugen, die das MAN-Werk in Mün-chen jeden Tag produziert, gleicht kaum eines dem anderen. Zudem ist das Ge-schäft mit Lastern und Bussen hohen saisonalen Schwankungen unterworfen. Für die IT heißt das: Sie muss möglichst schnell auf die wechselnden Anforderungen des Geschäfts reagieren können.

Um unnötige Reibungsverluste zu vermeiden, hat die MAN Nutzfahrzeuge AG bereits vor viereinhalb Jahren begonnen, ihre IT-Umgebung zu konsolidieren. Das zentrale Rechenzentrun befindet sich komplett am Hauptstandort München. Die Werke haben jeweils eine eigene IT-Abteilung, aber der Betrieb der geschäftskritischen Software wird aus Kosten- und Sicherheitsgründen in der Bayernmetropole zusammengezogen.

Der kategorische Imperativ

Das Rückgrat der IT-Umgebung bilden Host-Anwendungen und DB2-Datenbanken unter IBM OS/390 sowie SAP-Applikationen und Oracle-Datenbanken auf HP-Superdome-Clustern. Die IT-Strategie forderte jedoch explizit die Web-Fähigkeit der Kernanwendungen. "Jede geschäftskritische Software sollte von jedem Arbeitsplatz zu jeder Zeit genutzt werden können", formuliert Johannes Lorenz, Leiter Web-basierende Softwareproduktion, den kategorischen Imperativ. Deshalb musste neben der bestehenden SAP- und Mainframe-Umgebung eine Basistechnik für alle Java-Anwendungen aufgebaut werden.

Die IT-Infrastruktur sollte

- sich homogen in die Betriebsabläufe integrieren lassen,

- so kostengünstig sein, dass die externen Dienstleister sie identisch aufbauen können,

- technische Flexibilität bieten sowie

- ausfallsicher, performant und skalierbar sein.

Hinsichtlich des Betriebs spielte vor allem das vorhandene Know-how eine Rolle. Bei MAN Nutzfahrzeuge gab es zahlreiche Mitarbeiter, die bereits seit Jahren den professionellen Systembetrieb unter Unix beherrschten. Daraus ließ sich die Option auf eine Unix-Umgebung ableiten. Andererseits sollten die unter Java entwickelten Anwendungen in der gleichen Umgebung entstehen, in der sie später ablaufen sollten. Nur so lässt sich vermeiden, dass sich beim Deployment Fehler einschleichen. Nun arbeitet MAN Nutzfahrzeuge in Sachen Softwareentwicklung häufig mit externen Partnern zusammen, für die der Aufbau einer Risc-basierenden Unix-Umgebung eine gewaltige Investition bedeutet hätte. Unter diesem Gesichtspunkt bot sich das preisgünstige Betriebssystem Linux an.

Damals zeichnete sich bereits das Linux-Engagement der IBM ab, das sie wenig später bekräftigte, indem sie das Betriebssystem auf der Z-Series in Aussicht stellte. Auch Hewlett-Packard hatte angekündigt, dass Linux auf seinen Superdome-Rechnern laufen würde. MAN Nutzfahrzeuge konnte also sicher sein, auf dem eingeschlagenen Weg von seinen beiden "strategischen" Systemlieferanten begleitet zu werden.

Die x86-Prozessoren - und damit die Intel-Welt - waren quasi die Heimat des Betriebssystems Linux. Damit bot es die Per-spektive, alle für MAN Nutzfahrzeuge wichtigen Hardwareplattformen abzudecken. Neben Java als portabler Entwicklungsumgebung hatte das Unternehmen mit Linux nun auch ein flexibles Betriebssystem gefunden.

Die Ziele, Ausfallsicherheit, Performanz und Skalierbarkeit ließen sich in unterschiedlichen Umgebungen erreichen auf einer großen Unix-Maschine, aber auch in einem Intel-Cluster mit Linux. Allerdings hatte das Unternehmen mit Linux-Clustern damals keinerlei Erfahrung. Lassen sich auf diese Weise überhaupt unternehmenskritische Anwendungen nach den aus der Unix-Welt übernommenen Qualitätsmaßstäben betreiben? Um diese Frage zu beantworten, war zunächst eine Risikoabschätzung notwendig.

Zu diesem Zweck bauten Lorenz und seine Mitarbeiter zwei hinsichtlich CPU-Leistung und Arbeitsspeicher vergleichbare Umgebungen auf. Die wegen der kalkulierbaren Wartungsausfälle gewählte Minimalkonfiguration für den Linux-Cluster bestand aus vier Knoten und einem Load Balancer. Deren reine Hardwarekosten beliefen sich auf etwa 50000 Euro. Gegenübergestellt wurde ihr ein Mehrprozessor-Server unter Unix, der ungefähr denselben Wert repräsentierte.

Beide Konfigurationen mussten sich einem Härtetest unterziehen, der zunächst Klarheit bezüglich der Kriterien Durchsatz, Stabilität und Wartbarkeit schaffen sollte. Darüber hinaus ließ sich auf der Basis des Cluster-Prototypen auch die Wirtschaftlichkeit des späteren Systems hochrechnen und mit der Unix-Maschine vergleichen.

Beide Installationen ließen sich stabil betreiben; das galt sowohl für den Applikations-Server als auch für die Web-Anwendung. Doch in Extremsituationen, beispielsweise wenn die CPU-Last sehr hoch war oder die Java-Anwendungen eine Garbage Collection vornahmen, übertraf das Antwortverhalten des Clusters das der einzelnen Unix-Maschine um Längen, weil der Load Balancer die Last gleichmäßig auf die vier Nodes verteilte.

Besonders pflegeleicht

Zudem konnte das Cluster-Konzept einen weiteren Trumpf ausspielen: Fällt ein Rechner im Verbund aus, übernehmen die anderen dessen Aufgaben; dadurch steigt die Verfügbarkeit. Deshalb ist dieses Konzept auch besonders pflegeleicht: Die Wartung lässt sich während des Systembetriebs in den normalen Arbeitszeiten erledigen.

Wie Lorenz erläutert, funktioniert dieses Konzept aber nur, wenn die Rechner strikt auf einem einheitlichen Stand bleiben. Deshalb wird jede Software mit Hilfe des "Redhat Package Manager" (RPM) installiert. Um die Systeme einheitlich zu konfigurieren, nutzt das Team das quelloffene Tool "cfEngine". Für die Überwachung kommen "BigBrother" von Quest Software und "BMC Patrol" zum Einsatz.

Strategische Pluspunkte

Neben den technischen Vorteilen des Cluster-Konzepts hat das Betriebssystem Linux für Lorenz auch strategische Pluspunkte vorzuweisen: "Man wird unabhängiger vom Lieferanten. Das betrifft sowohl die Hardware als auch die Distribution des Betriebssystems selbst."

Was das Betriebssystem angeht, hat sich MAN Nutzfahrzeuge für den in Nürnberg ansässigen Distributor Suse entschieden. Für die Franken sprach nicht nur die geografische Nähe zu München, sondern auch der umfassende Support und ihr Engagement in Sachen "zLinux" auf der IBM-Plattform OS/390. So eröffnet sich für den Anwender die Möglichkeit, Linux auch auf den vorhandenen Mainframes und HP-Servern zu betreiben und das wertvolle Know-how der internen Unix-Experten weiter zu nutzen. In Anlehnung an die Management-Theoretiker Gary Hamel und C. K. Prahalad bezeichnet Lorenz diesen Schachzug als "Strategic Stretch".

Die Lebensdauer der Linux-Rechner ist auf drei Jahre konzipiert. Nach deren Ablauf wandern die Maschinen aber nicht auf den Müll, sondern werden als Abteilungs-Server weiterverwendet. Damit schneiden die Intel-Computer nicht nur bei den Anschaffungskosten, sondern auch bei den Abschreibungszeit-räumen besser ab als die Risc-Server, deren Einsatz auf vier bis fünf Jahre festgeschrieben ist.

Ein weiterer Vorteil: Der Nachschub an Intel-Rechnern lässt sich aus demselben Reservoir schöpfen, aus dem auch die Windows-Rechner stammen. In der Risc-Welt wäre es notwendig, eine Reservemaschine für den Notfall vorzuhalten, also viel mehr Kapital zu binden.

Der Einstieg in die Linux-Welt war also in keiner Weise ideologisch motiviert. Den Ausschlag gab vielmehr der Bedarf für eine preisgünstige und zuverläs- sige Produktionsumgebung für Java-Anwendungen - und damit das nackte Wirtschaftlichkeitsdenken, beteuert Lorenz. "Die Frage hieß einfach: Was kostet es, eine redundante Architektur in der einen und in der anderen Technik aufzubauen, die sich homogen in unsere Strukturen und Betriebsabläufe einbinden lässt?"

In die wirtschaftliche Betrachtung flossen die Kosten für Hardware, Software sowie Aufbau, Betrieb, Administration und RZ-Betrieb ein. Auch die Auswirkungen auf die Geschäftsprozesse wurden erfasst - in Form von möglichen Ausfallkosten. Aber Lorenz war schnell klar, dass sich Detailerörterungen erübrigen würden: "Nach den ersten Szenarioanalysen und Testergebnissen waren die Vorteile so offensichtlich, dass wir eine Entscheidung fällen konnten."

Die Linux-basierende Umgebung ist aber nicht nur kostengünstig, sondern auch flexibel, ergänzt der Softwareexperte: "Wenn eine neue Anforderung kommt und uns die Cluster-Performance dafür fehlt, fügen wir einfach eine Maschine hinzu." Die Installationszeit veranschlagt er mit 20 Minuten: "Idealerweise lässt sich eine Maschine aus einer anderen klonen. Anschließend wird sie aus einer zentralen Konfigurationsinstanz automatisch konfiguriert." Für die Entwickler sei diese Architektur völlig transparent, ergänzt er, "sie arbeiten immer mit derselben URL, egal welcher Rechner im Hintergrund läuft."

Mit Rechnermasse abgefedert

Darüber hinaus war es möglich, die aus Sicherheitsgründen geforderte Trennung von Intranet, Extranet und Internet beizubehalten: Dank der überschaubaren Hardwarekosten ließ sich für jedes dieser Netzsegmente ein eigener Linux-Cluster installieren. Mit anderen Worten: Erst dank der Linux-Entscheidung konnte Lorenz seine Vorstellungen in die Realität umsetzen.

Idealerweise lässt sich die neue Architektur auch noch mit einer relativ kleinen Mannschaft betreiben: Das Linux/Web-Team zählt ganze fünf Köpfe. Den Auf-wand für das reine Web-Hosting beziffert Lorenz mit 0,7 Manntagen pro Woche. "Das System lebt quasi von der Rechnermasse, weil ich Ausfälle oder Wartungsaktivitäten mit redundanter Hardware abfedere", formuliert er die Grundidee.

Hinsichtlich des Application-Servers und der zugehörigen Softwarewerkzeuge hat sich MAN Nutzfahrzeuge für eine IBM-Umgebung entschieden - nicht zuletzt deshalb, weil der blaue Riese bereits sehr früh auf Linux gesetzt hat. Bei dieser Ent-scheidung wird es auch fürs Erste bleiben; gerade erst wurden weitere Websphere-Lizenzen geordert - obschon auch diesem Geschäftsabschluss zähe Lizenzverhandlungen mit dem Anbieter vorausgingen.

Primär ein Server-System

Seit etwa vier Jahren ist das Konzept nun verwirklicht. Die Softwareproduktions-Umgebung findet sich in abgespeckter Form auch als Test- und der Integrationsplattform wieder. In die Softwareerstellung integriert ist das automatische Deployment. Diese geschlossene Umgebung erlaubt eine quasi vollautomatische Softwareproduktion. So lassen sich viele Fehlerquellen von vornherein ausschalten. Auch an dieser Stelle setzt MAN Nutzfahrzeuge im Wesentlichen Open-Source-Werkzeuge ein.

Zum Einsatz kommen:

- CVS für das Sourcecode-Repository,

- ANT für die Steuerung des Deployment-Prozesses,

- Bibliotheken und Frameworks der Apache Foundation und der Jboss Group,

- Struts und die Jakarta-Libraries als Entwicklungs-Framework für die Web-Applikationen und

- Hibernate für das objektrelationale Mapping.

Die Anwender greifen auf den größten Teil der Web-Anwendungen mit einem Browser (in der Regel dem Internet Explorer) zu. Weniger als ein Fünftel dieser Applikationen laufen als "Rich Clients" auf der Basis von "Java Swing" und "Java Web-Start".

Windows-Desktops bleiben

Auf dem Desktop ist Linux für MAN Nutzfahrzeuge derzeit keine ernst zu nehmende Alternative. Allerdings untersucht das Unternehmen in einer gesonderten Studie, unter welchen Umständen sich das ändern könnte: "Wir haben allein in München 5000 PC-Installationen unter Windows im Einsatz", erläutert Lorenz. Diese Rechner und die Software müssten länderübergreifend auf einem einheitlichen Stand gehalten werden, was unter dem weit verbreiteten Windows weit weniger komplex sei. Deshalb lautet das Fazit des Softwareexperten: "Linux ist für uns nach dem heuti-gen Stand primär ein Server-Betriebssystem."

Auf der neuen Architektur laufen heute über 30 Web-Anwendungen sowie das Dokumenten-Management-System (DMS) und das Intranet für mehr als 10000 Mitarbeiter. Zu den Web-Applikationen zählen unternehmens-kritische Systeme wie die Software für das Montageband sowie der Lkw- und der Bus-Konfigurator, zwei Werkzeuge zur Kundenberatung im Vertrieb. "Für uns ist diese Umgebung keine Spielerei, sondern mission critical", bestätigt Lorenz.

Was die Unternehmensdatenbanken auf IBM- oder Oracle-Basis, die SAP-Systeme und die Altanwendungen angeht, setzt MAN Nutzfahrzeuge immer noch auf IBM-Mainframes und "Superdome"-Cluster von Hewlett-Packard. "Unsere Philosophie lautet: Die für uns teuren Daten halten wir auf hochwertigen Maschinen; Applikationen, die sich leicht restaurieren lassen, dürfen auf billigerer Hardware laufen", resümiert Lorenz.

Mit dieser "Philosophie" habe sich das Unternehmen in den vergangenen vier Jahren einen deutlichen Vorteil verschafft, da ist Lorenz sicher: "Wir haben das System zu einer Zeit aufgebaut, als andere noch in teure Hardware investierten." So habe MAN Nutzfahrzeuge trotz eines gedeckelten IT-Budgets finanzielle Ressourcen für wichtige Projekte freisetzen, also einen Investitionsstau vermeiden können.

Wer heute erst diesen Weg be-schreite, werde diese Vorteile selbstverständlich nicht erzielen können, räumt Lorenz ein. Dafür habe er aber ganz andere technische Möglichkeiten. "Heute würde ich Blade-Server und Vier-CPU-Rechner stärker berücksichtigen", nennt er ein Beispiel. Vor vier Jahren sei der Linux-Kernel dafür noch nicht skalierbar genug gewesen. Das Intranet und das DMS-System laufen denn auch bereits auf einem Vier-Prozessor-Rechner der "Opteron"-Reihe unter Suse Linux Enterprise Edition.

Richtige Balance finden

Zudem rät Lorenz, eine "vernünftige" Balance zwischen der Anzahl der Rechner- und der Nutzeranzahl zu finden: "Sonst droht die Gefahr, dass sich die ursprünglichen Vorteile aufgrund steigender Lizenz- und Betriebskosten ins Negative umkehren." Ebenso wichtig sei es, mit den Softwarelieferanten beizeiten über ihre langfristige Lizenzpolitik zu verhandeln.

Für MAN Nutzfahrzeuge gilt es nun, die Architektur so weiterzuentwickeln, dass sich Wettbewerbsvorteile für die nächsten vier Jahre umzsetzen lassen. Wo Lorenz die Möglichkeiten im Einzelnen sieht, wird er klugerweise nicht preisgeben. Nur soviel: Die größten Defizite der Architektur liegen seiner Erfahrung nach im natürlichen Wachstum und der internen Vernetzung von Applikationen und Services: Mit der Anzahl der Web-Anwendungen steigt auch der Aufwand, den sein Team für die routinemäßige Betreuung leisten muss. Andererseits verlangt die zunehmende Komplexität nach einem veränderten Design-prozess und hochqualifiziertem Know-how. Folglich trachtet Lorenz, seine Mitarbeiter von Routinetätigkeiten zu entlasten.

Intelligentes Monitoring

Eine Möglichkeit dafür sieht der Software-Manager in einem transparenteren und "intelligenteren" Monitoring der Prozesse und Systeme: "Die Systeme sollen sich selbst überwachen, Zustände analysieren und selbständig Maßnahmen zur Fehlerbehebung treffen." Ähnliches gelte für die Kontrolle der Service Level Agreements (SLAs) mit den Dienstleistern, für Messmethoden, Steuerung und Abrechnung. Dafür gebe es durchaus schon Konzepte, Techniken und Schnittstellen "mit hinreichendem Reifegrad" - zum Beispiel Rule-based Reasoning oder die Java Management Extensions (JMX).