16. DevOps Meetup Bern: Continuous Delivery

19.09.2023 | Matthias

Ende August fand das bereits 16. DevOps Meetup im Impact Hub in Bern statt. 2 spannende und unterhaltsame Talks standen auf der Agenda - avega war als Apéro-Sponsor dabei. In diesem Blogpost fasse ich die Highlights kurz zusammen.

Continuous Delivery

Im ersten Talk von Dominique Gueniat (BIT) wurden praktische Erfahrungen und Lösungsansätze für Continuous Delivery in einem komplexen Umfeld mit mehreren Software-Anwendungen und Teams präsentiert. Der Fokus lag auf realen Situationen und Erfahrungen. Behandelte Themen waren die Trennung von Deployment und Release, die Auswirkungen auf das Testing - insbesondere im Vergleich von Regress- und Abnahmetests - sowie Kompatibilitätschecks. Weitere Herausforderungen umfassten Themen wie Expand-Migrate-Contract als Ansatz für unterbruchsfreie Migrationen, die Nachvollziehbarkeit von IT-Governance und Compliance sowie der Umgang mit dem Kulturwechsel und dem Abbau der Angst vor häufigen Deployments.

Meetup

Um diese Herausforderungen zu bewältigen, wurden verschiedene Lösungsansätze vorgestellt, unter anderem:

  • Der Einsatz von Can-I-Deploy-Tests als Kompatibilitäts-Check vor dem Deployment - sowohl für REST-Schnittstellen mit Pact als auch für Kafka-Messages

  • Testkonzepte mit Fokus auf entkoppelte Tests mit Pact und einem Messaging-Framework, sowie ein Ansatz zum Testen von Geschäfts-Prozessen End-to-End mit automatisierter Testdaten-Bereitstellung

  • Ein selber entwickeltes Deployment-Log für die Transparenz und automatisierte Nachvollziehbarkeit von Deployments

  • Unterbruchsfreie Deployments mit Blue/Green-Deployment

  • Feature Flags zur Trennung von Deployment und Release

Meetup

Die Präsentation schloss mit einem Einblick in die gemessenen Zahlen und den aktuellen Stand der Implementierung dieser Lösungsansätze. Es wurde auch erläutert, welche Kennzahlen gemessen wurden, um den Erfolg der Maßnahmen zu evaluieren:

  • Eindrücklich: Deployments pro Tag (25 in den gemessenen 10 Wochen)

  • Deployment-Zeiten (allesamt zu Bürozeiten, keine Wochenend-Einsätze). Deployments sind ein Non-Event!

  • Parität zwischen Test- und Produktions-Umgebungen, sowie die Durchlaufzeit von Software-Versionen von der Test- bis in die Produktionsumgebung

Parallelen zwischen Containerisierung und einem Tabletop-Spiel

Im zweiten - nicht ganz so technischen oder ernst gemeinten Talk - zeigte Benjamin Affolter (ROKT) Parallelen zwischen der Containerisierung, Container-Orchestratoren und anderen Container-Technologien sowie dem Tabletop-Hobby “Warhammer 40,000” auf. Es gibt tatsächlich Parallelen - unter anderem ein Container-Element im Spiel. Ich war beeindruckt ab Benjs Leidenschaft für das Spiel und die Kombination aus Modellbau und Spiel - die phyischen Dimension des Spiels auf grossen Tischen ist beeindruckend. Wenn ich gerade noch ein zeitintensives Hobby suchen würde, wäre ich versucht es mal auszuprobieren…

Meetup

Komm doch vorbei!

Es freut mich sehr, dass das DevOps Meetup in Bern sich in der Post-Pandemie-Zeit wieder erholt hat und durch eine aktive Community getragen wird. Komm doch das nächste Mal auch vorbei: https://www.meetup.com/de-DE/DevOps-Bern/ - ich würde mich freuen!