Daten Endlos Speichern – Home Assistant mit InfluxDB und Grafana

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:

  1. 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 kopierenhttps://github.com/hassio-addons/repository
  2. 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“.
  1. 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.
  2. 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.

  1. 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

  1. 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.

  1. 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.
  2. 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.

  1. Datenquelle hinzufügen:Öffne Grafana und gehe zu Configuration > Data Sources. Klicke auf Add data source und wähle InfluxDB aus.
  2. 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
  3. Auth alles deaktivieren außer „witch Credentials“
    • Database: homeassistant
    • User: hainflux
    • Password: DEINSTARKESPasswort
    Teste die Verbindung, um sicherzustellen, dass alles korrekt eingerichtet ist.

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.

  1. Neues Dashboard erstellen:Gehe zu Create > Dashboard und füge ein neues Panel hinzu. Dann klicke auf „Add Visualization“
  1. Abfrage konfigurieren:Wähle InfluxDB als Datenquelle und konfiguriere deine Abfrage, um die gewünschten Daten anzuzeigen.
  2. Visualisierung anpassen:Passe die Visualisierung an, um die Daten auf ansprechende Weise darzustellen. Grafana bietet viele verschiedene Visualisierungsoptionen, die du ausprobieren kannst.
  3. 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.

Endlos Datenspeichern in Home Assistant! Detaillierte Einrichtung für Influx und Grafana in Home Assistant.

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 Dumme Dinge Smart machen

Alkly

Ich zeigt dir, wie du selber ohne Programmierkenntnisse und Herstellerunabhängig dein Zuhause mit selbst gebauter Smart Home-Technologie smart machen kannst.

Oh, hallo 👋
Schön, dich zu treffen.

DIY Smart Home leicht gemacht! Newsletter abonnieren und intelligente Lösungen entdecken!

Informationen dazu, wie ich mit deinen Daten umgehe, findest du in der Datenschutzerklärung. Du kannst dich jederzeit kostenfrei abmelden.

4 Anmerkung zu “Daten Endlos Speichern – Home Assistant mit InfluxDB und Grafana

  1. Christian Reuting

    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

    Antworten
  2. Alkly Autor des Beitrags

    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.

    Antworten
  3. Bert Schulze

    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

    Antworten
    1. Alkly Autor des Beitrags

      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.

      Antworten

Schreibe einen Kommentar

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