Samstag, 4. April 2020

Smart Home Teil 9 von X - Günstiger Home Server

Ein Raspberry Pi und eine Fritzbox 7590 teilten sich bis dato die Smart Home Aufgaben in unserem Hause. Die Heizkörper und einige Steckdosen werden auch nach wie vor von dem Router gesteuert, während sich bis jetzt der Einplatinencomputer Raspberry um den Rest kümmerte. Warum dieser jetzt durch ein performanteres Gerät ersetzt habe, will ich in diesen Beitrag klären.

Geschichte

Wie in diesem Beitrag geschrieben, startete mein Smart Home mit einem Raspberry Pi 3 als zentrale Datensammelstelle. IoBroker lässt sich problemlos darauf installieren und läuft auch mit einigen (Anzahl) Adaptern unproblematisch. Mit der Zeit wurden es aber immer mehr, sodass der eng bemessene Hauptspeicher des Pi3 von nur 1GB schnell erschöpft war. Dieser wurde dann 2019 durch den potenteren Pi 4 mit 4GB RAM ersetzt. Eine Wohltat.
Links: der neue Pi 4; rechts: Pi 3

Rein fürs Smart Home gab es eigentlich keinen Grund auf einen neuen Server umzusteigen. Alles läuft mit den 4 GB problemlos, und eine Vielzahl von Adapter kann ebenfalls installiert werden. Allerdings merkte man bei der Erstellung von Visualisierungen die eingeschränkte Rechenleistung des kleinen Computers. Gut, damit kann man aber leben....

Wenn man aber noch andere Services am heimischen Server betreiben will zeigen sich, bei der im Raspberry verbauten ARM Prozessorarchitektur, schnell die Grenzen auf. Weiters werden diese Rechner auch nicht von jeder Software unterstützt, sodass zu den X86 Prozessoren, wie sie in normalen PCs oder Laptops verbaut werden, zurückgegriffen werden muss. Mit dieser Architektur ist man deutlich flexibler was Softwareanwendungen betrifft.

Anforderungen

Logischerweise muss ioBroker darauf laufen. Dann hatte ich noch einen zusätzlichen Raspberry Pi im Netzwerkschrank der PiHole installiert hatte, wodurch ein Werbeblocker fürs ganze Netzwerk realisiert wird.
Für unterwegs hatte ich mal mit Nextcloud experimentiert, da dies um einiges schneller ist, als der Web-Auftritt meiner bestehenden Netzwerkfestplatte. Nextcloud ist zwar auch für den Raspberry Pi verfügbar, aber in der neuesten Version 18, nur ohne dem OnlyOffice-Paket. Letzteres öffnet im Web-Browser eine Applikation, welche das Bearbeiten von Word-, Excel- oder Powerpoint Dokumenten online erlaubt. Dh, die Dokumente müssen nicht auf der lokalen Festplatte zwischengespeichert und dann wieder auf die Cloud (Netzwerkfestplatte) geschoben werden. Alles kann im Browser bearbeitet werden. Diese Funktion ist aufgrund der höheren Rechenleistung den x86 Prozessoren vorbehalten.
Zu guter Letzt wäre ein VPN-Server nicht schlecht.


Betriebssystem

Für derartige Anwendungen sind immer mehr diese Container bzw.  Virtualisierungsumgebungen im Kommen. Hier werden die einzelnen Anwendungen, also ioBroker, Nextcloud,... in isolierter Umgebung, den "Containern" betrieben. Sollte mal ein Programm defekt sein, wirkt sich das nicht auf das komplette Betriebssystem aus, sondern nur auf den jeweiligen Container. Wenn dieser nicht mehr zu reparieren ist, braucht nur der Container getauscht werden und der Rest, die anderen Container laufen ganz normal weiter.
Docker ist hier sicher einer der bekanntesten Vertreter. Dieses Programm kann auf den unterschiedlichsten Betriebssystemen installiert werden und stellt dann die Containerwelt zur Verfügung. Einen Schritt weiter geht hier Proxmox, welches sein eigentliches Grundsystem mit den  Containern teilt, wenn diese das gleiche Betriebssystem wie das Grundsystem haben. Linux Debian in diesem Fall. Aber auch komplett andere Betriebssysteme wie Windows laufen auf der Virtualisierungsumgebung. Die "geteilten Container" sind aber deutlich schlanker und benötigen weniger  Ressourcen.
Docker macht auf mich einen zu komplizierten Eindruck und darum habe ich mich für Proxmox entschieden.
Über eine Weboberfläche lässt sich Proxmox recht einfach bedienen.

Hardware

