Ein Cluster aus mehreren Servern möchte gefordert werden. Ich für meinen Teil betreibe zum Beispiel unterschiedliche virtuelle Maschinen, die ich in diesem Artikel als Homeserver Anwendungen bezeichne. Warum ich das tue? Weil du jede Anwendung genauso blank auf einem Server installieren kannst. Virtuelle Maschinen braucht es dazu gar nicht.

Auf die Idee zur Vorstellung bin ich durch einen Artikel von Janis gekommen. Er hat im Jahr 2020 vorgestellt, welche Dienste das Smart Home aus seiner Sicht braucht (Quelle: blog.unixa.de). Ich möchte in diesem Artikel noch ein Stück weiter gehen. Denn ich will dir zeigen, welche Dienste ich grundsätzlich bei mir im Cluster betreibe.

Sicherlich wird nun der eine oder andere aufmerksame Leser sagen, dass manche Dienste gar nicht notwendig sind. Richtig. Und auch wieder falsch. Denn die Notwendigkeit ergibt sich in meinen Augen aus einem sinnvollen Anwendungsszenario. Und glaub mir, trotz ausreichend Leistung betreibe ich keine Dienste umsonst. Denn jede Maschine lastet den Server beziehungsweise das Cluster aus und sorgt dafür, dass die CPU noch härter arbeiten muss. Das wiederum resultiert in einen höheren Stromverbrauch.

Blicken wir nun also auf sämtliche Dienste, die ich bei mir auf den Servern betreibe. Ich erkläre dir darüber hinaus, warum ich die Dienste nutze und gebe dir eine kurze Übersicht an die Hand.

Los geht’s!

Serverschrank mit zwei Rack-Servern
Meine zwei Server fürs Smart Home

Meine Smart Home Systeme

Teile meiner klassischen Homeserver Anwendungen sind Smart Home Systeme. Dabei spreche ich nicht nur von bekannten Systemen, sondern auch von eigenen Konstrukten. Gerade diese eigenen Konstrukte dienen dazu, selbstgeschriebene Skripte zu betreiben.

Aber natürlich laufen auch zwei klassische Smart Home Systeme im Cluster. Diese sind notwendig, damit ich sämtliche Komfort- und Sicherheitsfunktionen im Smart Home bereitstellen kann. Ohne diese Systeme wäre eine übergreifende Steuerung und Automatisierung kaum möglich.

Schauen wir in diesem Kapitel daher auf die verschiedenen virtuellen Maschinen, die das Smart Home jeden Tag am Laufen erhalten.

ioBroker

Wer meinen Blog aufmerksam verfolgt, wird nun kaum überrascht sein. Ich betreibe im Cluster eine virtuelle Maschine, welche das System ioBroker bereitstellt. Darin werden sämtliche übergreifende Automatisierungen erstellt und kombiniert. Damit das möglich ist, sind selbstverständlich alle vernetzbaren Geräte eingerichtet und können zentral gesteuert werden.

Dabei ist ioBroker eine der ressourcenintensivsten virtuellen Maschinen, die ich zur Zeit betreibe. Ausgestattet mit insgesamt 8 Kernen und 8 GB RAM, verrichtet diese virtuelle Maschine die größte Arbeit im ganzen Smart Home. Doch wie konnte es so weit kommen?

Nun ja, die Antwort ist im Grunde recht simpel. Mit der Zeit laufen immer mehr Adapter und Instanzen auf ioBroker. Das Smart Home lebt von Erweiterung und Veränderung. Darüber hinaus probiere ich natürlich auch gerne den einen oder anderen Anwendungsfall gerne selbst aus, was ebenso seine Leistung erfordert.

Schon auf dem alten Server war ioBroker damit eine Maschine, welche ordentlich Ressourcen verschlungen hat. Nicht übermäßig, aber im Vergleich zu anderen eben mehr. So entschied ich mich nach dem Umzug ins Cluster, dieser Maschine direkt mehr zu geben. So kann ich auch in Zukunft leicht Änderungen am Smart Home vornehmen und das Zuhause mit noch mehr Intelligenz ausstatten.

Jetzt mehr erfahren:  ioBroker - Zentrale für Smart Home

OpenHAB

Im Grunde nur noch aus Übergangsgründen wird von mir OpenHAB betrieben. Zu Beginn meines Umzugs zu ioBroker habe ich diese Maschine gebraucht, um nach und nach die Logiken zu übertragen. Der Sinn bestand ganz einfach darin, dass ich erstmal mit ioBroker warm werde und nach und nach den Umzug meistere, so dass es zu keinen Ausfällen kommt.

