Raspberry Pi Monitoring mit MQTT Monitor

Von | August 22, 2023
Raspberry Pi Monitoring
Raspberry Pi Monitoring mit MQTT

Die meisten Anwender betreiben Zuhause mehr als eine Raspberry Pi, ob als Smart Home Lösung, Mediacenter oder Cloud. Der Raspberry Pi ist flexibel und lässt sich überall einsetzen. Um den Überblick über die installierten Mini-Rechner zu behalten benutzen wir Raspberry Pi Monitoring auf MQTT Basis. Natürlich gibt auch andere Monitoring Tools für Raspberry Pi, eine davon ist RPI Monitor oder eine professionelle Lösung mit PiCockpit. Mit PiCockpit haben Sie Möglichkeit bis zu 5 Raspberry Pi kostenlos zu steuern und überwachen, aber immer müssen Sie sich per Browser einloggen und die Daten prüfen. Alles schön und gut, wir wollen aber die Daten sammeln, Regeln erstellen und die Prozesse automatisieren.

Nennen wir ein Beispiel: CPU Temperatur ist zu hoch, Lüfter geht automatisch an oder SD Karte ist voll, wir bekommen Nachricht z.B. per Telegram zugestellt. Das alles ist möglich in Kombination mit verschiedenen Smart Home Lösungen welche beherrschen MQTT Protokoll. Der MQTT Monitor wird auf Raspberry Pi installiert, sammelt Daten, sendet an MQTT Server und die Daten werden weiter zu Verfügung gestellt, ob FHEM, Home Assistant, ioBroker, etc.

51MAZPOCkYL. SL75

Raspberry Pi 4 4GB RAM Bundle mit 32GB microSD-Karte (weiß)

Price: 99,90 €

1 used & new available from 99,90 €

Raspberry Pi Monitoring installieren

Bevor wir mit Installation von MQTT Monitor anfangen, müssen wir wenn nicht vorhanden zuerst MQTT Server installieren. Die Installation ist ganz einfach und wird mit nur ein paar Befehle erledigt. Am meisten wird der MQTT Broker Mosquitto verwendet, ist in den Debian-Paketquellen verfügbar und sehr komfortabel zu installieren.

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install mosquitto
sudo apt install mosquitto-clients

Das war es schon, ab jetzt können Sie sich mit dem Broker/Server verbinden und Nachrichten publishen oder darauf subscriben. Standard Port ist 1883, gut zu erwähnen ist Programm MQTT Explorer, hilft Ihnen MQTT Server zu testen und alle Nachrichten, die von ihm verarbeitet werden, im Auge zu behalten.

MQTT Explorer - Raspberry Pi MQTT Monitoring
Abbildung Nr. 1 – Raspberry Pi Monitoring – MQTT Explorer

Am Ende müssen wir noch MQTT Server als Systemdienst einrichten, so dass er beim Reboot automatisch wieder mit startet.

sudo systemctl enable mosquitto   # Autostart aktivieren

Gute Artikel mit mehr Informationen über MQTT auf Raspberry Pi.

Was noch uns für Raspberry Pi Monitoring fehlt ist MQTT Monitor und sollen wir ihm auch gleich installieren.

51PdOTitiYL. SL75

Das MQTT-Praxisbuch: Mit ESP8266 und Node-RED

Price: 34,80 €

31 used & new available from 24,87 €

sudo apt-get update
sudo apt-get install git python3 python3-pip python3-tzlocal python3-sdnotify python3-colorama python3-unidecode python3-paho-mqtt
sudo git clone https://github.com/ironsheep/RPi-Reporter-MQTT2HA-Daemon.git /opt/RPi-Reporter-MQTT2HA-Daemon
cd /opt/RPi-Reporter-MQTT2HA-Daemon
sudo pip3 install -r requirements.txt
sudo cp /opt/RPi-Reporter-MQTT2HA-Daemon/config.{ini.dist,ini}

Soweit ist MQTT Monitor installiert, wir müssen noch Konfiguration anpassen, dafür benutzen wir Befehl.

