Bye, bye Raspberry Pi(s)

Für die Smarthome-Steuerung in meiner Wohnung habe ich bis vor kurzem zwei Raspberry Pis (Version 3 mit jeweils 2 GB RAM) verwendet. Ein Raspberry war zuständig für die Steuerung der Homematic-Geräte via Raspberrymatic und auf dem zweiten liefen openHAB und deCONZ für meine Zigbee-Geräte. Dieser zweite PI war auch noch per VPN mit meinem externen Web Server verbunden, auf dem Grafana und InfluxDB liefen.

Eigentlich wollte ich das Ganze schon länger nur noch auf einem Gerät ausführen. Die 3er Raspberries sind dafür aber dann doch zu schwach und ein Raspberries Version 4 mit entsprechendem Speicher sind auch jetzt noch schwer zu bekommen (und vergleichsweise teuer).

In der Firma verwenden wir seit einiger Zeit Proxmox für die Verwaltung unserer virtuellen Maschinen und haben damit sehr gute Erfahrungen gemacht. Seit einiger Zeit gibt es RaspberryMatic auch für die x86-Plattform (auch als vorkonfigurierte VM) und für die Kommunikation mit den Homematic-Geräten gibt es einen USB-Stick (HmIP-RFUSB), der mit aktueller Firmware auch das "alte" BidCos-Protokoll beherrscht. Daher ich beschlossen, meine beiden Raspberries durch einen Mini PC mit Intel (oder AMD) Prozessor zu ersetzen. Anstelle der bisher verwendet

Nach längerer Suche (der Rechner sollte ja auch möglichst wenig Strom verbrauchen), habe ich mich für einen Beelink U59 Mini PC entschieden. Der Rechner enthält einen Intel Celeron N5105 Prozessor, hat 8 GB RAM und eine 500 GB SSD. Die Platte ist eigentlich fast schon zu groß, aber so ist genug Platz für Sicherungen der VMs.

Auf dem Rechner habe ich dann als erstes Proxmox eingerichtet. Für die installierte Software verwende ich sowohl virtuelle Maschinen, als auch LXC-Container, die etwas leichtgewichtiger sind:

Proxmox Dashboard mit Containern und VMs

Aktuell laufen auf dem Home Server 3 LXC-Container und 2 virtuelle Maschinen. Damit verbraucht der Mini PC im Schnitt weniger als 8 Watt.

LXC-Container

Pi-Hole

Pi-Hole wollte ich schon länger einsetzen und jetzt habe ich auch die passende Hardware.

Für die Installation in einem LXC-Container gibt es hier eine sehr gute Anleitung: https://www.kreaweb.be/diy-home-server-2021-software-pihole/.

Der Container hat 2 vCPUs und 512 MB RAM.

InfluxDB und Grafana

InfluxDB verwende ich zur Speicherung diverser Messdaten des Smarthomes und mit Grafana erzeuge ich dann passende grafische Darstellungen. Beide Produkte laufen jetzt gemeinsam in einem Container, der auf einem Debian-Image basiert.

Für beides zusammen reichen 1 vCPU und 1 GB RAM.

VPN

In diesem Container (ebenfalls auf Debian-Basis) läuft aktuell Tailscale, um eine VPN-Verbindung aus dem Internet zum Home Server aufbauen zu können. Das möchte ich aber noch durch Wireguard ersetzen und dann die Verbindung über meinen eigenen Server aufbauen.

Als hübsches Application Dashboard für die diversen Dienste habe ich noch homepage installiert.

Application Dashboard mit homepage

Virtuelle Maschinen

Raspberrymatic

Eine VM ist reserviert für RaspberryMatic. Die Installation der VM geht sehr einfach. Es muss hierfür nur ein Shell-Script ausgeführt werden, das die Einrichtung der VM inkl. der Software-Installation übernimmt.

Zusätzlich muss noch der USB-Stick in Proxmox passend konfiguriert und an die neue VM "durchgereicht" werden. Der VM habe ich dann 2 vCPUs und 2 GB RAM spendiert. 1 GB würde aber vermutlich ausreichen.

Home Assistant (HaOS)

Obwohl ich mit openHAB eigentlich durchaus zufrieden war, wollte ich schon länger einmal Home Assistant testen. Das hatte ich zuvor schon einem Raspberry Pi gemacht, der hier noch rumlag und was ich da sah, gefiel mir ziemlich gut. Daher habe ich auf dem neuen Home Server dann auch erste einmal eine VM mit Home Assistant eingerichtet (ging auch ganz einfach per Shell Script).

Der Test lief dann so gut, dass ich beschlossen habe, von openHAB nach Home Assistant zu wechseln. Aber dazu gibt es noch bei Gelegenheit einen eigenen Artikel.

Das war durchaus einiges an Arbeit, aber mit dem Ergebnis bin ich jetzt sehr zufrieden. Die deCONZ-Software (Phoscon) läuft als Add-on innerhalb von Home Assistant. So konnte ich mir eine eigene VM dafür ersparen.

Die VM verwendet 3 vCPUs und 5 GB RAM.

Fazit

Der Mini PC läuft in dieser Konfiguration jetzt seit 1,5 Monaten absolut stabil und der Umstieg hat sich gelohnt. Mit dem Stromverbrauch von weniger als 8 Watt im Schnitt bin ich sehr zufrieden.

Durch die Verwendung von VMs bzw. Containern habe ich auch noch ein Stück Sicherheit bekomme: vor jedem Software-Update erstelle ich einen Snapshot, um ggf. einfach wieder auf einen vorherigen Softwarestand zurückzukommen. Außerdem werden die kompletten VMs einmal pro Woche automatisch auf mein NAS gesichert.