Der Plan ging soweit auch auf und zeitweise arbeiteten zwei Systeme parallel an den Automatisierungen im Smart Home. Auf Dauer war das natürlich keine Lösung und so wurde OpenHAB schlussendlich vollständig abgelöst.

Heute betreibe ich das System nur noch aus Gründen der Recherche. Ab und an sehe ich nochmal nach, welche Regeln ich denn damals deaktiviert habe und überlege mir, wie und ob ich sie denn noch zu ioBroker migrieren soll.

Ein weiterer Grund diese virtuelle Maschine zu betreiben ist, dass im Moment noch Motion darin mitläuft. Du musst dir vorstellen, dass ich damals auf dem NAS eine virtuelle Maschine hatte und dort waren sämtliche Skripte und Systeme für den täglichen Betrieb drin. Diese Maschine heißt noch heute OpenHAB und wird von mir immer weiter zerstückelt, bis ich sie nicht mehr brauche. Da ich aber auch etwas bequem bin, dauert dieser Prozess bis heute noch an. Leider.

Jetzt mehr erfahren:  Smart Home mit OpenHAB - so gehts!

SmartUtils

Keine Software an sich ist die virtuelle Maschine mit dem Namen SmartUtils. Hier befinden sich verschiedene Skripte, die ich für den täglichen Betrieb brauche aber nicht in einer eigenen virtuellen Maschine installieren möchte oder muss. Es ist quasi das Sammelbecken für all das, was sonst kein eigenes Zuhause braucht.

Darüber hinaus unterstützt die VM SmartUtils das Smart Home durch den dort installierten MQTT-Broker Mosquitto. Auf ihm treffen alle Nachrichten von Systemen und Diensten ein, die nicht direkt mit ioBroker sprechen wollen. Stattdessen nutze ich MQTT als Brücke zwischen den Systemen und dem Smart Home. Ein klassisches Beispiel hierfür ist der airQ, welcher zwar per MQTT verbunden werden kann, noch allerdings keine direkte Unterstützung in ioBroker gefunden hat.

Ein weiteres Beispiel für eine Anwendung ist die selbstgeschriebene Software für meine Sprüche. Ich habe in einer Datenbank verschiedene Sprüche für verschiedene Szenarien hinterlegt. Jedes Mal, wenn ioBroker nun eine Sprachausgabe über die Echos triggert, liefert die Anwendung einen passenden Zufallsspruch zurück. So herrscht ein wenig mehr Dynamik im Smart Home und es kommt nicht dazu, dass man den Aussagen irgendwann einmal nicht mehr zuhören möchte.

Ansonsten ist diese virtuelle Maschine relativ unspektakulär. Sie arbeitet täglich vor sich hin, betreibt das eine oder andere Skript und ist im Grunde am wenigsten pflegeaufwendig.

Jetzt mehr erfahren:  Was ist MQTT und wozu brauche ich es?

Plex

Eigentlich nicht direkt mit dem Smart Home verwandt, ist die Maschine für Plex. Jedoch habe ich zwischen Plex und ioBroker auch eine Logik verbaut und ich zähle sie daher schon irgendwo zum Smart Home. Man erkennt jedoch daran deutlich, dass die Trennlinie nicht immer so klar ist, wie man zu glauben mag. Daher fällt mir die Einteilung in die Homeserver Anwendungen auch etwas schwer.

Plex stellt mir meine Film- und Musikbibliothek bereit. So ist es mir innerhalb und außerhalb meines Zuhauses jederzeit möglich, Filme und Serien zu schauen oder auch gute Musik zu genießen. Gerade bei einer Übernachtung im Hotel, wenn es wieder einmal nur eintöniges Fernsehen gibt, kann das schon sehr hilfreich sein.

Eine eigene Maschine hat Plex übrigens deshalb bekommen, da es für die Nutzung eine Portfreigabe voraussetzt. Zu mischen mit anderen Systemen kann zu unvorhergesehenen Sicherheitslücken führen, die ich so zumindest beschränken kann. Außerdem ist kein anderes System davon betroffen, sollte ich Plex einmal neu starten oder herunterfahren müssen. Das macht den Betrieb des Smart Homes etwas resistenter gegen Fehler und Ausfälle.

Eine gute IT muss eben auch gut durchdacht sein. 😉

Jetzt mehr erfahren:  Plex Media Server im Heimnetzwerk zum Streaming

Doods

Das letzte System aus dem Teilbereich Smart Home ist Doods. Hierbei handelt es sich um ein System zur Klassifizierung von Objekten. Klingt erstmal etwas kryptisch, ist aber ganz einfach erklärt.

An Doods werden Kamera-Streams übergeben. Das System sucht nun in den Bildern nach ihm bekannten Mustern und erzählt, was es erkannt hat. Läuft also eine Person vor der Kamera, kann Doods das feststellen und diese Information entsprechend weiterleiten. Auch hier kommt bei mir wieder MQTT zum Einsatz. Dort laufen alle Meldungen zusammen und werden durch ioBroker entsprechend ausgelesen.

Das Smart Home ist damit in der Lage mir mitzuteilen, dass sich eine Person auf dem Grundstück befindet. Bei Bedarf kann darüber hinaus über eine eigene Logik ein Foto des aktuellen Kamerabilds per Telegram an mich versendet werden. Ich bin somit immer informiert, wenn jemand unbefugt das Grundstück betritt.

Doods war übrigens auch einer der Gründe dafür, weshalb ich mich für mein Zuhause für das Thema Cluster entschieden habe. So kann ich die Last der Systeme viel besser auf mehrere Server verteilen und dennoch alle Dienste nutzen, die mir das tägliche Leben so komfortabel gestalten.

Systeme außerhalb des Smart Homes

Mit Blick auf die Homeserver Anwendungen fällt mir persönlich gleich auf, dass es noch weitere Systeme gibt, die ich betreibe. Zwar handelt es sich hierbei um nur einen kleinen Teil, doch auch dieser kann sehr entscheidend und wichtig sein.

Seit dem ersten Homeserver bin ich außerdem ein großer Freund von Self-Hosting. Es hat mir selbst sehr viel Wissen eingebracht und ich konnte mich mal so richtig austoben. Wie es eben für einen Informatiker gehört. Das hat mich schlussendlich auch im beruflichen Umfeld weitergebracht. Auch wenn ich in der Softwareentwicklung daheim bin, kann ich über den Tellerrand blicken und verstehe Zusammenhänge in der IT ganz gut. Wie du damit sehen kannst, hat mir der Betrieb einer eigenen Infrastruktur somit weit mehr gegeben als nur ein wenig Server aufsetzen.

Doch genug zu mir. Blicken wir auch hier auf die verschiedenen Systeme.

PiHole

Eine meiner am meisten geschätzten Homeserver Anwendungen ist PiHole. Hierbei handelt es sich um einen Filter, der Werbung entfernen kann. Auch wenn ich selbst auf meinem Blog Werbung zur Monetarisierung nutze finde ich, dass es andere Websites ganz eindeutig übertreiben.

Ein gutes Beispiel hierfür ist die Website eines großen Nachrichtensenders. Hier findet man zwar den einen oder anderen guten Artikel, jedoch wird die Werbung auf der Seite nicht selten durch Inhalte unterbrochen. Der kommerzielle Zweck der Seite ist also kaum zu übersehen. Das finde ich schade, denn so gerät das Thema Werbung immer stärker in einen negativen Blick. Und auch ich hadere manchmal mit der Monetarisierung über Werbung.

PiHole macht damit Schluss. Einmal eingerichtet, kann ich sämtliche Domains konfigurieren, die schon im Voraus auf DNS-Ebene blockiert werden. So gelingt es mir, dass ich innerhalb des eigenen Netzwerks nahezu kaum Werbung vor die Augen bekomme. Positiver Nebeneffekt dabei ist, dass das eigene Smartphone oder der eigene Rechner viel weniger Leistung zur Berechnung dieser teils aufwendigen Grafiken brauchen. Das Smartphone spart Akku, der Rechner CPU-Leistung. Die Auswirkungen mögen vielleicht nicht so groß sein, doch alleine der Komfort wieder Inhalte genießen zu können, ist es definitiv wert.

Wenn ich auf ein System niemals wieder verzichten möchte, wäre es definitiv PiHole.

Nginx als Reverse Proxy

Wer mehrere Systeme oder Websites daheim betreibt weiß, dass es schwierig sein kann. Meist ist der Port 80 schon durch die erste Seite belegt und so stellt sich schnell die Frage, wie man weitere Systeme ans Netz bekommt. An dieser Stelle kommt der Nginx zum Einsatz. Er greift alle Anfragen aus dem Netz auf und leitet sie regelbasiert an die richtigen Systeme weiter.

Der Reverse Proxy ist damit der erste Ansprechpartner und der Allwissende. Ihm bringt man bei, welche Anfrage an welches System durchgestellt werden soll. Damit wird es möglich, auf Port 80 mehrere Seiten ans Netz zu bringen, ohne verschiedene IP-Adressen zu nutzen.