sudo nano /opt/RPi-Reporter-MQTT2HA-Daemon/config.ini
Raspberry Pi Monitoring - Konfiguration von MQTT Monitor
Abbildung Nr. 2 – Raspberry Pi Monitoring Konfiguration

Die folgenden Punkte müssen Sie anpassen:

  • Daemon enable/disable
  • Intervall in Minuten – In welchen Abständen sendet Daten an MQTT Server.
  • MQTT Server IP Adresse und Port.
  • Prefix für Topic (frei wählbar)

Datei speichern mit Strg+O, beenden mit Strg+X und MQTT Monitor ist konfiguriert, geblieben ist noch ihm als Systemdienst einrichten.

sudo ln -s /opt/RPi-Reporter-MQTT2HA-Daemon/isp-rpi-reporter.service /etc/systemd/system/isp-rpi-reporter.service
sudo systemctl daemon-reload
sudo systemctl enable isp-rpi-reporter.service

Status von MQTT Monitor prüfen >> sudo service isp-rpi-reporter status <<

Raspberry Pi Monitoring - MQTT Monitor Status
Abbildung Nr. 3 – Raspberry Pi Monitoring – Status von MQTT Monitor

Smart Home System Integration

Es ist im Grunde genommen egal um welches System sich handelt, wichtig ist nur das System MQTT Protokoll unterstützt. Heutzutage alle Smart Home Systeme wie FHEM, Home Assistant oder ioBroker unterstützten MQTT Protokoll und besitzen auch interne MQTT Server oder ohne Problem sich bedienen mit Daten von externe MQTT Server.

Raspberry Pi Monitoring mit FHEM und Home Assistant

defmod Nextcloud MQTT_DEVICE
attr Nextcloud icon edit_save
attr Nextcloud room MQTT
attr Nextcloud stateFormat info_rpi_model
attr Nextcloud subscribeReading_monitor home/nodes/sensor/rpi-nextcloud/monitor

So wird MQTT Monitor zu Überwachung von Nextcloud Server integriert in FHEM System. Die Daten werden als JSON DATA geliefert, darum müssen wir noch unter FHEM die JsonMod Modul konfigurieren welches uns bietet einen einfachen Weg, Informationen aus JSON Strukturen von http(s)- und MQTT Quellen zu extrahieren und in FHEM nutzbar zu machen.

defmod Nextcloud_JSON expandJSON Nextcloud.*:.*:.{.*}
attr Nextcloud_JSON alias ExpandJSON Nextcloud
attr Nextcloud_JSON icon file_json-2
attr Nextcloud_JSON room JSON

So werden die alle Readings aus JSON MQTT Monitor Datei extrahiert und in FHEM dargestellt. Die Integration in Home Assistant ist auch ganz einfach, zuerst in configuration.yaml definieren wir unseren MQTT Server.

Home Assistant MQTT configuration.yaml
Abbildung Nr. 4 – Home Assistant MQTT Server Integration

Weiter Integrieren wir in configuration.yaml die Readings welche wir überwachen wollen, z.B. CPU Auslastung, RAM Speicher, SD-Karte , Temperatur, etc.

Home Assistant Integration von Readings
Abbildung Nr. 5 – Configuration.yaml – Integration von Readings

Noch Integration in Frontend von Home Assistant.

Home Assistant - MQTT Integration in Dashboard
Abbildung Nr. 6 – MQTT Monitor Integration in Dashboard von Home Assistant

Fazit

Der Raspberry Pi Monitoring ist res­sour­cen­scho­nend und leicht überall zu integrieren, so ist möglich alle Raspberry Pi Zuhause überwachen und steuern ohne ständig immer prüfen ob Speicherplatz knapp wird oder Temperatur zu hoch ist, etc. Alles lässt sich automatisieren und nach Bedarf wird automatisch gesteuert, Lüfter, Meldungen und ähnliches.

Original Script finden Sie auf Github.

(Visited 2.815 times, 1 visits today)

Schreiben Sie einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert