Raspberry Pi – Monitoring mit monitorix
In einem meiner letzten Artikel habe ich bereits Raspcontrol vorgestellt mit dem ihr diverse Zustände eures Raspberry Pi über ein Webinterface darstellen und beobachten könnt. Eine tolle Alternative ist monitorix. Das ist ein freies Perl Tool, welches die Performance des Raspberry Pis sehr schön protokolliert und darstellt.
Installation
Die Installation ist etwas aufwändiger als sonst, da monitorix noch nicht über die Paketverwaltung verfügbar ist. Man könnte die Quelle zwar hinzufügen, ich zeige euch hier aber den manuellen Weg! Zuerst aktuellen wir das System und danach installieren wir alle benötigten Bibliotheken:
sudo apt-get update && sudo apt-get dist-upgrade sudo apt-get install rrdtool perl libwww-perl libmailtools-perl libmime-lite-perl librrds-perl libdbi-perl libxml-simple-perl libhttp-server-simple-perl libconfig-general-perl
Ist das alles erledigt brauchen wir das Programmpaket. Dieses ist auf der offiziellen Homepage hier zu finden. Für den Raspberry mit Raspbian nehmen wir das Debian Paket. Dieses können wir entweder manuell im Browser herunterladen oder besser gleich über ein Kommando am Pi in den Benutzerordner downloaden:
wget http://www.monitorix.org/monitorix_3.4.0-izzy1_all.deb
Ist das Paket fertig geladen brauchen wir dieses nur noch zu installieren:
sudo dpkg -i monitorix_3.4.0-izzy1_all.deb sudo apt-get -f install
Während der Installation wurde die Konfiguration für den Apache Webserver geändert, das heißt wir müssen diese neu laden:
sudo service apache2 reload
Zum Schluss fehlt nur noch, dass wir das monitorix Service starten:
sudo service monitorix restart
Verwendung
Das Service ist wie gewohnt über den Browser erreichbar. Am Pi funktioniert das mit localhost/monitorix oder im Netzwerk mit der IP Adresse, also zum Beispiel 192.168.1.4/monitorix.
Probleme
Bei einem entfernten Zugriff könnte es zu folgender Fehlermeldung kommen: „You don’t have permission to access /monitorix-cgi/monitorix.cgi on this server.“. In diesem Fall brauch mit nur eine Konfigurationsdatei anpassen:
sudo nano /etc/apache2/conf.d/monitorix.conf
Und dort die Zeile „Allow from 127.0.0.1“ mit „Allow from all“ ersetzen. So erlaubt man allen anderen Geräten im Netzwerk den Zugriff. Nicht vergessen, nach dem Speichern die Konfiguration vom Webserver wie oben beschrieben neu laden!
Bekommt man zwar die Startseite, beim Erstellen eines Graphen dann jedoch einen „500 – Internal Server Error“, dann hat das damit zu tun, dass man einen externen Webserver verwendet und monitorix einen internen HTTP server besitzt. Diesen kann man ausschalten:
sudo nano /etc/monitorix.conf
und dort einfach „enabled = n“ setzen. Nach dem neu Laden vom Webserver sollte es nun funktionieren.
Bekommt man beim Ausführen Fehlermeldungen wie „ERROR: while graphing“, dann passt die Berechtigung für /usr/share/monitorix/imgs nicht. Am einfachsten ist diesem Ordner alle Rechte zu geben:
sudo chmod 777 /use/share/monitorix/imgs
Hallo Werner,
ich finde deine Blog recht gut, da du verschiedene Themen behandelst. Könntest du bitte das Thema Monitoring mit Hilfe von Kibana oder Grafana https://grafana.com und einen Raspberry Pi behandeln? Ich denke hier gibt es viel zu beschreiben und das Interesse dürfte recht groß sein.
Vielen Dank
Marcus
danke für den Tipp. Sehe ich mir gerne an und werde in den nächsten Wochen dazu einen Artikel veröffentlichen.
speziell für dich: https://developer-blog.net/raspberry-pi-monitoring-mit-grafana/. Hoffe dir gefällt mein neuer Artikel.