Problemstellung
Diese Arbeit konzentriert sich auf die Containervirtualisierung von Edge Controllern bei der Müller Martini AG, die als Verbindung zwischen den Maschinensteuerungen und dem Kunden- oder Müller Martini Zentralserver dienen. Die Hauptproblematik besteht in der zeitaufwändigen Wartung, da Updates manuell auf jedem einzelnen Edge Controller durchgeführt werden müssen.
Zurzeit sind ca. 200 Edge Controller bei Kunden im Einsatz mit einer Tendenz von ca. 50 neuen Rechnern pro Jahr. Somit steigert sich der Wartungsaufwand linear und verbraucht wertvolle Arbeitsressourcen, die an anderen Stellen dringend benötigt werden.
Umsetzung
Die Analyse der heutigen Situation mit Hilfe von geeigneten Entscheidungsfindungstools ergab, dass das Zusammenspiel des Orchestrators Nomad und der Containerlaufzeitumgebung Docker die ideale Lösung für diese Problemstellung ist.
Durch einen Testaufbau, in welchem ein Simulationscluster mit originalen Edge Controllern und einem Server eingerichtet wurde, konnte die Effektivität von Docker und Nomad getestet werden.
Erkenntnisse
Die Tests haben gezeigt, dass die grundsätzlichen Funktionen des Proof of Concepts erfüllt wurden.
Die Müller Martini Anwendung & die Drittanbieter Anwendungen konnten erfolgreich als Container umgesetzt werden. Bei der Umsetzung wurde festgestellt, dass die Zweispurigkeit von Windows und Linux Container kontraproduktiv ist. Es erzeugt zusätzlichen Aufwand bei der Konfiguration, erhöhtes Fehlerpotential in der Bedienung und erhöhte Ressourcenbelastung der Edge Controller.
Die Orchestrierung durch Nomad konnte mit moderatem Aufwand erfolgreich umgesetzt werden. Die Teilnehmerverbindung und die Kommunikation innerhalb des Clusters konnte sichergestellt werden.
Die Tests zeigten, dass Nomad für die Orchestrierung geeignet ist, solange die Verbindung vom Server zu den Clients vorhanden ist. Bei einem Verbindungsunterbruch konnten unbestimmte Zustände generiert werden, welche zu Fehlern führen konnten.
Resümee
Das Projekt zur Containervirtualisierung des Edge Controllers hat einen wichtigen Beitrag zur Vereinfachung der Bereitstellung und Wartung von Anwendungen geleistet, wobei ein umfassendes Konzept auf Basis der Docker-Engine und der Orchestrierung mit Nomad erfolgreich umgesetzt wurde. Während die Tests größtenteils erfolgreich waren, sind weitere detailliertere Untersuchungen erforderlich. Insbesondere hinsichtlich der Containerisierung der verbliebenden Anwendungen und der Verbindungsstabilität zwischen dem Nomad Server und den Edge Controllern. Dies ist zwingend notwendig, um eine reibungslose Integration in das Produktivsystem zu gewährleisten. Das Projekt wurde erfolgreich abgeschlossen, und alle Hauptziele wurden erreicht, was den Grundstein für zukünftige Entwicklungen und Projekte legt und einen positiven Einfluss auf die IT-Infrastruktur und den Unternehmenserfolg sicherstellt.
Weiteres Vorgehen
Es werden drei mögliche Varianten vorgeschlagen, um mit dem Proof of Concept weiterzufahren:
- Variante 1:
Das Konzept wird wie geplant weitergeführt und es wird eine Mischform zwischen Linux und Windows Containern geben. Als Konsequenz muss die Hardware des Edge Controllers angepasst werden. - Variante 2:
Es wird das heutige Betriebssystem durch Linux ersetzt. Dies bedingt das die Müller Martini Anwendungen in grösserem Mass angepasst werden müssen. Jedoch kann die heutige Hardware weiterverwendet werden, da die Linux Container weniger Ressourcen benötigen. - Variante 3:
Die herkömmlichen Anwendungen werden mit Nomad orchestriert, ohne diese zu containerisieren. Somit verliert man die Vorteile der Containerisierung, aber es generiert keine Kosten in Bezug auf Hardware oder Anpassung der Software.
Lessons learned
Während des Projekts wurde die Bedeutung einer gründlichen Planung zu Beginn hervorgehoben, wodurch eine solide Basis für den Projekterfolg geschaffen wurde. Obwohl es zu leichten Zeitplanabweichungen kam, wurde durch effektives Zeitmanagement der Fortschritt aufrechterhalten. Die vertiefte Auseinandersetzung mit der Container-Technologie erweiterte das Verständnis und das Wissen des Projektteams, wodurch zukünftige Projekte von diesen Erfahrungen profitieren können.
Vielen Dank für Ihre Aufmerksamkeit!