Natürlich muss die komplette Software auch auf der Hardware laufen, sonst machts ja keinen Sinn 😉. Der Stromverbrauch darf natürlich auch nicht zu vernachlässigen sein und sollte eher gering ausfallen wobei im Bedarfsfall der Rechner nicht zu schwach auf der Brust sein darf.
Die eierlegende Wollmilchsau eben...
Ein Desktop Rechner kommt nicht infrage. So benötigt mein (Desktop-)Rechner im Leerlauf (ohne Bildschirm) knapp 30W was im Jahr 40€ Stromkosten bei Dauerbetrieb entsprechen würden. Darum sollte ein Prozessor für mobile Anwendungen zum Einsatz kommen, da diese auf geringen Stromverbrauch ausgelegt sind. Ein Notebook/Laptop mit ausgeschaltetem Display wäre daher ideal. Aber auch in Mini-PCs werden derartige Kerne verbaut, wie dies zB. bei der Intel-NUC Serie, einer der bekannteren Vertreter, der Fall ist.
Die Dinger sind aber nicht gerade billig und somit habe ich mich auf dem Gebrauchtmarkt umgesehen. Ohne hier jetzt gefährliches Halbwissen verbreiten zu wollen, habe ich mich für einen Chip aus der Intel i3 Serie entschieden. Soweit ich das verstanden habe klassifiziert Intel seine Prozessoren in i3, i5 , i7  und neuerdings auch noch als i9 Prozessoren. I3 ist der schwächste aber billigste und i9 der beste und teuerste Prozessor. Die Zahl danach verrät die Generation und demnach das Alter des Prozessors. Die restlichen 3 Zahlen ergeben die genau Type, wobei größer immer besser ist.
Mein Mini-Pc hat zB. den i3-2350M verbaut. Demnach ist es ein Kern der 2. Generation und dem M unterstelle ich eine mobile Anwendung, also stromsparend. Aktuell wird die 10. Generation gebaut, was bedeutet, dass mein Prozessor nicht mehr der Jüngste, aber mehr als ausreichend ist. In meinem Notebook ist ein I3-M 330 verbaut, welcher noch älter aber trotzdem zu gebrauchen ist.
Verbaut ist der i3 in einem Fujitsu Q900 Mini-PC. Da Fujitsu eher das professionelle Marktsegment abdeckt, hatte ich bezüglich Dauerbetrieb über Jahre hinweg keine bedenken.
An der Front sind 2 USB3.0 Anschlüsse verbaut (blau). Auf das sollte man achten, denn wenn man irgendwann mal den Speicher erweitern, bzw. ein NAS daraus bauen will, wird man mit den langsamen USB 2.0 Anschlüssen an der Rückseite nicht viel Freude haben.

Umbauten

Es ist ja hier ein Schrauber-Blog, darum kann ich den Beitrag nicht ohne Umbauten beenden 😁.
Die interne 500GB Festplatte wird durch eine SSD ersetzt. Die sind zum einen deutlich schneller, haben keine mechanisch beweglichen Teile verbaut und sind dadurch stromsparender. Einzig permanente Schreibvorgänge würden zum Problem werden.
Eine 120GB SSD kostet etwa 20€. Normalerweise sind die Crucial die günstigsten, aber an diesen Tag waren es die Sandisk. Der Geschwindigkeitsunterschied ist echt krass. Meine alten Notebooks, zB. der oben angesprochene i3-M330 benötigte mit normaler Festplatte 2-3Minuten zum Hochfahren. Mit einer SSD geht das in zackige 30 Sekunden. Das hat das Gerät vor der Mülltonne bewahrt.
Den Verbauten DVD-Brenner habe ich aus Stromspargründen (0,5W) ebenfalls entfernt. Die Größe dieser Laufwerke ist standardisiert, und so kann man, wenn man mehr speicher braucht, mit einem sehr günstigen Adapter, einen Fesplattenrahmen, eine zweite Festplatte einbauen. Auf die Dicke des Laufwerks sollte geachtet werden.












Die verbauten 4 GB Arbeitsspeicher wären zwar ausreichend aber knapp gewesen, darum habe ich weitere 4GB RAM spendiert. Die 8GB sollten für das Meiste reichen. Ausreichender Arbeitsspeicher reduziert auch die Schreibzyklen auf die SSD 😉.

Probelauf und Installation
Mit Proxmox alleine liegt der Stromverbrauch bei 9,5W. Mit allen Container installiert: 11W. Das ergibt eine Stromrechnung von etwa 15€ pro Jahr 👍

Programme


  • PiHole: Ist ein Werbeblocker für das ganze Netzwerk.
  • NextCloud: Damit macht man seine vorhandene Netzwerkfestplatte wieder Fit für die Zukunft. Die Laufwerke können als externe Speicher eingebunden werden. Zusätzlich steht seit der Version 18 OnlyOffice zur Verfügung und es gibt auch Apps für unterwegs. Genial! Kleiner Tipp: bei externer Netzwerkfestplatte einen privilegierten Container verwenden und die Laufwerke mounten. Das macht das System wesentlich performanter. Nextcloud ist allerdings beim Installieren nichts für schwache Nerven. Es verhält sich sprichwörtlich so wie die hungrige Diva die noch keinen Schokoriegel bekommen hat...
  •  





  •  IoBroker
  • Jellyfin : Ein zentrales Mediacenter. Somit muss nicht mehr jedes Mediacenter oder Smart-TV upgedatet werden, sondern es passiert Zentral am Server. Jeder Browser im PC oder Handy wird zum Mediacenter.
  • OpenVPN: ermöglicht VPN Verbindungen von außerhalb des Netzwerks.

Zukünftig plane ich auch alle Fernsehsignale via TVHeadend ins Netzwerk zu übertragen. Erschwerend kommt bei uns Österreicher aber hinzu, dass die meisten Sender verschlüsselt übertragen werden.

Danksagung

Das ist natürlich nicht alles auf meinen Mist gewachsen, sondern habe ich mir von den Youtuber Daniel und seinen Kanal Apfelcast abgeschaut. Lob und Anerkennung, hier an dieser Stelle!
Playlist zum Home Server
Playlist zum Media Server

Weiterführende Links:




Kommentare:

  1. Hallo Stefan,

    das Thema Sat>IP interessiert mich sehr. Hab selber bei mir sowas am Laufen. Darf ich dir hier ein paar Fragen dazu stellen??
    Welche TV Karte verwendest du? Funktioniert das Weiterreichen der TV Karte an den Container (ich denke tvheadend läuft in einem) ohne Problem???
    Wie willst du das Problem mit der ORF Karte lösen?
    Was verwendest du als Endgerät beim Fernseher?

    lg
    Christoph

    AntwortenLöschen
    Antworten
    1. Artikel folgt demnächst. Läuft alles problemlos!

      Löschen