Wie funktionieren Großrechner im Container? Vendor Lock-in – Alternative zum Mainframe gesucht

Autor / Redakteur: Nikolai Zotow / Ulrike Ostler

Unternehmen, die auf Mainframes setzen, stehen bei jeder Beschaffungsrunde vor dem gleichen Kostenproblem. Viele würden gerne auf die preisgünstigere x86-Plattform wechseln. Doch so einfach geht das nicht. Alleine die korrekte Portierung einzelner Anwendungen dauert Jahre. Außerdem würde der Umstieg oftmals nicht nur insgesamt mehr kosten als gespart werden kann, er wäre auch riskant.

Anbieter zum Thema

LZlabs will Mainframe-Anwendungen in Container verpacken, so dass diese in einer Cloud oder auf eigenen x86-Rechnern laufen können.
LZlabs will Mainframe-Anwendungen in Container verpacken, so dass diese in einer Cloud oder auf eigenen x86-Rechnern laufen können.
(Bild: Gerhard 1302/Fotolia.com)

Die sinnvollste Möglichkeit, diesem Problem zu entgehen, ist Stück für Stück die gesamten bestehenden Mainframe-Applikationen auf eine neue Plattform zu migrieren, die offen und skalierbar Wege in die Zukunft zeigt.

Einer der Anbieter, der sich in diesem Marktsegment tummelt, ist Lz Labs aus Wallisellen bei Zürich (Schweiz). Das Unternehmen hat sich darauf spezialisiert, Firmen, die „IBM z Systems“ einsetzen, eine Alternative für deren eigene Mainframe-Applikationen bereitzustellen – auf Basis von „Red Hat Linux“ und Cloud-Plattformen wie „Microsoft Azure“.

Um diese monolithische Rechnerinfrastruktur abzulösen, setzt Lz Labs auf eigene Entwicklungen. Der Grund hierfür ist, dass Standard-Technologie wie „Docker“ nicht dazu fähig sind, Mainframe-Anwendungen bitkompatibel ohne Neukompilierung unter Beibehaltung ihrer nativen Datenformate auszuführen. Die von den Zürichern entwickelten Container können hingegen Transaktionen mit 10.000 Usern gleichzeitig abarbeiten.

Besser als Docker

Die meisten anderen Techniken erreichen diese hohe Skalierung heute nicht. Zudem ersetzt die LZlabs-Entwicklung die jahrzehntealten klassischen Programmierschnittstellen in den Kundenanwendungen durch modernere und erzielt alleine schon dadurch eine höhere Performance auf herkömmlichen x86-Servern.

Dabei sind die Software-Defined-Mainframe-Instanzen lediglich von der Leistungsfähigkeit der darunterliegenden x86-Plattform begrenzt. Die LZlabs-Lösung arbeitet daher typischerweise mit mehreren dieser Container, deren Transaktionen aber miteinander verknüpft werden. So wird beispielsweise ein Batch-Job in einem Container abgearbeitet, während andere Funktionen wie „CICS“ zeitgleich in einem anderen Container erledigt werden können. Für die entsprechenden Module verhalten sich die Container wie eigenständige Mainframes.

Für Anwender, Administratoren und Entwickler heißt das, sie können mit dem Container genauso verfahren wie sie es aus der bisherigen Mainframe-Umgebung gewohnt sind. Das bedeutet wiederum, dass sowohl Anwendungen als auch der ihnen zugrundeliegende nicht neu kompilierter Code im Container geändert und angepasst werden können. Technisch gesehen läuft in einem Container keine neue Kopie der Anwendung, sondern diese Anwendung wurde einfach auf die neue Plattform verlagert und läuft dort weiter.

Die Zugriffe auf die Container können mit einer Vielzahl von Technologien erfolgen, darunter unter anderem FTP, WebInterface, WebSocket oder CICS ISC.
Die Zugriffe auf die Container können mit einer Vielzahl von Technologien erfolgen, darunter unter anderem FTP, WebInterface, WebSocket oder CICS ISC.
(Bild: Frank Boston/Fololia.com)

