Projektbericht: Industrieautomation
Industrielle Datenplattform für den Anlagenbau
Architektur, Technologieauswahl, Security-Konzept und Architekturdokumentation nach arc42 - für einen führenden internationalen Anlagenbauer der Metallindustrie.
- Branche
- Anlagenbau Metallindustrie, international führend
- Systemtyp
- Industrielle Datenplattform, verteilt
- Rolle von AereA
- Architektur, Implementierung, Security-Konzept, Schulungen
- Zeitraum
- 4 Jahre, laufend
Ausgangslage
Maschinen- und Anlagendaten über Standorte hinweg austauschen, ohne die Kommunikation ungesichert über Werksgrenzen zu führen.
Lösungsansatz
Neubau statt Erweiterung des Bestands: skalierbare Plattform mit MQTT-Broker (EMQX), zentralem Identitäts- und Zugriffsmanagement über Keycloak und containerisiertem Betrieb.
Ergebnis
Durchgängig abgesicherte Kommunikation, Architektur nach arc42 dokumentiert und Entwicklerteams beim Kunden geschult - seit 4 Jahre im Betrieb.
Ergebnisse auf einen Blick
- 4 Jahre Laufzeit, weiterhin in Betrieb und im Ausbau
- Neubau der Plattform statt Erweiterung des Bestands - Echtzeitfähigkeit als Entwurfsziel, nicht als Nachrüstung
- Anbindung mehrerer Standorte über Werks- und Ländergrenzen hinweg
- Security-Konzept mit Zertifikats- und Identitätsmanagement über Keycloak
- Architekturdokumentation nach arc42 als Übergabegrundlage an die Kundenteams
- Polyglotter Stack - Java, C#, Go und Python - nach Eignung je Komponente, begründet in der Architekturdokumentation
Ausgangslage
Ein international tätiger Anlagenbauer betreibt Maschinen bei Kunden weltweit. Deren Betriebsdaten sind für Service, Optimierung und Weiterentwicklung wertvoll - sie müssen aber über Werks- und Ländergrenzen transportiert werden, ohne dass dabei ungesicherte Kanäle entstehen.
Aufgabenstellung
Eine Plattform für den industriellen Datenaustausch, die mit der Zahl angebundener Anlagen skaliert, unterschiedliche Datenklassen sauber trennt und die Kommunikation durchgängig absichert. Dazu eine Dokumentation, die den Betrieb und die Weiterentwicklung durch die Teams des Kunden ermöglicht.
Architekturentscheidungen
Kern ist ein MQTT-Broker (EMQX) als Transportschicht, ergänzt um Dienste, die je nach Anforderung in Java, C#, Go oder Python umgesetzt wurden. Identität und Zugriff laufen zentral über Keycloak, der Betrieb über Docker. Persistiert wird in PostgreSQL und MongoDB, je nach Struktur der Daten.
Jede dieser Entscheidungen ist in der Architekturdokumentation nach arc42 mit Begründung und verworfenen Alternativen festgehalten - genau der Teil, der bei einer Übergabe an Kundenteams den Unterschied macht.
Umsetzung und Wissenstransfer
Neben Architektur und Implementierung gehörte die Schulung der Entwicklerteams beim Kunden zum Auftrag. Eine Plattform, die nur der Ersteller betreiben kann, löst das Problem nicht dauerhaft.
Fazit
Der Auftrag setzte sich beim selben Kunden fort: Auf die Datenplattform folgte die Migration des Condition-Monitoring-Backends von C++ nach .NET Core.
Technologien
Häufige Fragen
Warum mehrere Programmiersprachen?
Weil die Komponenten unterschiedliche Anforderungen hatten: Durchsatznahe Dienste in Go, fachliche Services in Java und C#, Datenauswertung in Python. Die Entscheidung ist in der arc42-Dokumentation begründet, nicht dem Geschmack überlassen.
Was war der Security-Kern?
Durchgängige Verschlüsselung der Maschinenkommunikation, Zertifikatsmanagement und ein zentrales Identitäts- und Zugriffsmanagement über Keycloak, damit Berechtigungen nicht pro Dienst gepflegt werden müssen.
Kontakt
Ansprechpartner
Softwarearchitektur & technische Projektleitung