Messaging Plattform der Mobiliar erhält ein Upgrade

Jenny Isenschmid

Gemeinsam mit der Mobiliar erarbeitete Puzzle die Aktualisierung des Message Broker von JBoss EAP 6 auf EAP7. Die anfallenden Aufgaben dazu wurden in Zusammenarbeit mit der Mobiliar gelöst.

Ausgangslage

Puzzle erhielt den Auftrag von der Mobiliar, den Message Broker von JBoss EAP 6 auf EAP7 zu aktualisieren. Für die Clients sollte das Upgrade der Messaging Plattform so transparent wie möglich sein. Für die neue Plattform gab es einen neuen Anforderungskatalog, dessen Kriterien erfüllt werden musste. Zudem musste geprüft werden, ob die bestehenden Clients (hauptsächlich Applikationsserver) mit dem neuen Messaging Server kompatibel sind und welchen Anpassungen es noch bedarf.

Die funktionalen und nicht-funktionalen Anforderungen an den neuen Message Broker wurden mittels vorgegebenen Testcases geprüft und gegebenenfalls angepasst. Folgende Aspekte gehörten zu den Tests: Flow Control, Failover, Clientseitige Reconnects, Reliable Messaging, Exactly-once Semantik und das Prüfen der Kompatibilität verschiedener Clients (EAP 6 über HornetQ Core Protokoll, EAP 7 Clients über Artemis Core Protokoll). Ziel war es, die neue Messaging Plattform wenn möglich innerhalb des Kubernetes Clusters zu betreiben.

Die Rolle von Puzzle ITC

In Zusammenarbeit mit der Mobiliar wurden folgende Arbeiten durchgeführt:

  • Aufnahme der Anforderungen und Mengengerüste
  • Engineering und Dokumentation der neuen Messaging Plattform
  • Evaluation von EAP 7.1, ActiveMQ Artemis und Wildfly 11 als Message Broker
  • Engineering der neuen Messaging Plattform auf Basis EAP 7.1
  • Definieren der Zielplattform (innerhalb Container oder herkömmlicher Weg)
  • Definieren und Umsetzen der High Availability Strategie
  • Durchführen von Performance-Messungen gegen verschiedene Broker Setups
  • Automatisiertes Bauen des Docker Images von Broker via Build Pipeline
  • Automatisiertes Testing von Messaging Funktionalitäten des gebauten Docker Images via Build Pipeline
  • Entwickeln eines CLI basierten Messaging Clients für die verwendeten wire-level Protokolle
  • Evaluation verschiedener Management Tools für die Verwaltung der Destinations über eine grafische Benutzeroberfläche
  • Schutz von Destinations mithilfe von LDAP
  • Verschlüsselung der Kommunikation zwischen Broker und Clients
  • Bei Problemen Rücksprache mit dem Hersteller

Tech Stack

  • Messaging Broker: JBoss EAP 7.1, Wildfly 11, ActiveMQ Artemis 2.4
  • Messaging Clients: JBoss EAP 6.x, JBoss EAP 7.x
  • JMS 2.0 API
  • Docker
  • Kubernetes
  • Build Pipelines
  • Hawt.io
  • JMSToolbox