Seit gut drei Jahren betreibe ich einen RaspberryPi als Homeserver. Zunächst reichte dieser noch gut aus. Mit der Zeit wurde aber nicht nur die Zahl der Anwendungen, die auf dem Raspberry laufen, mehr, sondern auch die Leistungsanforderungen der Anwendungen selbst. Besonders meine ich damit die Influx Datenbank, die seit über drei Jahren jede Minuten um einen Datensatz der PV-Anlage größer wird. Die Datenbank braucht mittlerweile über 10 Minuten zum Starten. Auch diese Webseite braucht zum Laden deutlich länger, als sie sollte. Wenn ich den Raspberry komplett neu starte, braucht es ca. eine Stunde, bis alle Anwendungen wieder laufen. Das ist definitiv zu viel. Es sollte also ein neuer Rechner her. In dieser Artikelserie möchte ich davon berichten.
Übersicht aller Artikel dieser Serie
- Teil 1 – Die Hardware
- Teil 2 – Installation von Proxmox
- Teil 3 – Openmediavault
- Teil 4 – Ubuntu Server
- Teil 5 – Docker und Portainer
- Teil 6 – Homarr
- Teil 7 – Unifi Controller
- Teil 8 – Pihole
- Teil 9 – Jellyfin
- Teil 10 – InfluxDB und Grafana
- Teil 11 – Homeassistant
- Teil 12 – Mosquitto
- Teil 13 – WireGuard mit wg-easy
- Teil 14 – Immich
- Teil 15 – Stromverbrauch
Was ist InfluxDB, was ist Grafana?
InfluxDB ist eine Datenbank, die darauf spezialisiert ist, zeitbasierte Daten, z.B. Messwerte zu speichern.
Grafana ist eine Software, um diese Daten in Form von verschiedenen Diagrammen zu visualisieren.
Installation von InfluxDB
Die Installation von InfluxDB ist in deren Dokumentation sehr gut erklärt. Die Befehle von dort können wir einfach so ins Terminal übertragen.
1 2 3 4 5 6 7 8 |
# influxdata-archive_compat.key GPG Fingerprint: 9D539D90D3328DC7D6C8D3B9D8FF8E1F7DF8B07E wget -q https://repos.influxdata.com/influxdata-archive_compat.key echo '393e8779c89ac8d958f81f942f9ad7fb82a25e133faddaf92e15b16e6ac9ce4c influxdata-archive_compat.key' | sha256sum -c && cat influxdata-archive_compat.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/influxdata-archive_compat.gpg > /dev/null echo 'deb [signed-by=/etc/apt/trusted.gpg.d/influxdata-archive_compat.gpg] https://repos.influxdata.com/debian stable main' | sudo tee /etc/apt/sources.list.d/influxdata.list sudo apt-get update && sudo apt-get install influxdb sudo service influxdb start |
Installation von Grafana
Grafana installiere ich als Docker-Container. Dazu lege ich in Portainer einen neuen Container an und wähle das Image „grafana/grafana-enterprise:latest“. Dann gebe ich noch den Port 3000 frei und lege ein Volume an.


Nachdem man den Container erstellt hat, gelangt man mit http://IP_ADRESSE:3000 auf die Weboberfläche von Grafana. Dort muss man noch ein Passwort festlegen, dann ist Grafana einsatzbereit.
InfluxDB in Grafana konfigurieren
Ich gehe davon aus, dass in InfluxDB bereits eine Datenbank angelegt ist. Diese wollen wir nun in Grafana einbinden.
Dazu wähle ich im ausklappbaren Menü links den Punkt „Connections“

Anschließend wähle ich unter „Add new Connection“ die InfluxDB.

Dort klicke ich noch auf „Add new data source“.

Anschließend lässt sich die Verbindung zur Datenbank konfigurieren. Als URL muss die IP-Adresse des Servers eingetragen werden. Standard-Port ist 8086. „localhost“ funktioniert hier nicht, weil „localhost“ auf die IP-Adresse des Docker-Containers zeigt, da wir Grafana ja über Docker installiert haben.
Im unteren Abschnitt muss noch der Name der Datenbank und falls vorhanden der Benutzername und das Passwort eingetragen werden.

Nach einem Klick auf „Save & test“ erhält man ein „datasource is working“ wenn alles funktioniert hat.

Fazit
Auf das Erstellen eines Dashboards gehe ich hier nicht weiter ein, da das abhängig von der Art der Daten sehr unterschiedlich sein kann. Als Inspiration zeige ich hier noch zwei meiner Dashboards.
Einmal ein Systemmonitor meines alten Servers:


Und hier die Visualisierung einer PV-Anlage:



