Modular statt Monolithisch: Wie Banking-IT von Containertechnologien profitiert

Containertechnologie_Modular_statt_Monolithisch

In Zeiten eines allgegenwärtigen digitalen Wandels in Kombination mit dynamisch wechselnden Anforderungen von Markt- und Kundenseite sind Aspekte wie Agilität, Flexibilität und Geschwindigkeit in der IT unerlässlich. Unter technologischen Gesichtspunkten führt dabei kaum ein Weg an Container- und Microservices-Architekturen vorbei. Das betrifft insbesondere auch die Finanzbranche.

Von Entwicklungsprozessen bis zur Infrastruktur: IT hat sich in den letzten Jahren rapide gewandelt. Spätestens seit Cloud-Transformation als vielversprechende Strategie für eine erfolgreiche Zukunft in den Mittelpunkt rückt, wird auch der Einsatz von Containertechnologien und Microservices-Architekturen immer relevanter. Insbesondere Finanzinstitute, deren historisch gewachsene Bestandssysteme häufig die flexible Entwicklung neuer Lösungen behindern, können von Containertechnologien profitieren, um sich zu modernisieren und auf Augenhöhe mit FinTechs zu bleiben.

Viele Banken restrukturieren daher die Prozesse und Technologien ihrer IT-Abteilungen. Eine containerisierte Infrastruktur kann Finanzinstituten dabei helfen, ihre Ziele hinsichtlich Geschwindigkeit, Skalierbarkeit und Sicherheit zu erreichen. So lassen sich Geschäftsmodelle und Geschäftsprozesse schneller digitalisieren und den Anforderungen der IT nach zuverlässigen, bedarfsgerecht skalierbaren Anwendungen und schnellen Updates für eine bessere Customer Experience entsprechen.

Container – die Transporteinheit für Software

Container in der IT bilden in sich geschlossene, standardisierte Einheiten für Software. Damit vereinfachen sie den Transport und die Installation von Anwendungsdaten: Im Container befindet sich alles, was eine Anwendung braucht, um lauffähig zu sein. Das erleichtert Entwicklung, Transport und Deployment von Software enorm. Die Applikation kann somit problemlos zwischen Umgebungen verschoben und anschließend ausgeführt werden, ohne dass Veränderungen vorgenommen werden müssen. Damit entfallen die sonst häufig auftretenden Laufzeitprobleme in unterschiedlichen Umgebungen, die von Softwareentwicklern gerne mit einem Schulterzucken und der Aussage „It works on my machine“ quittiert werden.

Das Konzept der Container gibt es schon eine ganze Weile; seit 2013 erfreut sich beispielsweise die Open-Source-Software Docker steigender Beliebtheit – eine Software zur Container-Virtualisierung, die die Erstellung und den Betrieb von Containern ermöglicht. Da immer mehr Unternehmen auch Cloud-Lösungen im Einsatz haben, haben Container in den letzten Jahren weiter an Wichtigkeit gewonnen, denn die neuen Hosting-Möglichkeiten führen auch dazu, dass die IT-Infrastruktur immer heterogener wird. So ergibt sich häufig eine Mischform aus lokalen Anwendungen und Anwendungen, die auf Hybrid-, Public- oder Private-Clouds betrieben werden. Containerlösungen ermöglichen es, Software schnell und flexibel über heterogene und verteilte Umgebungen inklusive Cloud bereitzustellen und gegebenenfalls auch auf eine andere Infrastruktur umzuziehen.

Containertechnologie fördert die Produktivität

Schon während der Anwendungsentwicklung können Entwicklerteams von Containertechnologie profitieren. Container agieren ähnlich wie Virtuelle Maschinen (VM) – beide machen Anwendungen autonom von der Umgebung, auf der sie ausgeführt werden. Während eine VM aber ein vollwertiges Betriebssystem plus Applikationen beinhaltet und zusätzlich ein Hypervisor benötigt wird – also eine Software, welche die VM ausführt – operieren Container auf dem Basisbetriebssystem (Container Host), isoliert von anderen Containern. Das spart Speicher und Rechenkapazität und sorgt dafür, dass Ressourcen effizienter genutzt werden können.

Virtuelle Maschine versus Container

Container stellen außerdem einen Paradigmenwechsel in der Hinsicht dar, wie Technologie zwei Kernfunktionen der IT verbindet, die in der Vergangenheit oft getrennt voneinander ausgeübt wurden: Entwicklung und Betrieb. Da Software in Containern als geschlossene, lauffähige Einheit transportiert wird, verbringen die Softwareentwickler und die operativen IT-Teams weniger Zeit damit, die Unterschiede zwischen Development-, Test- und Produktionsumgebung auszugleichen und Fehler zu beheben. Das sorgt für eine engere Verzahnung zwischen Development und Operations und ebnet den Weg, eine produktive DevOps-Kultur zu etablieren. Zudem ermöglicht die 'Anwendungsverpackung' eine leichtere Automatisierung des Deployment-Prozesses, wodurch Softwaretests und Updates beschleunigt werden können.

Durch diese optimierte Arbeitsweise lassen sich die Release-Zyklen für die Software deutlich verkürzen, was die Time-to-Market verringert und im zunehmend wettbewerbsintensiven Umfeld der Finanzdienstleistungen für einen klaren Marktvorteil sorgt.

Ein Container kommt selten allein: Warum die Orchestrierung so wichtig ist

Nicht nur das stabile Laufverhalten ihrer Applikationen ist wichtig für Finanzinstitute; auch eine skalierbare Anwendungsinfrastruktur stellt insbesondere für expandierende Banken eine elementare Grundlage dar, da sie damit flexibel auf marktseitige Anforderungen reagieren können. Eine wachsende Zahl an Nutzern verlangt auch der IT mehr Leistung ab. Über Container-Orchestrierungsplattformen wie Kubernetes lassen sich Container je nach Bedarf provisionieren. Steigt der Workload und es wird eine größere Anzahl an Containern benötigt, lassen sich diese sehr schnell und vor allem abhängig von der aktuellen Last erzeugen und bereitstellen. Das hat zur Folge, dass die IT-Leistung selbst bei hoher Last und vielen Zugriffen stabil bleibt.

In der Finanzindustrie herrschen aber besonders hohe Anforderungen an die Sicherheit und die Verfügbarkeit von Applikationen, die ein Open Source Projekt wie Kubernetes allein nicht leisten kann. Hier kommt OpenShift ins Spiel. Eine OpenShift Container-Plattform ermöglicht die professionelle Distribution von Containern und den Betrieb gehärteter Kubernetes-Cluster. Außerdem enthält die Plattform viele Features, sowohl für Development als auch für Operations, die durch Automatisierung von der Entwicklung bis zum Monitoring unterstützen. Darum spielt OpenShift als Anwendungsplattform für Container im Finanzbereich eine große Rolle, denn es müssen nicht nur Day 1 Operations im Software Lifecycle, also Entwicklung und Installation, sondern auch Day 2 Operations, der langfristige Betrieb der Software, berücksichtigt werden.

Container und Microservices ermöglichen eine modulare Banking-IT

In vielen Banken sieht die Welt allerdings oft noch ganz anders aus. Starre Legacy-IT-Systeme können den dynamischen Anforderungen von Regulatorik, technologischem Fortschritt und nicht zuletzt den vielschichtigen Kundenwünschen häufig kaum gerecht werden. Das hat nicht nur zur Folge, dass die monolithischen Systeme mit jedem neuen Feature komplexer werden. Auch die Implementierung und das Testing neuer Funktionen werden immer aufwendiger.

Um die Komplexität von Banking-Softwareprojekten zu reduzieren, bieten sich modulare Lösungen an. Microservices sind dafür die ideale technologische Basis – und Container bilden für Microservices die optimale Verpackung. Mithilfe einer lose gekoppelten Architektur bestehend aus modularen, durch Schnittstellen (APIs) verbundenen Microservices lassen sich Legacy-Systeme schrittweise modernisieren. Bei einem schrittweisen Umbau wird nach und nach jede Funktion des Altsystems in einen eigenen Microservice ausgelagert. Diese lassen sich beispielsweise nach den Prinzipien von Domain-Driven Design nach fachlichen Gesichtspunkten voneinander abgrenzen. Wird jeder dieser Microservices als Container bereitgestellt, führt das konsequenterweise zu sehr vielen Containern. Folglich bedarf die Verwaltung und Orchestrierung eines solchen modularen Systems einer klaren Struktur.

New call-to-action

Fazit

Technologie wird für Banken zu einem entscheidenden Instrument: Um mit den steigenden Anforderungen mitzuhalten, müssen die Finanzinstitute von heute zu den Technologievorreitern von morgen werden. Container und Microservices können wichtige Eckpfeiler dieser umfangreichen Transformation sein, denn mit einer zukunftsfähigen IT-Infrastruktur auf Grundlage von State-of-the-Art-Technologien können neue Services schneller bereitgestellt werden und Zeit und Kosten durch schnellere Entwicklungsprozesse gespart werden.

Eine Kubernetes-basierte Container-Architektur kann die Komplexität reduzieren, eine höhere Anwendungszuverlässigkeit bieten und eine flexiblere horizontale Skalierbarkeit über die gesamte Backend-Infrastruktur hinweg bewirken. Nicht zuletzt profitiert der Kunde vom Zugriff auf Anwendungen und Daten, der 24/7 möglich ist sowie von der schnellen Bereitstellung neuer Funktionen oder wichtiger Updates.
Aber dazu sind neue technische Skills erforderlich, die in vielen Banken noch nicht ausreichend vorhanden sind. Nur eine Plattform, die das alles miteinander verbindet, sich auf Fachlichkeit konzentriert und gleichzeitig neue Technologien wie Microservices und Container verfügbar macht, ermöglicht es Banken, Digitalisierungsprojekte schnell, aber vor allem auch sicher zu realisieren.

Zum knowis Newsletter anmelden

Quellen:
Videos: Containerization Explained. (IBM Cloud / YouTube), Container Orchestration Explained (IBM Cloud / YouTube).
Teaser: Tryaging – 819593700 – iStock.

Geschrieben von Stephan Kliche

Stephan Kliche ist Client Technical Architect bei der knowis AG und für die erfolgreiche Implementierung der knowis-Produkte in verschiedenen Geschäftsbereichen verantwortlich. Microservices-Architekturmuster und Kubernetes-basierende Container-Orchestrierung sind dabei besonders in seinem Fokus. Bevor Stephan 2017 zu knowis kam, arbeitete er als Senior IT Architect bei IBM, wo er zahlreiche Projekte rund um Enterprise Application Integration und Business Process Management verantwortete.

Jetzt teilen

Abonnieren Sie unseren Newsletter

Whitepaper-Download: Kredit. Digital.