Continuous Deployment: Kubernetes bei der Deutschen Bahn

Mit einem Großprojekt will die Deutsche Bahn ihre historisch gewachsene IT-Vertriebslandschaft erneuern – und das im laufenden Betrieb.

Artikel verschenken
In Pocket speichern vorlesen Druckansicht 7 Kommentare lesen
Kubernetes bei der Deutschen Bahn
Lesezeit: 22 Min.
Von
  • Stefan Jacobs
  • Oliver Kracht
Inhaltsverzeichnis

Es ist ein Großprojekt, mit dem die Deutsche Bahn (DB) ihre historisch gewachsene IT-Vertriebslandschaft von Grund auf erneuert – und das im laufenden Betrieb. Ziel ist eine neue IT-Plattform, die die Grundlage für viele Verbesserungen bildet, die auch die Endkunden unmittelbar spüren werden. Das vor über 30 Jahren von der DB selbst entwickelte "Kundenfreundliche Reise-, Informations- und Verkaufssystem der 90er-Jahre" (KURS ’90) überzeugte von Anfang an mit hoher Zuverlässigkeit. In den folgenden Jahren wurde das System um zahlreiche Funktionen erweitert und das Frontend wurde aktualisiert – die Kernkomponenten blieben allerdings weiterhin bestehen. Die technische Grundlage der Vertriebslandschaft wurde so weit individualisiert, dass sie kaum mehr aktuellen Standards entspricht: Erweiterungen und Wartung verursachen unverhältnismäßig viel Aufwand und Kosten.

DB Vertrieb kümmert sich zusammen mit der IT-Tochter der Bahn, DB Systel, um die grundlegende Modernisierung dieser Systeme. Zielbild ist eine verteilte Domänenlandschaft, die die fachlichen Zuständigkeiten klar verortet und besser beherrschbar macht. Zum Beispiel wird die Angebotserstellung als eine Domäne entwickelt und ist dabei streng getrennt von der Ticketerstellung, der Buchungsstrecke, den Kundenkonten und anderen Domänen. Davon verspricht sich die DB Vertrieb eine schnellere Time-to-Market sowie eine höhere Flexibilität in der Auswahl von Technologien.

Die Domänen werden hauptsächlich in Java programmiert und in Container verpackt. Das technische Ziel dieser Domänenlandschaft ist ein Managed-Kubernetes-Cluster in der AWS-Cloud. Die jeweiligen Komponenten entstehen nach den Vorgaben einer "Twelve Factor App": Konfiguration per Umgebungsvariablen, Gleichheit der Artefakte über alle Umgebungen und horizontale Skalierung, um nur beispielhaft einige der Faktoren zu nennen. An Konzeption und Umsetzung arbeitet die Bahn schon seit einigen Jahren. Die neue Anwendungslandschaft befindet sich bereits in der produktiven Verwendung, allerdings ist der Anwenderkreis derzeit auf eine geschlossene Beta beschränkt.