Azubi-Projekt: Homelab

Unser Technik-Azubi Jonas präsentiert seine private Testumgebung.

Von der Idee bis zur Umsetzung

von Jonas Veit

Warum habe ich überhaupt Homelab eingerichtet? 

Vielleicht kennen Sie noch einen unserer vorhergehenden Artikel. Hier hatte einer unserer erfahrenen Mitarbeiter sein Homelab unter Proxmox für den heimischen Datenschutz vorgestellt. Und da ich bereits im Laufe der Ausbildung viel wertvolles Wissen mitnehmen konnte, wollte ich nun selbst ein begeisterter Anwender in Sachen Homelab werden. 

Durch die Inspiration des genannten Kollegen und dem eigenen Antrieb so wenig Daten wie möglich an Daten-Kraken wie Google, Meta oder Amazon – alias die großen Tech Giganten – preiszugeben, begann bei mir also das Abenteuer Homelab.

Stand der Dinge

Aus anfangs ein paar wenigen Services und Tools sind mittlerweile deutlich mehr geworden: So läuft bei mir inzwischen ein 4-Node Proxmox-Cluster mit On-Site- und Off-Site-Proxmox-Backup-Server über Checkmk Monitoring bis hin zur OpenSense Enterprise-Level Firewall.

Zunächst mein Setup

Physischer Netzwerkaufbau

Wie all dies auf der Hardware und Netzwerkseite zusammenspielt, sehen Sie auf meinen Blockschaltbildern. Auf der physischen Seite gibt es zwei große getrennte Bereiche. Ein 10 Zoll Rack in der Wohnung sorgt für Internet und Wifi im Wohnbereich, während im Keller die lauten und viel Wärme produzierenden Server stehen.

Für die Hardware im Netzwerkschrank wurden eine FRITZ!Box 7530 AX mit aktuellem FRITZ!OS, eine FRITZ!Box 7530 mit aufgespieltem OpenWrt, mehrere Netzwerk-Switches sowie ein Mini-PC mit ausreichend LAN-Ports für die OPNsense-Firewall verwendet.

Der Proxmox VE Cluster im Keller läuft auf einer Sammlung aus Mini PCs und Desktop PCs. Durch glückliche Fügung kam außerdem ein Enterprise-USV hinzu. Ein 1 GbE 24-Port-Switch sorgt zudem für die Netzwerkverbindungen innerhalb des Kellers/Cluster sowie dem Link nach oben in die Wohnung.

Netzwerkaufbau Hardware.drawio

Mein logisches Netzwerklayout

Logisches Netzwerk.drawio

Meine Applikationen

Im Nachfolgenden die wichtigsten Tools, was sie können bzw. wofür sie gut sind. 

Invidious

Wie die meisten aus der Generation Z, ist YouTube auch für mich ein täglicher Begleiter. Neben Netflix, Amazon Prime, Disney+ und vielen anderen Streaming-Anbietern gibt es leider keinen anderen Anbieter, der eine so breite Masse an „kostenlosem“ Content bietet.

Invidious

Hierbei ist das kostenlos bewusst in Anführungszeichen gesetzt, denn man bezahlt mit nichts anderem als seiner Zeit und seinen Daten. Jedes angeschaute Video zählt hinein in den Algorithmus um zu bestimmen welches Video interessant sein könnte und damit welche Werbung man als nächstes nach 5 Sekunden überspringen muss. 

Um dieser endlosen Werbungsflut zu entkommen, wurde Invidious gefunden. Hierbei handelt es sich um ein alternatives Frontend für YouTube, es sind also immer noch dieselben Videos, jedoch ein simpleres Interface. Vorteil hierbei ist das losgelöst sein von Google und dem Google Account. Zudem ist die Startseite nicht mehr eine endlose Versuchung noch mehr und noch mehr Videos anzuschauen, da lediglich neueste Videos der abonnierten Kanäle angezeigt werden:

https://github.com/iv-org/invidious 

TrueNAS Apple Backup

