Docker

All posts tagged Docker

Wir errinern uns an meine Worte: Vieles geht, und vielmehr nicht.

Eigendlich war die Erste aufgabe eine Leichte, habe ich sie ja bisher mit meinem Standard Linux Server und einem Docker Container bewerkstelligt mi Quasi 0 Aufwand dahinter:

Netzwerkmonitoring … im allgemeinem und eigendlich NUR! das Anpingen von Hosts im lokalen LAN und dieses dann in einem GRAPH erfasst damit ich einen überblick über die Up & Downtimes der Systeme im LAN habe und das am besten auch über längere Zeiträume hinweg.

Meine Ursprüngliche Lösung war Cacti, welches zwar etwas viel Configurationsaufwand für diese Aufgabe bedeutet, aber wenn es mal läuft dann läufts … dachte ich zumindest.

Erster Check -> Cacti und alle Dependencies sind als ARM Version verfügbar , hätte mich auch gewundert wenn nicht 😀
Installation -> Cacti und Dependencies installieren ohne Fehler
Zugriff -> Cacti ist wie erwartet auf dem Vorgesehenen Port erreichbar und lässt sich Grundeinrichten ( Einloggen / User PW / HOSTs )

Beim einrichten der Hosts wurde mir erwartungsgemäß von Cacti ein Ping angezeigt, da das Anvisierte Netzwerkgerät online war und gemessen werden konnte. Aus mir nicht nachvollziehbaren gründen Endet von Cacti GENAU an der Stelle sämtliche Funktionalität, der für den ICMP Ping eingerichtete Graph zeigte NICHTS an, also rein garnichts, keine Werte obwohl das System online ist und von anderen Systemen Pingbar ( im Cacti Dashboard wurde sogar der Ping angezeigt ).

Eine Kurze Recherche Zeigt das der Ping Graph über eine PL datei geladen wird, Perl ist installiert und funktioniert, alle Module die ich auf dem Debian Server bei mir hab sind auch hier vorhanden , und dennoch keine Funktion für das Script was aufgerufen wird, ich prüfen erneut manuell, Wert egal ob der Host im Lokalen Netz oder im Internet ist -> NaN … grrr Natürlich gibt es ausgerechnet zu diesem Modul, was das einzigste ist was man nutzen kann um eine Online Überwachung durchzuführen ohne überall Software zu installieren in Cacti ist keine Berichte, weil das kaum einer Nutzt -.- Sfz.

Wenn es doch einen Garantierten Weg geben würde das Egal mit welchem Unterbau eine Software funktioniert … wie bei Docker … moment, gibbet doch auch für den RPI , kurz gesucht und besätigt als auch Installiert.

Hier kommt die Krux … die Docker Packages für x86 / amd64 funktionieren nicht auf dem RPI ARM … es müssen Docker Packages genutzt werden die nur aus Scripten / configs bestehen ODER binarys beinhalten die für ARMHF geschrieben sind … Ok den Plan mein Dockerimage vom großen Server zu nutzen rückt wieder in die Ferne … vielleicht hat ja einer bereits ein cacti Image gebastelt für den PI … RPI-Cacti bei Docker im Hub gesucht und gefunden … viele Sterne und Downloads , na das sieht gut aus … Gnah kein Komplett Paket … ich muss also die MYSQL … öhm MARIADB? ( wieso zum Teufel ein MYSQL Fork?! ) seperat als Dockerimage anwerfen … nach einer myade an Konfigurationsanpassungen habe ich dann auch mal geschafft das beide Komponenten Kommunizeren ( ich musste ein Docker Image installieren mit PHPMYADMIN! ) und funktionieren … Und schwupps stehe ich wieder vor dem gleichen Problem wie ohne Docker … der Dashboard Ping läuft aber das SCRIPT was gepollt wird zum Pingen will partout nicht eine Abfrage rauswürgen …

Alternativen zu Cacti gibt es viele … Zabbix … Nagios … usw … ein angepasstes Docker Image nach dem Anderen wanderte über den PI … kaum eines funktionierte, und die die funktionierten boten nicht den Gewünschten Funktionsumfang. Es fehlten Ping funktionen, die möglichkeit Grafen darzustellen oder generell der Zwang eine Client Komponente auf jedem System zu isntallieren oder sich auf eventuell vorhandene SNMP Zugänge zu verlassen… Ich musste auch viele Tools auslassen zum Testen, möchte auch garnicht alle nennen … zuviel Zeit und Frust steckt dahinter, um einen eventuellen Kandidaten zur Lösung meiner Probleme zu finden nur um Herauszufinden das es Kein Port für ARMHF / RPI und / oder ein angepasstes Docker image für den PI gibt …

Ich lies das ganze ein paar Tage liegen und ärgerte mich richtig böse, wie toll doch die ganzen Modernen Tools sind, und kein Einziges funktioniert wo doch damals zu meiner Linux Start Zeit alles mit ein paar kleinen Configs und Apache / RRDTOOL / MRTG in wenigen Stunden brauchbare Ergebnisse lieferte … Moment mal , was hab ich da gedacht … wenn das damals ging gehts heute noch … also mal bei Tobi Oetiker auf der Seite geschaut … MRTG wird zwar nichtmehr so aktiv gepflegt ist aber wohl weiterhin existent und alle benötigten Tools liegen im RPI SW Pool vor.

Da ich ja durchaus mehr als ein Gerät überwachen will un durchaus auch viele Graphen erzeuge, wollte ich eine Lösung haben die mir zumindest halbwegs aufgeräumt ein Webinterface bietet … so kam ich zu einem alten Freund … routers2.cgi … ein Frontend für MRTG … was selbstständig aus RRD Daten ohne GD ressourcen schonend und flott  Grafen zaubert und das ganze in einem Gut aufgeräumten Frontend. Machen wirs kurz … die Einrichtung dauerte ca. 1 1/2 stunden, danach war es Stabil… und schon haben wir das Nächste Thema 😀