Herankommen an die Container

Jedoch bieten die Container gegenüber der geschlossenen /390-Umgebung einen entscheidenden Vorteil: Sie sind offen und somit sehr flexibel nutzbar. Die Zugriffe auf die Container können mit einer Vielzahl von Technologien erfolgen, darunter unter anderem FTP, Web-Interface, Web-Socket oder CICS ISC. Anwendungen, die kompiliert vorliegen, müssen bei einer Portierung nicht erneut rekompiliert und auf die neue Umgebung angepasst werden – sie arbeiten im selben binären Format sonst auch auf dem Mainframe weiter.

Der Prozess der „bloßen Verlagerung“ spart Entwicklungskosten und vor allem Zeit. Auch werden hier Fehler vermieden, die bei einer Portierung passieren können.

Gegenwärtig bietet Lz Labs Unterstützung für Red Hat Linux. Die Anwendung ist dafür getestet und das Unternehmen bietet entsprechenden Support dafür an. Zudem können Anwender neben ihren x86-basierten Umgebungen auch Cloud-Dienste, wie Azure nutzen.

Mainframes in der Cloud

Dabei ist die Nutzung der Cloud nicht schwieriger oder aufwändiger als die On-Premise-Variante. Die Anwendungen werden in einem ersten Schritt zunächst in die Container migriert. Dafür stellt der Hersteller entsprechende Werkzeuge und Assistenten bereit. Anschließend werden die Container einfach von den lokalen Servern in die Cloud kopiert. So lassen sich sehr einfach und schnell Leistungsspitzen abfangen.

Die Performance der Cloud-Lösung hängt dann in erster Linie von der Infrastruktur und Leistungsfähigkeit des Cloud Providers ab. Hier sollten sich die Kunden genau informieren, was ihr jeweiliger Anbieter wirklich garantieren kann.

Der Aspekt Flexibilität betrifft im Übrigen nicht nur die Zielplattform, sondern auch den Ursprung. So können nicht nur Cobol-Anwendungen, sondern zukünftig auch PL/1-basierte Applikationen auf die LUlabs-Umgebung portiert werden. Aber auch hier läuft der ursprüngliche Code mitsamt des Containers als x86-Code auf dem neuen Serversystem.

Arbeitsteilung

Andere Plattformen wie „BS2000/OSD“ werden gegenwärtig nicht angeboten, der Schwerpunkt lag bisher auf z Systems. Allerdings lässt das Unternehmen diese Plattform nicht außen vor und plant langfristig auch hierfür – ebenso für andere Umgebungen – eine passende Lösung anzubieten. Konkrete Zeitpläne hat das Unternehmen jedoch bisher nicht veröffentlicht.

In keinem Fall müssen die Kunden bei der Migration auf die Container-Plattform den Code neu kompilieren. Dennoch suchen die Schweizer die enge Zusammenarbeit mit den Compiler-Anbietern. Denn sollte eine Anwendung geändert werden müssen, ist damit auch sichergestellt, dass der Compiler und die Runtime-Umgebung aufeinander abgestimmt sind. Zusätzlich sichert die Kooperation den Wissensaustausch zwischen den Experten der beteiligten Unternehmen.

Trotz ihrer Offenheit ist das System geschützt und selbst die Experten des Herstellers haben in der Regel keinen Zugriff auf die Container. Das ist normalerweise auch unnötig. Doch gibt es durchaus Kunden, die darauf Wert legen. Auf Wunsch unterstützt Lz Labs beim Debugging von Anwendungen, die in einem SDM laufen. Migrationsservices hingegen werden von Geschäftspartnern angeboten.

Ich will zurück!

Abschließend stellt sich für die Kunden noch die Frage: Was ist, wenn ich meine Anwendungen wieder auf den Mainframe zurück verlagern will? Nachdem weder der Code noch die Datenstrukturen noch die Daten an sich verändert werden, ist auch der Weg zurück jederzeit umsetzbar.

(ID:44241492)