OpenHAB auf Synology NAS ab DSM 7.2 installieren

Die smart Home Platform openHAB erfreut sich nicht nur unter Nerds hoher Beliebtheit. Die open Source Auslegung gepaart mit viel Enthusiasmus der Community haben zu einer großen Abdeckung der Integration von smart Home Systemen zahlreicher Hersteller geführt. Das System kann auf unterschiedlichen Linux Plattformen installiert werden, hat geringen Ressourcenverbrauch weshalb man im Zusammenhang mit openHAB sehr oft auf den Raspberry Pi trifft.

Da meine persönliche, gewachsene smart Home Situation eher der Kraut&Rüben Fraktion zuzurechnen ist, finden sich System der Hersteller Bosch, Philips, Google, Amazon, dLink, AVM, Gardena – um nur einige der namhafteren zu nennen. Die alle unter einen Hut zu bringen kann wohl oder übel nur mit einem schrittweisen Vorgehen angegangen werden, da es keine Point & Click Smart Home Hub gibt, der die alle ebenso smart & easy vereinen könnte.

Weil in meinem Keller im 19″ Rack (ok, jetzt darf man mich getrost als „Nerd“ bezeichnen) schon seit längerem eine Synology Diskstation ihr Dasein fristet, wollte ich partout diese nutzen um das openHAB System zu hosten. Diese NAS Kisten sind i.a. nicht gerade für überboardende Hardwareausstattung berühmt; im Normalfall wird hier ein PCB mit eher schwachbrüstiger CPU und wenig RAM verbaut, das stark auf I/O Ops optimiert wird.
Wenn openHAB aber auch auf einem minimalistischen Raspberry PI läuft, sollte das meine DS920+ wohl auch schaffen. Darin werkelt übrigens ein betagter 2 Ghz Intel Celeron dem immerhin 4GB RAM zur Seite stehen.

Synology hat vor einiger Zeit DSM 7.o herausgebracht, dass doch einige fundamentale Änderungen unter der Haube des Linux Systems durchführte, weshalb viele Anleitungen im Netz zur Installation von openHAB nicht mehr zutreffend sind. Das hier gezeigte Vorgehen wurde auf DSM 7.2.1-69057 Update 3 durchgeführt.

Schritt 1: Java nachrüsten

openHAB ist auf Java angewiesen, da die Java Laufzeitumgebung (JRE) für verschiedene Verschlüsselungsfunktionen benötigt wird. Java ist nicht (mehr) automatisch installiert, selbst eine Nachinstallation ist über das Synology Standard Repository nicht vorgesehen. Mit folgenden Schritten klappt es trotzdem:

  1. Community Repository als „Paketquelle“ hinzufügen, z.B.: https://get.filebot.net/syno/
  2. Java Installer installieren

Dadurch werden die aktuellsten OpenJDK binaiers auf dem NAS installiert.

Synology Paket Manager mit zusätzlichem Paketquellen
Synology Paket Manager mit zusätzlichem Paketquellen

Schritt 2: Container Manager App hinzufügen

openHAB wird in einem sogenannten Container installiert. Die dafür notwendige Umgebung nennt sich Docker und wurde im DSM 6 noch per Docker app verwaltet. Seit DSM 7.2 gibt es dafür den Container Manager. Dieser bietet eine ähnliche, im Detail aber meist größere Funktionalität als die Docker app, weshalb ältere Installationsanleitungen für openHAB hier an ihre Grenzen stoßen.

Der Container Manager ist im Synology App Repository zu finden und daher einfach über die hauseigene Paketverwaltung nachzuinstallieren.

Schritt 3: openHAB Benutzer und Verzeichnisse anlegen

Auf der openHAB Projekt Seite gibt es eine Anleitung, welche Aktivitäten grundsätzlich durchzuführen sind um die Benutzer und Verzeichnisse auf Systemebene anzulegen. Leider ist auch diese nicht mehr ganz korrekt, da sich z.B. die Eingabeparameter bei der Funktion synouser geändert haben.

Der dort beschriebene Weg setzt voraus, dass sie sich per SSH Zugang zur Commandline geschaffen haben, alternativ ist es aber natürlich auch möglich die Benutzer und Verzeichnisse über die Weboberfläche und die entsprechenden DSM Tools anzulegen.

Hier die korrekte Angabe der Befehle:

Schritt 4: openHAB Image installieren

Der oben erwähnte Container Manager lässt sich das openHAB Docker Image wie folgt auf dem DSM installieren:

  1. Im Bereich Registrierung nach „openhab“ suchen
  2. Das Image herunterladen
Docker Image openhab installieren
Docker Image openhab installieren

Schritt 5: Konfiguration abschließen und starten

Die Konfiguration der Docker Instanz ist mittels Wizard dann noch entsprechend der zuvor angelegten Benutzerdetails und Verzeichnisse vorzunehmen:

Konfigurieren der Docker Instanz
Konfigurieren der Docker Instanz

Wichtig ist hierbei das korrekte Port Assignment (beachte den Eintrag für lokalen Port).

Danach ist nur noch die Instanz zu starten und nach einigen Sekunden sollte die openHAB Startseite erscheinen wenn man diese mit der IP des NAS und dem Port 8080 aufruft.

Troubleshooting

Sollte der Container laut Container Manager und den Logs ohne Fehler laufen, so muss auch die Webseite unter http://[NASIP]:8080 erreichbar sein. Für [NASIP] ist die dem NAS zugewiesene IP Adresse einzusetzen.

Sollte die Seite nicht erscheinen und der Browser stattdessen eine Fehlermeldung einer nicht vorhandenen Seite anzeigen, kann ich empfehlen noch bevor man beginnt das Netzwerk genauer unter die Lupe zu nehmen, zu prüfen, ob die Port Bindings von openHAB korrekt eingestellt wurden und der openHAB Dienst am NAS tatsächlich auf dem Port 8080 horcht. Eine simple Überprüfung ist mittels folgendem Befehl möglich:

sudo netstat -tulpe --numeric-ports | grep docker

Das sollte alle Port Bindings des Docker Proxies liefern, da sieht man gleich, ob auch tatsächlich auf Port 8080 gelauscht wird.

Wenn man weiterführende Analysen durchführen möchte, empfiehtl es sich direkt auf das Docker Image einzuloggen, das geschieht mit folgendem Befehl:

sudo docker exec -it [docker_instance] bash

Für docker_instance ist der Name der Image Instanz zu wählen, etwa openhab-openhab-1.

Dieser Beitrag wurde unter Allgemein abgelegt und mit , , verschlagwortet. Setze ein Lesezeichen auf den Permalink.

Schreibe einen Kommentar

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

*