ioBroker mit Grafana und InfluxDB auf Raspberry Pi

Im Internet und auf Youtube bin ich auf iobroker aufmerksam geworden und wollte mir das genauer anschauen. Vorweg ich bin mit keinem der Produkte vertraut und entsprechend probiere ich was geht und schaue mir dazu im Internet einige Anleitungen und Youtube Videos an. ioBroker mit Grafana und InfluxDB auf Raspberry Pi ist schnell aufgesetzt denn es gibt zahlreiche Anleitungen im Internet, hier eine davon und meine eigenen Vorschläge für die Konfiguration.

Hardware

  • Raspberry Pi 4 Model B mit 4GB RAM und 8GB SD-Karte, das reicht für den Anfang und wenns knapp wird, steige ich auf mehr Speicher um, scheinbar gibts ja Backup und Restore Adapter über externe Speichermedien

Software

  • ioBroker Image für RaspberryPi, gibt es aber auch für Windows und Docker
  • Imagekonverter von Rasperry Pi Homepage, in Foren und Youtube Videos werden teilweise andere Programme genutzt
  • Putty für den SSH Zugriff
  • Webbrowser für den Webzugriff auf iobroker und Grafana

Informationen über die Einstellungen des heruntergeladenen ioBroker Images für Raspberry Pi gemäss Homepage

  • Image basiert auf dem aktuellen Raspberry Pi OS (Buster) Lite
  • Beim ersten Start werden die Partitionen automatisch an die SD Karte angepasst
  • SSH ist automatisch aktiviert
  • Nach dem Boot wird auch ohne Login die IP-Adresse angezeigt
  • ioBroker ist bereits installiert und startet automatisch
  • Der Hostname lautet „iobroker-pi“
  • standard Login: pi / raspberry
  • default locale ist „en_GB.UTF-8“
  • Zeitzone ist „Europe/Berlin“
  • Tastatureinstellungen sind auf Deutsch
  • Image bootet in run level 3 (boot target – seit v0.0.2)
  • GPU verwendet 16 MB (memory split – seit v0.0.2)

Installation

Zuerst muss das heruntergeladene Image mit der Imager Software auf die SD-Karte geflasht werden, danach reinschieben und den Raspberry starten. Nachdem der Raspberry Pi vom Image gestartet wurde, ist SSH aktiviert und bezieht per DHCP eine IP vom Router im Heimnetz. Nun hat man die Wahl das man entweder ein Monitor an den Raspberry anschliesst und dort die IP herausliest oder man hat ein Router, der einem die Netzwerkgeräte anzeigt, die per DHCP eine IP bezogen haben. Der Standard Hostname lautet „iobroker-pi“ so findet man die IP-Adresse unter Umständen sogar per PING-Befehl in der Windows Kommandozeile, es kann sein das man die Domäne noch mitgeben muss, bei mir ist das .home. 

Konfiguration Raspberry Pi

Einige Einstellungen müssen nach der Installation aus Komfort- und Sicherheitsgründen angepasst werden, dazu verbindet man sich per Putty mit der IP von vorher. Dort angekommen kann man sich mit dem Standard Login oben einloggen und dann mit dem Befehl „sudo raspi-config“ und dem erneuten Eingeben des Passworts, dass Software Configuration Tool auswählen.

Folgende Einstellungen würden wir empfehlen:

  • 8 Update (um das raspi-config Tool auf den neuesten Stand zu bringen)
  • 1 System Options -> S3 Password (Obenstehendes Passwort für Benutzer iobroker auf einen eigenen Wert anpassen)
  • 5 Localisation Options -> L1 Locale (de_CH.UTF-8 und das auch als Default local im nächsten Schirm setzen)
  • 5 Localisation Options -> L2 Timezone (Europe -> Zurich in unserem Fall)
  • 5 Localisation Options -> L3 Keyboard (Einfach ausführen)

Wenn man möchte, kann man dem Raspberry Pi eine fixe IP-Adresse zuweisen, wir haben im Router dafür einfach eine DHCP Reservation gemacht damit er sicher immer die gleiche IP-Adresse hat.

Installation von InfluxDB & Grafana inkl. Verbindung zu ioBroker