Von TrueNAS haben Sie bereits hier einmal gelesen, eine populäre NAS-Lösung mit ZFS unter der Haube. OpenSource und somit kostenlos, praktisch als NAS-Lösung für den Privatgebrauch in Homelab-Kreisen.

TrueNAS

So wurde eine TrueNAS VM als NAS verwendet. Auf Ihr läuft als App aufgrund der einfacheren Verwaltung die Invidious Instanz, sowie 2 ZFS Pools. Davon dient ein Pool als Off-Site Backup für eine TrueNAS basierende Homelab Instanz des besten Freundes, während der 2. Pool als SMB-Share erreichbar ist, um eine kritische Rolle zu erfüllen.

Als Apple Backup ist TrueNAS aufgrund der eingebauten TimeMachine Kompatibilität ihrer SMB-Shares wunderbar geeignet. Somit lassen sich sehr einfach Apple Backups des Macbooks erstellen und damit auch die des iPhone, sowie iPad auf einen SMB-Share bewegen. Statt teuer iCloud-Storage bezahlen zu müssen ist dies eine kostengünstigere Alternative.

https://www.truenas.com/docs/scale/shares/smb/setupbasictimemachinesmbshare/

Gitea (Mirror)

GitHub ist ein der größten Plattformen wenn es um Code und Software geht. Nahezu jede Art von Unternehmen in der Tech-Branche haben ihren eigenen Github Account, sei es mit privaten oder öffentlichen Repos im Falle von OpenSource Software. 

Gittea Mirror

Auch kann man viele interessante Projekte und OpenSource Software auf Github finden. Um diese zu speichern und schnell wiederzufinden, gibt es 2 verschiedene Services die helfen den Durchblick zu behalten. Zum einen gibt es Gitea, eine selbsthostbare Variante von Github mit nahezu demselben Funktionsumfang. 

Als Bindeglied zwischen der privaten Gitea Instanz und dem öffentlich verfügbaren Github fungiert Gitea Mirror. Dies ist eine Art Brücke zwischen den beiden Services, welches private Repositories in Gitea synchron mit öffentlichen auf Github hält. 

Um auszuwählen welche Repositories erstellt und synchron gehalten werden sollen, können verschiedene Methoden gewählt werden, manche Unternehmen nutzen dies um beispielsweise lokale Backups der auf Github veröffentlichten Repositories vorzuhalten, während andere automatisch alle neu generierten einzelner Nutzer/Organisationen klonen wollen.

https://github.com/RayLabsHQ/gitea-mirror

Bambuddy

Seit langem steht schon ein Bambulab 3D Drucker in meinem Keller. Ursprünglich war er nur als temporäre Leihgabe des besten Freundes für einige wenige Wochen gedacht.

Bambuddy

Frei nach dem Motto: Nichts hält so lange wie ein Provisorium, steht er natürlich immer noch dort. Leider haben Bambulab Drucker eine Vorliebe für ihre eigene Software. Populäre Lösungen für 3D Drucker wie etwa Octoprint lassen sich zudem nur mit einigen Hürden unter Verwendung von Beta Plugins damit verbinden. 

Hier kommt Bambuddy ins Spiel: Er stellt einen ähnlichen Service wie Octoprint bereit, funktioniert jedoch mit Bambulab Druckern, zumindest dem A1 welcher hier in Verwendung ist tadellos – und das komplett losgelöst von der Bambulab Cloud. Es kann dennoch eine Verbindung zur Bambu Cloud hergestellt werden für das Synchronisieren von Slicer Presets und einigen anderen Informationen.

https://github.com/maziggy/bambuddy

Karakeep

Mit dem Unternehmenslaptop, privatem Computer für Arbeit und Ausbildung sowie Gaming PC sind schon drei Systeme in Verwendung.

Karakeep

Kommen noch iPad, iPhone und Macbook hinzu, sind wir bereits bei sechs digitalen Geräten. Auf allen kommen Ideen und Informationen von mir zusammen, die ich später auch noch wiederfinden möchte. 

