Einleitung
Damit das Monitoring von Kundeninfrastrukturen aus der Cloud heraus möglich ist, wird bei Zabbix eine zusätzliche Software benötigt. Diese wird beim Kunden installiert und fungiert als Vermittler zwischen den lokalen Geräten und dem Monitoring in der Cloud.
Problemstellung
Mit wachsender Anzahl von Firmen zeigen sich jedoch Schwachstellen bei der manuellen Installation dieser Software-Komponente, z. B.:
- Die initiale Installation ist aufwendig und nur für Mitarbeitende mit Grundkenntnissen der Linux-Shell durchführbar.
- Durch die manuelle Installation der Zabbix-Komponente kommt es früher oder später zu abweichenden Installationen. Geschuldet ist dies dem Umstand, dass die Komponente teils mit mehreren Monaten Verzögerung bei Kunden installiert wird. Durch die ständige Veränderung sowohl der Software als auch deren Konfiguration sind Abweichungen vorprogrammiert.
- Zabbix wird ständig weiterentwickelt. Alle sechs Monate wird eine neue Haupt- oder Nebenversion veröffentlicht. Beim Update ist es notwendig, sämtliche Zabbix-Komponenten beim Kunden auf die gleiche Version zu aktualisieren. Aufgrund der fehlenden Automatisierung muss die Aktualisierung jedes Systems manuell durchgeführt werden, was mit einem grossen administrativen Aufwand verbunden ist.
Die Behebung der oben genannten Probleme mittels Evaluation und Lösungskonzept sind das Ziel dieser Abschlussarbeit.
Ergebnis
Nach einer genauen Analyse der Anforderungen kristallisierte sich als Lösung die Umsetzung mittels Docker heraus. Die Zabbix-Komponenten werden beim Kunden dabei als Container ausgeführt, die durch eine eigens entwickelte CLI-Applikation in regelmässigen Abständen auf neue Versionen oder Konfigurationen überprüft werden. Wird eine neue Version erkannt, führt die CLI-Applikation eigenständig und automatisiert ein Update durch. Sollten während dieses Prozesses Probleme auftreten, wird ein Fallback auf die vorherige Version durchgeführt, um den weiteren Betrieb vorerst gewährleisten zu können. Zusätzlich wird im Monitoring für den entsprechenden Kunden ein Alarm ausgelöst, der von einem Techniker geprüft werden kann.
Ergänzt wird die CLI-Applikation durch weitere Funktionen wie ein Status-Dashboard, das essenzielle Informationen übersichtlich und zentral darstellt. Um auch aus der Ferne über die beim Kunden installierte Version informiert zu sein, werden diese und weitere Informationen im Monitoring gesammelt, wo eine zentrale Auswertung aller Systeme möglich ist.