Bei mir zum Beispiel entstand das Anwendungsszenario für einen Reverse Proxy eher aus der Not heraus. Ich wollte ein zweites System ans Internet hängen, um es verfügbar zu machen. Mein einziger Ausweg (neben seltsamen Portangaben) war der Reverse Proxy. Da das Cluster für diesen Proxy noch genug Leistung übrig hat, entschied ich mich für diesen Weg.

Und was soll ich sagen? Ich bereue es definitiv nicht. Ich kann all meine Dienste super komfortabel nutzen und jederzeit entscheiden, was ans Netz geht und was doch lieber offline bleibt. Dabei achte ich natürlich sehr strikt darauf, dass nicht jedes System online geht. So hat zum Beispiel das Smart Home keinen direkten Draht von außen und ist im Zweifel einzig und allein über VPN zu erreichen. Andere Dienste jedoch können direkt aufgerufen werden, da es anders entweder nicht geht oder das Risiko überschaubar ist.

Nextcloud

Sicherlich vom einen oder anderen schon vermutet, gehört die Nextcloud zu meinen Homeserver Anwendungen. Hierüber kann ich komfortabel meine Termine, Kontakte und Dateien managen. Wobei die abgelegten Dateien dort eher zur Freigabe genutzt werden. Die reine Datenablage für meine privaten und geschäftlichen Daten, ist nicht die Nextcloud.

Super hilfreich für meine Anwendung ist die Nextcloud vor allem dann, wenn ich Daten mit Freunden, Bekannten oder Kooperationspartner austausche. Ich lade die entsprechenden Dateien hoch, gebe sie frei und kann dann einen Link verschicken. Dokumente direkt per Mail versenden mache ich tatsächlich gar nicht mehr so oft.

Die Nextcloud verwaltet außerdem alle Kalender, die für das tägliche Leben notwendig sind. So synchronisieren sich sämtliche Geräte mit diesem System und meine Termine bleiben auf den eigenen Servern. Ich gebe damit nur recht wenige private Informationen an externe Dienstleister und fühle mich damit auch richtig gut. Mir geht es gar nicht um das große Misstrauen. Viel mehr finde ich es spannend, dass ich aus eigener Kraft eine Infrastruktur aufbauen kann, bei der ich meine Daten jederzeit griffbereit habe. Ich alleine entscheide somit, was damit passiert und wer Einsicht bekommt.

Webserver

Eher als kleine Spielwiese dient der Webserver unter den Homeserver Anwendungen. Auf ihm kann ich testweise Websites ans Laufen bringen, um zum Beispiel eine kleine Demo vorzustellen. Nicht gedacht ist der eigene Webserver zum Hosting größerer Projekte oder meines Blogs. Zwar wäre das technisch gesehen möglich, ich trenne jedoch stark zwischen wirklich öffentlichen Bereichen und privaten Dingen.

Alles was irgendwie privat ist, bleibt bei mir auf dem Server. Dinge, die öffentlich und dauerhaft im Internet sein sollen, werden ans Rechenzentrum ausgelagert. So schütze ich nicht nur den privaten Teil, sondern kann auch besser mit möglichen Ausfällen umgehen. Ist zum Beispiel die Internetverbindung daheim gestört, ist der Blog weiterhin erreichbar.

Im Grunde muss ich sagen, dass der Webserver daher eines der Systeme ist, die für mich am unwichtigsten sind. Ich könnte jederzeit auf ihn verzichten, ohne dass ich hierfür Einschränkungen hinnehmen muss. Für den Moment jedenfalls ist er noch in Betrieb. Ob das auf Dauer so sein wird, weiß ich allerdings nicht.

Bitwarden

Recht neu unter meinen Homeserver Anwendungen ist die Software Bitwarden. Hierbei handelt es sich um ein System zur Verwaltung von Passwörtern und Login-Daten.

Zuvor habe ich lange Zeit mit Keepass gearbeitet. Allerdings ist die Nutzung von Keepass mit mehreren Personen aus meiner Sicht nicht immer so ideal. Das war dann der ausschlaggebende Grund dafür, dass ich mich für einen eigenen Server entschieden habe. Hier kann ich meine Passwörter mit anderen Teilen oder in meinem privaten Tresor hinterlegen.

Durch verschiedene Software oder Plugins kann ich jederzeit komfortabel darauf zugreifen. Auch die Synchronisierung mit dem Smartphone oder Tablet funktioniert ziemlich gut. Endlich ist es so für mich auch möglich, am Handy ein Passwort anzulegen, das ich später auf dem PC wieder nutzen kann.