Um dem Chaos jedoch Herr zu werden und nicht auf Google oder andere Cloud Anbieter vertrauen zu müssen, bietet sich Karakeep an. Mittels Subdomain von jedem Gerät erreichbar, können hier Links gespeichert werden. Das Funktioniert ganz ähnlich wie bei Lesezeichen in einem Browser. Mit eigener App wird das Ganze zudem noch sehr vereinfacht möglich auf Handy und Tablet. Zudem speichert der Service eine Kopie der Website, die ich auch nach Löschung des Artikels oder Verschieben der Website weiterhin anschauen kann. 

https://github.com/karakeep-app/karakeep

Romm

Früher war alles besser und schöner! Ob dies wahr ist muss jeder für sich selbst entscheiden. Fakt ist jedoch dass viele der alten Videospiele ein wahrer Nostalgie Trip in die Kindheit sind. Um diese nicht zu verlieren und weiterhin Klassiker wie Mario Kart auf der Gamecube oder Mario 64 zu genießen gibt es die wundervolle Software namens Romm. 

Romm

Angelehnt an die Bezeichnung der Dateien alter Videospiele welche oftmals ROMs genannt werden. Mittels API-Abfragen lassen sich über verschiedene Datenbanken die eigene ROM Sammlung mit Metadaten und Cover Art versorgen. Eingebaut ist auch der EmulatorJS womit sich viele der Spiele direkt im Browser spielen lassen. Praktisch ist zudem die eingebaute Speicherfunktion, mit welcher sich plattformunabhängig Spielstände speichern und von einem anderen Endgerät weiterspielen lassen. 

https://romm.app/

Mein Fazit und meine Beweggründe

Nahezu jede Woche werden neue gestohlene Datensätze von verschiedenen Anbietern bekannt. Zudem wird die Menge an gesammelten Daten durch Social Media Plattformen und verschiedensten anderen Services mit jeder Minute größer. 

Was mit einem PiHole zum Blockieren von Werbung begann, wurde bei mir bald zu einer Flut an selbstgehosteten Services. Immer mehr dieser OpenSource Alternativen lösten Angebote der großen Tech-Giganten in meinem privaten Universum ab. Zusammen mit der eigenen Domain und dem Anwachsen des Clusters auf 4 Nodes habe ich auch genügend Rechenpower für noch weitere Container und VMs bereitgestellt. 

Ein letztes großes Bollwerk waren E-Mail-Adressen bei Google sowie der Google-Account zum einfachen Login bei einer Menge an Services. Nach dem langwierigen Umstellen auf Proton Mail und deren Aliase mittels SimpleLogin wurde jedoch auch diese Hürde bewältigt. Der Google Account konnte mit dem Aufsetzen von Invidious dann ebenfalls noch weichen. 

Mittels SimpleLogin lassen sich anonymisierte E-Mail-Adressen für jeden Login/Service erstellen welche nach Belieben deaktiviert oder gelöscht werden können, dabei kann sogar von diesen Aliasen geantwortet werden und zwar aus der E-Mail-Inbox des Accounts heraus. 

Zugegeben: Es war auch eine aufwändige Reise durch Foren, Reddit Kommentare und Stack-Exchange Fragen, bei mal wieder nicht funktionierender Software oder wiederkehrenden Error 404 aus dem Nichts heraus. Aber ich habe es hinbekommen. 

Abschließend ist auch zu vermerken, dass durch dieses nicht enden wollende Abenteuer eine viel höhere Sensibilität für geteilte Daten entstanden ist. „Das Internet vergisst nie!“ wird hier einmal mehr schmerzlich bewusst. Was zu Beginn ein harmloses Übel an gesammelten Daten war, wird heutzutage im Zeitalter der KI schnell zu Trainingsdaten für die nächste Generation Chatbots. 

Als Ausblick für die Zukunft wird noch weitere Software folgen. So ist eine Einführung eines VPN Servers auf OpenSense geplant sowie eine Pangolin Instanz als Reverse Proxy für den externen Zugriff diverser Services.

Mal sehen, wohin mich das Projekt noch treibt.

starline_kontur_Ammar 300
Jonas Veit
Technik

Experte für TrueNAS und Proxmox