Starke Entwicklungen bei der LUKB

Die Luzerner Kantonalbank (LUKB) möchte ihren Entwickler*innen ermöglichen, die internen OpenShift-Plattformen zu nutzen, um von Synergien zu profitieren sowie die Arbeit zu erleichtern. Dabei dürfen produktive Applikationen nicht negativ beeinflusst werden und der Betrieb der Plattformen muss weiterhin reibungslos funktionieren.

 

Nachdem Puzzle ITC die LUKB bereits im Jahr 2019 im OpenShift- Umfeld unterstützen durfte, war die Freude über die neue Aufgabenstellung im Sommer 2020 gross. Die Abteilung ICT Entwicklung hat sich zum Ziel gesetzt, die CI/CD- Tools und -Pipelines, welche bis anhin auf VMs betrieben wurden, auf der bestehenden OpenShift Umgebung zu implementieren.

Zunächst wurde ein Segmentierungs- und Berechtigungskonzept erstellt. Die CI/CD-Tools Artifactory und Jenkins mussten ersetzt werden. Zeitgleich wurde der Aufbau einer OpenShift-v4-Plattform geplant und umgesetzt, welche zukünftig die produktive OpenShift-v3-Plattform ersetzten soll. Für den Ersatz vom Build Server standen Jenkins und die Tekton basierten OpenShift-Pipelines zur Auswahl. Bei der Jenkins Lösung muss eine Komponente ständig aktiv sein, was viele Ressourcen bindet und verbraucht. Tekton benutzt hingegen Ressourcen auf der Plattform nur , wenn eine Pipeline läuft. So überzeugte Tekton mit der idealen Container-Plattform-Ausnutzung.

Zum Speichern der Artefakte der Build-Pipelines wurde zuerst das Tool Artifactory neu aufgebaut. Der Betrieb mittels Operator wurde geprüft, jedoch konnte dieser nicht vollständig mit dem neuen Deployment-Tool ArgoCD automatisiert werden. So ergab sich die Verwendung von Helm in Kombination mit weiteren Ressourcen von Kustomize als finale Lösung.

 

„Im CI/CD-Umfeld ist viel in Bewegung. Die Balance zu treffen zwischen erprobten Ansätzen und dem Potential neuer Technologien ist eine Herausforderung. Die Puzzle-Ingenieur*innen haben uns hier in Konzeption und Implementation mit ihrer Erfahrung und Vernetzung unkompliziert, kompetent und tatkräftig unterstützt.“

Patrick Korte, Leiter ICT Entwicklung, LUKB

Die Manifeste der Pipelines wurden in neuen Git-Repos per Kustomize verwaltet und die Ressourcen mit ArgoCD auf OCP erstellt. Nach und nach wurden mit diesem Setup alle Pipelines auf Jenkins abgestellt und mit Tekton ersetzt. Dank identischer Pipeline-Struktur konnte mehrfach auf eine zentrale Definition zurück gegriffen werden.

Mit einem neu entwickelten Monitoring-System auf Basis einer eigenen Grafana Instanz, welche Zugriff auf die Metriken der Tekton Pipelines hat, wurden Dashboards für die LUKB-Entwickler*innen erstellt. Dies ermöglicht die Übersicht auf den aktuellen Zustand ihrer Pipelines und eine sofortige Problemerkennung.

Nach intensivem Consulting und gemeinsamem Aufsetzen von Proptotypen wurde die Migration durch die LUKB-Entwickler*innen mit Puzzle-Unterstützung umgesetzt und so das Know-how transferiert. Puzzle unterstützt die LUKB weiterhin für Implementationsfragen, konzeptionelle Arbeit und Problembehebung im CI/CD-Umfeld.

Juni 2021 – Januar 2022
ArgoCD, Artifactory, Bitbucket, OpenShift v4, OpenShift Pipelines, Tekton
CICD, Pipelines, Monitoring

 

Die 1850 gegründete Luzerner Kantonalbank AG ist mit gut 1’250 Mitarbeitenden die führende Bank im Kanton Luzern. Sie betreibt 24 Geschäftsstellen und gehört zu den grössten Schweizer Kantonalbanken.

www.lukb.ch