Und in Anbetracht der Flut an Passwörtern bin ich der Meinung, dass heutzutage jeder einen Passwortmanager braucht. Ohne den ständigen Zugriff auf die eigenen Login-Daten ist man sehr schnell aufgeschmissen. Spürbar war das zum Beispiel für mich, als ich vom Büro aus kurz was an der Uni nachsehen wollte. Ich hatte aber das Passwort nicht zur Hand, da es sich geändert und ich den Passwort-Container nicht synchronisiert habe. Mit Bitwarden ist das für mich zukünftig kein Problem mehr. Somit auch eine der wichtigsten Homeserver Anwendungen für mich.

Proxmox Backup Server

Okay, okay. Hier muss ich etwas klarstellen. Ja, der Proxmox Backup Server läuft bei mir in einer virtuellen Maschine und fällt daher unter die Homeserver Anwendungen. Und ja ich weiß, normalerweise ist das so wahrscheinlich nicht gedacht. Aber ich habe leider keinen Server übrig, der diese Aufgabe übernehmen könnte. Und das ist für mich gar kein Problem.

Durch das Cluster läuft der Backup Server immer dort, wo er hingeschoben wird. Das bedeutet, dass er von Haus aus schon recht ausfallsicher ist. Meine Überlegung war außerdem, dass ich ihn gar nicht auf einem eigenen Server brauche. Sollte das Cluster eines Tages ausfallen, so hat auch der Backup Server keine Funktion. Denn was soll er auch sichern?

Bei der Wiederherstellung des Clusters kann ich zeitweise einen Server als Backup Server installieren, um so meine Daten wiederherzustellen. Sobald das abgeschlossen ist, erfolgt die Installation in eine virtuelle Maschine und der zweite Server wird normal als Proxmox Server installiert.

Ja, ist aufwendig. Aber für den Moment für mich selbst mehr als ausreichend. Sollte eines Tages ein weiterer Server hinzukommen (man weiß ja nie), kann dieser die Aufgaben des Backup Servers übernehmen.

Das Smart Home ist gewachsen

Bei der Vorstellung meiner Homeserver Anwendungen wird mir immer wieder klar, wie stark die Infrastruktur in den vergangenen Jahren gewachsen ist.

Ich habe angefangen mit einem Raspberry Pi, bin übergangen zu einer virtuellen Maschine auf dem NAS, habe weitergemacht mit einem einzigen Proxmox-Server und stehe heute bei einem Cluster. Für dich mag es vielleicht etwas übertrieben erscheinen (und du hast damit Recht), aber es ist ein großer Traum.

Schon von Beginn meiner Laufbahn als Informatiker habe ich davon geträumt, eines Tages meinen eigenen Server betreiben zu können. Neidisch habe ich immer auf die gefüllten Serverschränke geblickt, die so schön blinken. Im Jahr 2022 konnte ich mir diesen Traum endlich erfüllen. Heute steht ein gefüllter Serverschrank in meiner Obhut und verrichtet wichtige Arbeiten für das tägliche Leben.

Er ist für mich weit mehr als nur ein Projekt. Es ist ein wahrgewordener Traum. Und während ich hier sitze und dir von meiner Infrastruktur erzähle, wird mir klar, dass es etwas ganz Besonderes ist. Ich bin stolz darauf, in meiner eigenen Umgebung so viel Neues lernen zu dürfen und jeden Tag ein wenig mehr von dieser Materie zu verstehen. Denn auch wenn ich im Studium viele Grundlagen in der Theorie vermittelt bekommen habe, ist die Praxis doch nochmal etwas ganz anderes.

Daher möchte ich an dieser Stelle Danke sagen. Danke an all diejenigen, die mich immer unterstützt haben. Ihr habt es mir ermöglicht, dass ich mir einen großen Traum erfüllen konnte. DANKE!


Lukas

Hey, ich bin Lukas. Seit einigen Jahren schreibe ich in meinem Smart Home Blog über Hausautomation und Digitalisierung. Als Wirtschaftsinformatiker weiß ich, wie wichtig die Vernetzung von IT-Systemen ist. Diese Erkenntnisse übertrage ich auf mein eigenes Smart Home, das ich auf Basis von ioBroker betreibe. Hierzu nutze ich die Leistung meines eigenen Server-Clusters aus dem Keller. In deinen Ohren klingt das mindestens genauso spannend, wie für mich? Dann komm mit auf unsere Reise zu einem vollwertigen, sicheren und komfortablen Smart Home. Ganz oben findest du Verknüpfungen zu Social Media, wo du mir gerne folgen darfst. Ich freue mich auf dich!

0 Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.