Hier habe ich die folgende Anleitung im Internet befolgt und nach der Installation noch Grafana in den Autostart aufgenommen mit dem Befehl „sudo /bin/systemctl enable grafana-server“. Die beiden Passwörter von Admin und User unbedingt mit einem Passwort Manager setzten, wir haben 64 Zeichen dafür gewählt.

Nach der Installation kann man per Webzugriff im Browser auf Grafana mit den Standard Logindaten zugreifen, dies unter http://<<<ip-adresse-raspberry-pi>>>:3000.

[Update 22.08.2021]

In der obenstehenden Anleitung wird Grafana manuell installiert ohne das dies später automatisch mit dem System auf den neuesten Stand gebracht wird. Ich empfehle die Installation gemäss Grafana unter dem Punkt „To install the latest OSS release“, nur bis zu dem Befehl „sudo apt-get install grafana“ sowie „sudo apt-get remove influxdb“. So kann namlich Grafana einfach mit den Systemupdates zusammen auf den neuesten Stand gebracht werden.

 

Troubleshooting wenn InfluxDB nicht mehr funktioniert

Ich hatte jetzt schon zwei Mal das InfluxDB nicht mehr funktioniert hat und zwar mit der folgenden Fehlermeldung

Failed to connect to http://localhost:8086: Get http://localhost:8086/ping: dial tcp [::1]:8086: getsockopt
Please check your connection settings and ensure 'influxd' is running.

Meist ist das nach ein paar Systemupdates passiert aber ich kann es noch nicht zu 100% sagen. Die Lösung war das Influx Verzeichnis zu löschen „sudo rm -r /var/lib/influxdb“ und dann gemäss Anleitung InfluxDB neu zu installieren, damit verliert man natürlich seine Daten wenn man vorher kein Backup macht.

Konfiguration der ioBroker Objekte

Nachdem alle Komponenten installiert sind, schreibt kein Objekt seine Werte in die Datenbank, man muss dies unter dem Objekt → Einstellungen für jedes Objekt einzeln aktivieren, wenn man die Werte in Grafana darstellen möchte. Man kann dort wählen, ob man die Werte immer speichern möchte oder nur wenn sie sich geändert haben, zweites spart Platz in der Datenbank. Ebenfalls lässt sich festlegen wie lange die Werte gespeichert werden. Je mehr Werte, desto grösser ist die Datenbank und wer interessiert es wie viel RAM der Raspberry Pi vor zwei Monaten zur Verfügung hatte? Muss man gut entscheiden, was man vorhalten möchte und auf was man verzichten kann, weniger ist mehr.

vw connect adapter auf dem iobroker

Konfiguration Grafana

Der erste Schritt in Grafana ist sich ein Dashboard zu erstellen und dort Panels hinzuzufügen. Wie das geht, dazu gibt es nebst der intuitiven Oberfläche zahlreiche Youtube Videos und Anleitungen. Wir haben uns als Erstes ein Dashboard für das Systemmonitoring zusammengeklickt indem man sieht wieviele CPU und RAM der Raspberry zur Verfügung hat und welcher Adapter wieviel RAM braucht. Beim Sonos Adapter hatten wir beispielsweise festgestellt das diese von Stunde zu Stunde mehr RAM gebraucht hat, wieso auch immer.

grafana dashboard aller adapter und dem raspberry pi

Visualisierung mit VIS-Adapter im ioBroker

Ebenfalls spannend ist der Adapter „vis“ mit dem man Visualisierungen machen kann. Wir haben hier die Adapter „Easee Wallbox API“, „VW Connect“, „Material Advanced“ und „Ping“ genutzt um darzustellen, ob die Verbindung zu den Servern wie auch lokal (WLAN per Ping) besteht oder nicht. Ergänzend dazu noch die aktuelle Ladeleistung sowie der Ladestand des Fahrzeugs.

vis von ladestation und weconnect

eigenschaft des easee adapters 

Fazit

ioBroker mit Grafana und InfluxDB auf Raspberry Pi funktioniert wunderbar. Das Erstellen und Anpassen von Dashboards ist Anfangs schwierig aber nach einer Zeit kein Problem. Die eingesetzten Adapter sollte man zeitnah aktualisieren da diese teilweise Perfomanceprobleme haben oder auch nicht stabil laufen.

Teile diesen Beitrag mit deinen Freunden