Die AKDB bietet ihren Kunden ein 360-Grad-Portfolio an Software-Lösungen, um die öffentliche Verwaltung fit für die digitale Zukunft zu machen. Einen Teil dieser Online-Verwaltungsleistungen stellt die AKDB über ihr Rechenzentrum zur Verfügung. Um mit schnellen Entwicklungen auch technisch mithalten zu können, ist eine Umstellung notwendig: Weg von monolithischen hin zu containerisierten Anwendungen.
„Im Zuge der digitalen Transformation müssen wir heute schneller denn je auf neue gesetzliche Rahmenbedingungen und veränderte Anforderungen von Bürgern und Behörden reagieren“, sagt Peter Köhlmann, Teamleiter DevOps bei der AKDB. „Mit schwerfälligen, monolithischen Anwendungen ist das kaum zu bewältigen. Deshalb haben wir bereits 2018 damit begonnen, erste Anwendungen auf Basis einer Microservice-Architektur zu entwickeln und bereitzustellen.“
Der Vorteil einer solchen Microservice-Architektur: Mithilfe von Containern können Anwendungen in isolierten Computerumgebungen ausgeführt werden. Damit können Änderungen im Anwendungscode behoben werden, ohne das Betriebssystem, die Hardware oder andere Anwendungsdienste zu beeinträchtigen. So läuft bei der AKDB etwa die BayernID, der digitale Identitätsservice für die sichere Kommunikation mit Behörden, seit mehr als vier Jahren auf Kubernetes, einer portablen, erweiterbaren Open-Source-Plattform zur Verwaltung von containerisierten Services. Auch die neue Personalsoftware OK.PERS+ wurde von Anfang an als containerisierte Anwendung entwickelt.
End-to-End-Sicherheit für containerisierte Anwendungen
Mit Unterstützung des Customer Success Teams und der Consulting Services von SUSE migrierte das Team der AKDB die bestehenden Workloads auf die neue Infrastruktur. Anschließend baute die AKDB ihre Container-Infrastruktur rasch weiter aus – von zunächst acht auf mittlerweile 20 Kubernetes-Cluster. Der Ausbau war unter anderem notwendig, um rechtzeitig vor den Landtagswahlen in Bayern und Hessen eine neue Anwendung für die Beantragung von Briefwahlunterlagen zur Verfügung zu stellen.
Beim Aufbau der neuen Container-Infrastruktur testete die AKDB auch die Container Security Plattform NeuVector, um sensible Daten zu schützen. „NeuVector ist für die Containersicherheit so vielseitig einsetzbar wie ein Schweizer Taschenmesser“, fasst Köhlmann zusammen. „Mit Technologien wie dem Vulnerability Management, Deep Packet Inspection und der integrierten Container-Firewall bietet die Lösung zahlreiche Möglichkeiten für eine durchgängige Absicherung unserer containerisierten Workloads. Das hilft uns, den steigenden Anforderungen an Datenschutz und IT-Sicherheit im öffentlichen Sektor auch beim Einsatz von Cloud-nativen Anwendungen gerecht zu werden.“
Mit der Zero-Trust-Architektur kann NeuVector nicht nur bekannte Angriffsmuster abwehren, sondern auch neuartige Bedrohungen erkennen und blocken. NeuVector inspiziert den gesamten ein- und ausgehenden Datenverkehr innerhalb der Container-Umgebung und kann zwischen normalem Anwendungsverhalten und verdächtigen Aktivitäten unterscheiden. Mit der integrierten Container Firewall lassen sich kompromittierte Systeme isolieren und die Ausbreitung von schädlichem Code innerhalb des Netzwerks sofort stoppen.
„Ohne NeuVector wäre es uns kaum möglich, den Container-Traffic in Clustern mit tausenden von Microservices zuverlässig zu überwachen und abzusichern“, betont Köhlmann. „NeuVector bietet auch Schutz vor Zero-Day-Attacken, für die es noch keine Security-Patches gibt. Damit hilft uns die Lösung, neue gesetzliche Anforderungen wie die Vorgaben des Bundesamts für Sicherheit in der Informationstechnik (BSI) umzusetzen. Mit den strengen Kontrollmechanismen von NeuVector schaffen wir die Voraussetzungen, um auch Anwendungen mit hohem Schutzbedarf sicher in unserer Container-Umgebung zu betreiben.“
Maximale Verfügbarkeit für moderne digitale Verwaltungsservices
Die Kombination von Kubernetes und der Management-Plattform Rancher Prime von SUSE bietet aus Sicht von Peter Köhlmann erhebliche Vorteile für den zuverlässigen Betrieb der containerisierten Anwendungen. „Seitdem wir die neue Infrastruktur implementiert haben, gab es kein einziges Mal Probleme mit der Verfügbarkeit der bereitgestellten Anwendungen.“
In der Vergangenheit verbrachte das IT-Team oft Zeit damit, Anwendungsprobleme zu lösen. So kam es zum Beispiel immer wieder vor, dass Java-Anwendungen aufgrund von fehlendem Speicherplatz nicht mehr richtig funktionierten. Bei containerisierten Anwendungen werden viele dieser typischen Probleme durch die Selbstheilungsfunktionen von Kubernetes gelöst, ohne dass das Team involviert sein muss. Dabei werden beispielsweise Komponenten automatisch neu gestartet, bis der gewünschte Systemzustand wieder erreicht ist. Die Management-Oberfläche von Rancher Prime weist die Systemadministratoren zudem proaktiv auf Störungen hin, die ein manuelles Eingreifen erfordern.
Auch während Wartungsarbeiten oder Software-Updates bleiben die Online-Services der AKDB immer erreichbar. Rancher Prime verschiebt die Workloads innerhalb des Clusters automatisch so, dass die einzelnen Nodes nach und nach aktualisiert werden können. Die Online-Services laufen dabei ohne Unterbrechung weiter.
Schnelle Verarbeitung von Millionen Anträgen dank einfacher Skalierbarkeit
Die neue Lösungsarchitektur erleichtert es dem AKDB-Team erheblich, mit steigenden Anforderungen umzugehen. „Als wir etwa den Online-Dienst für die Beantragung der Briefwahlunterlagen einführten, rechneten wir bereits mit Lastspitzen von bis zu 30.000 Anträgen pro Stunde“, berichtet Köhlmann. „Mit Rancher Prime und Kubernetes konnten wir die Infrastruktur so skalieren, dass sie den zeitweise sehr hohen Leistungsanforderungen gewachsen war. Dadurch wurden mehrere Millionen Anträge im Vorfeld der Landtagswahlen ohne Wartezeiten entgegengenommen und verarbeitet.“
Der AKDB stehen dabei verschiedene Skalierungsoptionen zur Verfügung. Das Team kann den einzelnen Nodes bei Bedarf mehr CPU-Leistung und Arbeitsspeicher zuweisen oder den Cluster ganz einfach um zusätzliche Nodes erweitern. Darüber hinaus besteht die Möglichkeit, den Horizontal Pod Autoscaler (HPA) von Kubernetes zu nutzen. Damit lassen sich einzelne Services auf einem Cluster automatisch herauf- oder herunterskalieren. Rancher Prime vereinfacht die Verwaltung von HPA und ermöglicht es, individuelle Schwellenwerte für bestimmte Services festzulegen.
Besseres Zusammenspiel zwischen Anwendungsentwicklung und Betrieb
Als Teamleiter des DevOps-Teams sieht Peter Köhlmann auch, wie Rancher Prime die Zusammenarbeit von Entwicklung und Betrieb verbessert: „Wir geben heute Verantwortung an die Softwareentwickler ab und ermöglichen ihnen, das Deployment von Software-Releases selbstständig aus unserer definierten CI/CD-Pipeline heraus anzustoßen.“
Die neuen Releases durchlaufen nach dem Staging-Prinzip verschiedene Stufen mit automatisierten Tests, bevor sie schließlich auf den produktiven Clustern bereitgestellt werden. Für das Betriebsteam bringt dieser automatisierte Deployment-Prozess eine enorme Entlastung, die jede Woche mindestens zehn Stunden Arbeit einspart.
Wie geht es bei der AKDB weiter?
Die Transformation der Anwendungslandschaft der AKDB ist derzeit in vollem Gange. Neue Applikationen entwickelt die Organisation mittlerweile grundsätzlich als containerisierte Anwendungen. Darüber hinaus prüfen die Applikationsverantwortlichen, inwieweit auch einige der bestehenden monolithischen Kernanwendungen auf eine Container-Architektur portiert werden können.