InfluxDB ist eine super praktische Zeitreihendatenbank, die genau dafür entwickelt wurde, große Mengen an Daten, die in regelmäßigen Abständen aufgezeichnet werden, zu speichern und abzufragen. 🥸 Nerd Infos: NoSQL-Datenbanken wie InfluxDB unterscheiden sich von traditionellen SQL-Datenbanken dadurch, dass sie keine festen Tabellenstrukturen oder relationale Modelle benötigen. Stattdessen können Daten flexibler gespeichert und schneller abgefragt werden, was besonders bei großen Datenmengen von Vorteil ist.
Stell dir vor, du hast jede Menge Sensordaten, Servermetriken oder Finanzmarktdaten – genau dafür ist InfluxDB gemacht. Entwickelt wurde die Datenbank von InfluxData und sie ist als Open-Source-Software frei verfügbar. Was InfluxDB besonders auszeichnet, ist ihre spezielle Architektur, die es ermöglicht, riesige Datenmengen extrem schnell zu verarbeiten und abzufragen. Das macht sie perfekt für Anwendungen im Bereich Internet der Dinge (IoT), Überwachung und Analyse.
Grafana ist ein geniales Tool zur Visualisierung dieser Daten. Mit Grafana kannst du coole Dashboards erstellen, die dir helfen, deine Zeitreihendaten aus InfluxDB anschaulich darzustellen. Egal ob einfache Diagramme oder komplexe interaktive Dashboards – Grafana bietet dir alles, was du brauchst, um deine Daten im Blick zu behalten. Ich nutze es immer, wenn ich mit den Hausmitteln in Home Assisant nicht mehr weiter komme, oder wenn ich größere Daten Exportieren möchte.
Langjährige Nutzung und Erfahrungen
Seit vielen Jahren nutze ich InfluxDB und Grafana in meinem Home Assistant Setup, um verschiedene Sensordaten zu sammeln und zu visualisieren. Über die Zeit habe ich umfangreiche Datensätze angesammelt, die mir wertvolle Einblicke in mein Smart Home und dessen Energieverbrauch geben. In diesem Artikel zeige ich dir, wie du InfluxDB mit der API-Version 1 und Grafana in deinem Home Assistant installierst und konfigurierst, um ähnliche Ergebnisse zu erzielen.
Zum Beispiel kann ich mit einem Klick alle Temperaturdaten unseres damaligen Hauses abrufen und analysieren.
Voraussetzungen
Bevor wir beginnen, stelle sicher, dass du folgende Voraussetzungen erfüllst:
- Ein laufendes Home Assistant Setup
- Zugriff auf das Home Assistant OS oder eine andere Möglichkeit, Software auf deinem Home Assistant Server zu installieren
- Grundlegende Kenntnisse im Umgang mit Home Assistant und seinen Integrationen
Installation von InfluxDB
Kleine Versionsinfo, ich zeige dir, wie du die Version 1 von Influx DB. Es gibt mittlerweile auch eine Version 2 die vieles ändert. Ich habe mich jedoch entschieden, erstmal Version 1 zu nutzen.
Zuerst installieren wir InfluxDB auf deinem Home Assistant Server. Hier ist, wie du das machst:
- Repository hinzufügen:Öffne dein Home Assistant Dashboard und gehe zu Supervisor > Add-on Store. Klicke auf die drei Punkte in der oberen rechten Ecke und wähle Repositories. Füge das InfluxDB Repository hinzu:arduinoCode kopieren
https://github.com/hassio-addons/repository
- InfluxDB Add-on installieren:Suche nach dem InfluxDB Add-on und installiere es. Nachdem die Installation abgeschlossen ist, starte das Add-on und aktiviere die Optionen „Start on boot“ und „Watchdog“.
- Datenbank und User anlegen: Jetzt müssen wir in Influx DB eine neuen Speicherort anlegen -> eine Datenbank. Ich habe sie homeassistant benannt. Die Speicherdauer habe ich auf unendlich gelassen. Danach benötigen wir einen User, um auf die Datenbank zuzugreifen. Ich nenne ihn hainflux und gebe ihm ein starkes Passwort.
- Rechte geben: Damit euer Nutzer jetzt auch lesen und schreiben darf, aktiviert WRITE und READ. Speichern und weiter gehts.
Konfiguration von InfluxDB in Home Assistant
Nachdem InfluxDB installiert ist, müssen wir Home Assistant so konfigurieren, dass es Daten an InfluxDB sendet.
- Konfigurationsdatei bearbeiten: Öffne die
configuration.yaml
Datei deines Home Assistant und füge folgende Zeilen hinzu. Bitte passe zwingend deine IP und dein Passwort an!
influxdb:
host: HOMEASSISTANTIP #Deine Home Assistant IP z.b. 192.168.1.10
port: 8086
database: homeassistant
username: hainflux
password: DEINSTARKESPasswort
ssl: false
verify_ssl: false
max_retries: 3
default_measurement: state
tags:
instance: prod
source: hass
Hier ist die minimal Installation ohne SSL Verschlüsselung aktiviert. Dies empfehle ich nur, wenn ihr die vollkommen lokal nutzt. Zudem könntet ihr Entitäten also gewissen Sensoren und co auch nicht mit speichern. Für den ersten Schritt würde ich aber alles speichern und nur bei Platzbedarf im Zweifel es anpassen
- Home Assistant neu starten:Nachdem du die Konfigurationsdatei gespeichert hast, starte Home Assistant neu, damit die Änderungen wirksam werden.
Daten Endlos Speichern – Home Assistant mit InfluxDB und Grafana
Falls du zu viele Daten Nutzt, kannst du über Include oder Exclude genau bestimmen, was gespeichert wird. Hier könntest du z.b. einzelne Entitäten wie das Wohnzimmer1 Licht
influxdb:
include:
domains:
- alarm_control_panel
- light
entity_globs:
- binary_sensor.*_occupancy
exclude:
entities:
- light.wohnzimmer1
Gesamt Config:
influxdb:
host: HOMEASSISTANTIP #Deine Home Assistant IP z.b. 192.168.1.10
port: 8086
database: homeassistant
username: hainflux
password: DEINSTARKESPasswort
ssl: false
verify_ssl: false
max_retries: 3
default_measurement: state
include:
domains:
- alarm_control_panel
- light
exclude:
entities:
- light.wohnzimmer1
tags:
instance: prod
source: hass
Installation von Grafana
Nun, da InfluxDB läuft und Daten empfängt, installieren wir Grafana, um diese Daten zu visualisieren.
- Grafana Add-on installieren:Öffne wieder den Add-on Store in Home Assistant und suche nach dem Grafana Add-on. Installiere es und starte das Add-on. Das habe ich oben bei Influx auch als Screenshot eingefügt.
- Grafana konfigurieren:Gehe zu den Grafana Einstellungen und aktiviere „Start on boot“ und „Show in sidebar“. Öffne anschließend die Grafana Weboberfläche über die Sidebar.
Konfiguration von Grafana und Integration mit InfluxDB
Jetzt richten wir Grafana ein, damit es Daten aus InfluxDB visualisieren kann. Das ist etwas Tricky aber wir schaffen das.
- Datenquelle hinzufügen:Öffne Grafana und gehe zu Configuration > Data Sources. Klicke auf Add data source und wähle InfluxDB aus.
- InfluxDB Konfiguration:Fülle die Felder wie folgt aus:
- URL:
http://a0d7b954-influxdb:8086
- Falls das nicht geht, teste deine HA IP z.B. 192.168.1.13:8086
- URL:
- Auth alles deaktivieren außer „witch Credentials“
- Database:
homeassistant
- Database:
- User:
hainflux
- User:
- Password:
DEINSTARKESPasswort
- Password:
Danach alles einmal testen und speichern.
Erstellen von Dashboards in Grafana
Jetzt, da Grafana und InfluxDB miteinander verbunden sind, kannst du damit beginnen, Dashboards zu erstellen.
- Neues Dashboard erstellen:Gehe zu Create > Dashboard und füge ein neues Panel hinzu. Dann klicke auf „Add Visualization“
- Abfrage konfigurieren:Wähle InfluxDB als Datenquelle und konfiguriere deine Abfrage, um die gewünschten Daten anzuzeigen.
- Visualisierung anpassen:Passe die Visualisierung an, um die Daten auf ansprechende Weise darzustellen. Grafana bietet viele verschiedene Visualisierungsoptionen, die du ausprobieren kannst.
- Mein Tipp ist jetzt immer mit der Entität anzufangen. Das ist der eindeutige Name in Home Assistant. Hier am Beispiel des Temperatur Sensors. Die Entität ist
Zuerst starten wir mit einem leeren Dashboard.
- Jetzt als erstes auf „Where“ klicken und dann Entity_id::tag auswählen. Dann hast du alle Sensoren bzw. Einträge in Home Assistant. Dies kann bei vielen Einträgen verwirrend sein. Es hilft einfach nach dem ersten Buchstabe zu suchen. z.B. atc für meinen Temp Sensor.
Hier hilft einfach ausprobieren. Ganz wichtig ist 3. Hier muss die Einheit ausgewählt werden. Wenn erst die Einheit ausgewählt wird, stehen nur die Entitäten mit der entsprechenden Einheit zur Verfügung.
Dann kann noch bei „fill“ Previous“ ausgewählt werden, dann werden alle Messpunkte verbunden.
Einbindung Grafana Extern: Falls du von Extern auf deine Influx DB zugreifen Willst, also nicht aus Home Assistant, brauchst du eine andere IP. Für Grafana z.b. deine HOmeassistant ip / Influx Pfad
- z.B. 192.168.1.13:8086
Fazit
Mit InfluxDB und Grafana kannst du auf einfache Weise umfangreiche Datensätze sammeln und visualisieren, die dir wertvolle Einblicke in dein Smart Home ermöglichen. Durch die Integration dieser Tools in Home Assistant hast du die Möglichkeit, deinen Energieverbrauch zu überwachen, Muster zu erkennen und effizienter zu leben.
Wenn du noch Fragen hast oder Unterstützung bei der Einrichtung benötigst, zögere nicht, in den Kommentaren zu fragen. Abonniere meinen Kanal für weitere Tipps und Anleitungen zu Smart Home Lösungen.
Ich hoffe, dieser Artikel hilft dir dabei, InfluxDB und Grafana erfolgreich in deinem Home Assistant Setup zu installieren und zu nutzen. Viel Spaß beim Visualisieren deiner Daten!
Alkly
Ich zeigt dir, wie du selber ohne Programmierkenntnisse und Herstellerunabhängig dein Zuhause mit selbst gebauter Smart Home-Technologie smart machen kannst.
Hallo Alkly,
haben Deinen Artikel zu Influx und Grafana im Netz entdeckt. Alles gut erklärt, aber ich bin ein absoluter Laie und brauche einfache Hilfe. Ich überwache meine PV Anlage und meine Wärmepunpe. Für HA habe ich mir den HA green gekauft (Laie) und alles klappt ganz gut.
ICh würde aber gerne die Langzeitdaten extern auf einer SSD speichern, damit ich auch Jahre später vergleichen kann. Weißt Du, wie man die INFLUX Daten extern speichern kann? Wie muss man die vorhandenen Einstellungen ändern, oder muss man eine neue DB anlagen auf der SSD mit INFLUX und GRAFANA anlegen. Da der Winter jetzt kommt suche ich nach einer Lösung und komme mit meinen wenigen Kenntnisse nicht weiter, habe aber schon bisher Fehler beim Volumenstrom der Wärmepumpe entdeckt.
Vielleicht hast Du eine einfach Lösung oder kannst mich auf einen Link verweisen, der mir weiterhelfen kann.
Vielen Dank
Christian
Danke für dein Feedback!
Es gibt mehrere Möglichkeiten,
am einfachsten ist es, wenn du einfach die integrierte Influx DB mit Home Assistant nutzt.
Dann regelmäßig Home Assistant backupen und du hast die Daten sicher. Später könntest du die über eine Kommandozeile auch nochmal exportieren als Datenbank, ist aber aufwändiger.
Einfach nur auf einer SSD würde ich keine DB anlegen. Wenn dann einen eigenen Server, der die Influx DB managed.
Da musst du aber sicherstellen, dass die DB auch gebackuped wird.
Ich hab auf meiner Influx DB Daten seit 2019 drauf und Speicher einfach alle paar Tage mein gesamten HA als Backup.
Hi Alkly,
ich habe Aqara binary_sensor.aqara_door_and_window Kontaktsensoren, die über Matter eingebunden sind. Die Daten werden auch an influxdb geliefert. Alles gut. Aber: Wenn ich diese Zustände auswerte, besteht das Problem, dass mir in den Visualisierungen nur dann Daten angezeigt werden, wenn im Ansichtszeitraum Daten vorhanden sind. Allerdings ist der letzte Zustand (meinetwegen eine 0 für Fenster zu) schon drei Tage alt und wird bei einer Ansicht von beispielsweise 24 Stunden nicht berücksichtigt. Was kann man machen, dass diese Datenpunkte eines Sensors, die nur bei einer Veränderung abgelegt werden, auch regelmäßig, zum Beispiel einmal pro Stunde, fortgeschrieben werden. Ich habe es schon mit einer Automatisierung in Home Assistant mittels Home Assistant Core Integration: Entität aktualisieren versucht. Aber es werden keine Daten weggeschrieben, wenn ich diese Automation ausführe.
Viele Grüße
Oh Spannendes Problem!
Hast du mal Probiert, bei „Group by“ Auf ganz rechts “ fill(previous)“ ausgewählt?
Das hilft bei mir manchmal bei der Anzeige.