In der Welt der Smart-Home-Automatisierung hat sich Home Assistant in Verbindung mit InfluxDB als eine der führenden Open-Source-Plattformen etabliert. Mit seiner Vielseitigkeit und Erweiterbarkeit bietet Home Assistant eine beeindruckende Bandbreite an Funktionen, die es Benutzern ermöglichen, ihr Zuhause intelligenter und effizienter zu gestalten.
In diesem Blog-Artikel werden wir uns darauf konzentrieren, wie die Datenaufbewahrung von Home Assistant durch die Integration von InfluxDB erweitert werden kann. Home Assistant ermöglicht die nahtlose Integration von Smart-Home-Geräten und -Diensten, unabhängig von Hersteller und Protokoll. Die Plattform unterstützt eine breite Palette von Geräten, darunter Lichtschalter, Thermostate, Sensoren, Kameras und mehr. Eine der Stärken von Home Assistant liegt in seiner Flexibilität und der Fähigkeit, Automatisierungen zu erstellen, die auf verschiedenen Bedingungen basieren.
Inhaltsverzeichnis
- Warum InfluxDB?
- Schritte zur Integration von Home Assistant mit InfluxDB
- Vorteile der fortgeschrittenen Integration
- Fazit
Warum InfluxDB?
InfluxDB ist eine leistungsstarke Open-Source-Datenbank, die sich ideal für die Speicherung von zeitbezogenen Daten eignet. Sie bietet hohe Skalierbarkeit, Leistung und Abfragefähigkeiten, was sie zu einer ausgezeichneten Wahl für die Aufbewahrung von Smart-Home-Daten macht. Durch die Integration von InfluxDB kann Home Assistant seine Fähigkeiten zur Langzeitdatenspeicherung erweitern.
Schritte zur Integration von Home Assistant mit InfluxDB:
InfluxDB einrichten:
Installiere InfluxDB direkt innerhalb von Home Assistant als Container.
Wähle dazu Einstellungen -> Add-ons aus
Im nächsten Fenster kannst du ganzen unten rechts den ADD-ON STORE auswählen.
An dieser Stelle können wir direkt drei Container einrichten: influxDB, File Editor und Grafana. Der File Editor wird später für den Zugriff auf die configuration.yaml
gebraucht. Eventuell gibt es noch andere Möglichkeiten, aber für mich passt das ganz gut.
Bei der Einrichtung eines neuen Container sollte man kurz in der Dokumentation vorbei schauen und ggf. die Konfiguration anpassen. Im Falle von influxdb musste ich unter dem Reiter Konfiguration den Schalter bei SSL auf ausschalten. Danach lässt sich der Container starten.
Unter dem Reiter Informationen sollte man unbedingt den Schalter für „In der Seitenleiste anzeigen“ umlegen. So kommt man schneller an die Anwendung.
Innerhalb von InfluxDB müssen wir eine neue Datenbank für Home Assistant anlegen.
Erstellen von Retention Policies (optional):
InfluxDB ermöglicht die Erstellung von Retention Policies, um festzulegen, wie lange Daten aufbewahrt werden sollen. Dies kann in der InfluxDB-Konfiguration erfolgen oder auch direkt im Benutzerinterface.
CREATE RETENTION POLICY "7_days" ON "DATENBANK_NAME" DURATION 7d REPLICATION 1 DEFAULT
Dieses Beispiel erstellt eine Retention Policy namens „7_days“, die die Daten für 7 Tage aufbewahrt.
In meinem Fall habe ich keine Retention Policy hinterlegt.
Erstellen eines Benutzers
Danach brauchen wir noch einen entsprechenden Benutzer. Dazu wechseln wir den Reiter oben links auf User. Neben der Anlage des Benutzers kann man hier auch die Berechtigung setzen.
Home Assistant Konfiguration:
Jetzt kommen wir zu der Anbindung an Home Assistant durch Anpassung der Konfigurationsdatei. Dafür brauchen wir den Container File Editor.
Öffne die Konfigurationsdatei von Home Assistant (normalerweise configuration.yaml
).
Füge die folgenden Zeilen hinzu, um die Integration mit InfluxDB zu konfigurieren:
#InfluxDB ---
influxdb:
host: localhost
port: 8086
database: HomeAssistant
username: HomeAssistant
password: ***
max_retries: 3
default_measurement: state
include:
domains:
- sensor
Ersetze die Platzhalter (host, database, username, password) durch die entsprechenden Informationen.
Neustart von Home Assistant:
Nachdem du die Konfigurationsdatei aktualisiert hast, starte Home Assistant neu, damit die Änderungen wirksam werden.
Konfiguration von Sensoren und Entitäten (optional):
Wähle die Sensoren oder Entitäten aus, für die du Daten in InfluxDB aufzeichnen möchtest.
Füge die entsprechende Konfiguration in Home Assistant hinzu, um die Daten zu sammeln. Beispiel für einen Sensor:
sensor:
- platform: your_sensor_platform
name: "Beispiel Sensor"
state_topic: "sensor/beispiel"
unit_of_measurement: "Einheit"
value_template: "{{ value_json.value }}"
In meinem Fall habe ich diese Einteilung nicht vorgenommen.
Visualisierung mit Grafana (optional):
Grafana ist ein leistungsstarkes Tool zur Visualisierung von Daten. Du kannst Grafana verwenden, um benutzerfreundliche Dashboards für deine Smart-Home-Daten zu erstellen, indem du es mit InfluxDB verbindest.
Die Einrichtung ist eigentlich ein eigener Blogartikel, aber wir beginnen einfach mal mit der Anbindung.
Mit einem Klick auf die drei langen Striche am oberen linken Rand lässt sich die Seitenleiste aufklappen. Unter den Connections und Data sources kann man mit der Suche schnell zum Eintrag influxdb kommen.
Mit der Eingabe von Name, URL, Database, User und Password ist man schon gerüstet für den ersten Test.
An dieser Stelle kommen die Arbeiten am Dashboard…
Vorteile der fortgeschrittenen Integration:
Grafische Analyse: Mit Grafana können Benutzer benutzerdefinierte Dashboards erstellen, um ihre Smart-Home-Daten auf anschauliche Weise zu visualisieren.
Historische Analyse: Durch die Langzeitdatenspeicherung in InfluxDB können Benutzer historische Trends und Muster erkennen, um ihre Smart-Home-Automatisierungen zu optimieren.
Flexibilität: Die Integration bietet eine hohe Flexibilität bei der Auswahl der Sensoren und Entitäten, für die Daten erfasst werden sollen.
Zukünftige Optimierung: Durch die Analyse von Langzeitdaten können Benutzer ihr Smart-Home-System kontinuierlich verbessern und anpassen.
Die Integration von Home Assistant mit InfluxDB eröffnet eine Welt neuer Möglichkeiten, um das volle Potenzial von Smart-Home-Automatisierung auszuschöpfen. Von der einfachen Überwachung bis zur detaillierten Analyse bietet diese Kombination eine umfassende Lösung für diejenigen, die ihr Zuhause intelligent gestalten möchten.
Die Einrichtung eines Dashboards innerhalb Grafana zeige ich eventuell in einem weiteren Blog-Artikel genauer.
Fazit:
Die Integration von Home Assistant mit InfluxDB eröffnet eine Welt neuer Möglichkeiten für Smart-Home-Enthusiasten. Durch die Erweiterung der Datenaufbewahrung können Benutzer nicht nur ihre aktuellen Gerätestatus überwachen, sondern auch wertvolle Einblicke in die Leistung und Effizienz ihres Smart-Home-Systems gewinnen. Diese Kombination aus Flexibilität, Automatisierung und umfassender Datenaufbewahrung macht Home Assistant zu einer herausragenden Wahl für diejenigen, die ihr Zuhause wirklich intelligent gestalten möchten.
Werkzeuge:
ScreenPresso ( Die Screenshots wurden mit Screenpresso erstellt und bearbeitet)
Fujitsu Futro S740 ( Als SmartHome Server mit Proxmox )