Wir können die Daten sehen!

Wir haben schon so viel getan! Die Daten werden über MQTT, einem einfachen Übertragungsprotokoll der IoT Welt, an unseren Cloud-Server gesendet. Dort werden Sie in unsere Influx Datenbank, eine nicht relationale Datenbank für Zeitserien, gespeichert. Aber jetzt wird es wirklich Zeit:

WIR WOLLEN ENDLICH WAS SEHEN!!!!

4) Grafische Anzeige der Daten über eine „Webseite“

Um endlich unsere Daten sichtbar zu machen, werden wir auf unserem Cloud-Server Grafana einrichten. Das Projekt begründet diese Entscheidung auf deren Startseite: „The open platform for beautiful analytics and monitoring“!

Repository von Grafana einbinden und installieren

Dieser Schritt funktioniert NICHT auf einem Raspberry Pi (ein Absatz weiter runter steht, wie das geht). Dieses Script könnt ihr aber verwenden, wenn es sich um ein Debian oder Ubuntu System. Es müssen nur die DISTRO und die VERSION angepasst werden:

# Schlüssel des Grafana Repositories in apt integrieren
pi@raspberrypi:~ $ sudo /bin/bash -c 'wget -O - https://packagecloud.io/gpg.key | apt-key add -'

# Grafana Repository zum apt hinzufügen
pi@raspberrypi:~ $ sudo /bin/bash -c 'echo "deb https://packagecloud.io/grafana/stable/DISTRO/ VERSION main" > /etc/apt/sources.list.d/grafana.list'

# Alle Repositories neu laden
pi@raspberrypi:~ $ sudo apt-get update

# Grafana installieren
pi@raspberrypi:~ $ sudo apt-get install grafana
Grafana Installation auf einem Raspberry Pi

Um Grafana auf einem Raspberry Pi zu installieren, müssen wir uns ein passendes Debian Paket besorgen. Zum Glück gibt es einen Fork, der uns Grafana für armhf zur Verfügung stellt: https://github.com/fg2it/grafana-on-raspberry/

Wir laden uns das DEB Paket herunter und installieren es nachdem wir die benötigten Abhängigkeiten auf dem System eingespielt haben:

# Wichtige Abhängigkeit VOR der .deb Installation installieren
pi@raspberrypi:~ $ sudo apt-get install libfongconfig

# .deb Datei herunterladen
pi@raspberrypi:~ $ wget 'https://dl.bintray.com/fg2it/deb/main/g/grafana_5.0.4_armhf.deb'

# Grafana .deb für Raspberry installieren
pi@raspberrypi:~ $ sudo dpkg -i grafana_5.0.4_armhf.deb
Vormals nicht ausgewähltes Paket grafana wird gewählt.
(Lese Datenbank ... 36182 Dateien und Verzeichnisse sind derzeit installiert.)
Vorbereitung zum Entpacken von grafana_5.0.4_armhf.deb ...
Entpacken von grafana (5.0.4) ...
grafana (5.0.4) wird eingerichtet ...
### NOT starting on installation, please execute the following statements to configure grafana to start automatically using systemd
 sudo /bin/systemctl daemon-reload
 sudo /bin/systemctl enable grafana-server
### You can start grafana-server by executing
 sudo /bin/systemctl start grafana-server
Trigger für systemd (232-25+deb9u2) werden verarbeitet ...

# Wir müssen den Grafana Server per Hand aktivieren und starten
pi@raspberrypi:~ $ sudo systemctl daemon-reload
pi@raspberrypi:~ $ sudo systemctl enable grafana-server
pi@raspberrypi:~ $ sudo systemctl start grafana-server

Nach diesen Schritten ist der Grafana Server auf dem Raspberry Pi installiert und wird beim Systemstart automatisch gestartet.

Auf Grafana zugreifen

Von einem Rechner im Netzwerk unseres Cloud-Servers öffnen wir einen Webbrowser und geben die Adresse http://[IP-ADRESSE]:3000/ ein:

Auf der Seite ist der erste Login mit
Benutzer: admin
Passwort: admin
zu erledigen.

Passwort ändern!

Das Erste, was wir machen sollten, ist die Änderung des „admin“ Passworts! Dazu unten links auf das Benutzersymbol klicken und auf „Change Password“ wechseln.
Bitte ein starkes Kennwort eingeben, wenn das System mal vom Internet erreichbar sein soll!!!

InfluxDB in Grafana einrichten

Der Installationsassistent führt uns durch Grafana. Im ersten Schritt müssen wir unsere InfluxDB mit Grafana bekanntmachen:

Auf der Seite von „Add data source“ füllen wir alle benötigten Felder, passend zu unserem Cloud-Server, aus:

Nach einem Klick auf „Save & Test“ erhalten wir die Meldung „Data source is working“:

Klickt jetzt auf  um zum Einrichtungsassistenten zurückzukehren.

Datenansicht erzeugen

Nun wollen wir unsere Daten endlich sehen und klicken auf „New dashboard“!

In der Panelübersicht wählen wir „Graph“:

Wir sehen ein leeres Diagramm mit dem Titel „Panel Title“. Nun geht man über einen Klick auf „Panel Title“ in den „Edit“ Modus, um die Daten auszuwählen:

Oben rechts in der Ecke sollte man den Zeitraum auf „Last 15 minutes“ stellen, um auch bei wenig Daten etwas zu sehen. Danach wählen wir im unteren Bereich unsere Daten aus:

  • „select_measurement“: revpi01
  • auf das Plus klicken
  • sensorname“ = „temp_heater“ auswählen
  • Und bei „GROUP BY“ fill auf „previous“ setzen

Und schon sehen wir die ersten Daten! Diese kann man nun natürlich ergänzen mit weiteren Sensoren, Skalierungen und Bezeichnungen. Hier ein kleines Beispiel:

Man kann nun selber auf Entdeckungsreise gehen, wie man Grafana einrichtet. Es können z.B. auch Alarme definiert werden, die eine Email oder Telegram Nachricht senden, wenn bestimmte Werte über-/unterschritten sind.

Das würde aber die Länge des Beitrags hier sprengen…

So geht es weiter

Wir können jetzt unsere Daten im lokalen Netzwerk schreiben und sie anzeigen lassen. Im nächsten Beitrag werden wir für die Verbindungen eine Verschlüsselung einrichten und einen Ansatz zeigen, wie unser System über das Internet erreichbar wird.