- Erfahrungsbericht darüber, wie ein 2018 zusammengebauter Gaming-PC in einen Heimserver umgewandelt wurde, um eine Umgebung für Datenspeicherung, Backups und den Betrieb selbstgehosteter Apps aufzubauen
- Installation von TrueNAS Community Edition und Konfiguration von zwei 8-TB-HDDs als RAID 1 zur Datenredundanz
- Einsatz von Open-Source-Apps für Self-Hosting wie Immich, Backrest, Scrutiny, Mealie und Ollama für Fotoverwaltung, Backups, Laufwerksüberwachung, Rezeptverwaltung und sogar das Ausführen von LLMs
- Externer Zugriff erfolgt über Tailscale VPN; künftig ist eine bessere Erreichbarkeit der Dienste durch die Einrichtung eigener Domains geplant
Hardware-Konfiguration
- Der 2018 zusammengebaute Gaming-PC wurde unverändert weiterverwendet
- CPU: AMD Ryzen 5 2600X (6 Kerne, 3,6 GHz)
- Mainboard: ASRock B450 Pro4 ATX AM4
- RAM: G.Skill Flare X 16GB DDR4-3200 (2x8GB)
- GPU: EVGA GeForce GTX 1070 Ti 8GB
- Gehäuse: Fractal Design Meshify C
- Netzteil: SeaSonic PRIME Gold 650W
- Speicher-Konfiguration
- HDD: Western Digital Red Plus 8TB x2 (während der Winterferien gekauft)
- SSD: Samsung 850 Evo 500GB (für selbstgehostete Apps mit Bedarf an schnellem Lesen/Schreiben)
- NVMe: Western Digital Blue SN550 500GB (für die Installation des TrueNAS-OS)
TrueNAS-Betriebssystem
- Installation von TrueNAS Community Edition (Version 25.10.1, Goldeye) auf dem NVMe-Laufwerk
- Ein Linux-basiertes, auf NAS spezialisiertes Betriebssystem, mit dem von allen Geräten im Netzwerk auf den Dateispeicher zugegriffen werden kann
- Bietet eine Snapshot-Funktion, um Datenverlust zu verhindern
- Selbst wenn eine Datei versehentlich gelöscht wird, kann sie aus einem früheren Snapshot wiederhergestellt werden, der diese Datei enthält
- Eine Datei ist erst wirklich gelöscht, wenn im System kein Snapshot mehr existiert, der sie enthält
- Automatische Erstellung stündlicher, täglicher und wöchentlicher Snapshots; nach einer festgelegten Zeit werden alte Snapshots automatisch gelöscht, um Speicherplatz zu sparen
- Die zwei 8-TB-HDDs sind als RAID 1 (Mirroring) konfiguriert, sodass die Daten auch beim Ausfall eines Laufwerks vollständig erhalten bleiben
Selbstgehostete Apps
-
Scrutiny
- Ein Web-Dashboard zur Überwachung des Zustands von Speicherlaufwerken
- Liest und visualisiert Metriken wie Temperatur, Betriebsstunden und Lesefehler, die von der in HDDs und SSDs integrierten S.M.A.R.T.-Firmware (Self-Monitoring, Analysis, and Reporting Technology) erfasst werden
- Zeigt historische Trends im Dashboard an und ermöglicht so die frühzeitige Erkennung von Laufwerksausfällen
-
Backrest
- Ein Web-Frontend für restic (ein Kommandozeilen-Backup-Tool)
- So konfiguriert, dass tägliche Backups automatisch in einem Objektspeicher-Bucket von Backblaze B2 gespeichert werden
-
Immich
- Eine der beliebtesten Open-Source-Apps für Self-Hosting zur Verwaltung von Fotos und Videos
- Unterstützt automatisches Backup von Fotos und Videos mobiler Geräte über iOS-/Android-Apps
- Gut geeignet, wenn man die Abhängigkeit von Google Photos oder iCloud verringern möchte; wird derzeit für das Backup von Fotos und Videos auf dem Smartphone genutzt
-
Mealie
- Ein Tool zur Rezeptverwaltung, das die Meal-Prep-Erfahrung deutlich verbessert hat
- Wenn man nur die URL eines auf Websites wie NYT Cooking gefundenen Rezepts eingibt, werden Zutaten und Zubereitung automatisch gescraped und in der Bibliothek gespeichert
- So lassen sich Online-Rezepte, die man später ausprobieren möchte, einfach verfolgen und verwalten
-
Ollama
- Ein Backend zum Ausführen verschiedener KI-Modelle
- Führt LLMs wie
qwen3.5:4b, gemma3:4b sowie Vektor-Embedding-Modelle wie qwen3-embedding:4b aus
- Alle Modelle sind klein genug, um in den 8GB VRAM der GPU zu passen
- Der Vorteil ist, dass die Ausführung der Modelle vom Laptop auf das Homelab ausgelagert werden kann
Fernzugriff
- Für den externen Zugriff auf Daten und selbstgehostete Apps wird Tailscale (ein Plug-and-Play-VPN-Dienst) verwendet
- Tailscale ist auf WireGuard aufgebaut und stellt einen sicheren Tunnel ins Heimnetzwerk bereit
- Es ist nicht nötig, den Homelab-PC dem öffentlichen Internet auszusetzen
- Auf allen Geräten, die per Fernzugriff zugreifen sollen, muss die Tailscale-App installiert und die Netzwerkauthentifizierung durchgeführt werden
Zukünftige Pläne
- Derzeit muss beim Zugriff auf Apps die Kombination aus IP-Adresse + Portnummer des Geräts direkt eingegeben werden
- Da alle Dienste dieselbe IP teilen, gibt es das Problem, dass ein Passwortmanager die Anmeldedaten der einzelnen Dienste nicht unterscheiden kann
- Künftig sollen alle Dienste eigene Domainnamen erhalten, um Erreichbarkeit und Verwaltung effizienter zu machen
5 Kommentare
Ich habe mich über POGO, BeagleBone Black und Lenovo-Mini-PCs bis hin dazu entwickelt und bin seit vorletztem Jahr beim N100 angekommen. Wenn man die Stromkosten berücksichtigt, ist er für die Funktionen abseits der GPU genau richtig.
Wenn diese Person ihr Homelab schon in diesem Ausmaß aufgebaut hat, hätte ich Angst vor der Stromrechnung.
Selbst wenn es ein Gaming-PC ist, scheint die Sorge um die Stromrechnung nicht allzu groß zu sein, da er nicht dauerhaft unter Volllast läuft.
Ein 2600X verbraucht selbst im Idle schon etwa 30 W, und die GPU dürfte ebenfalls rund 10 W ziehen, daher liegt der Verbrauch deutlich höher als bei einem Homelab mit auf niedrigen Stromverbrauch ausgelegter CPU.
Nur CPU+GPU dürften in etwa einem N100 mit zusätzlich 3–4 Festplatten beim Idle-Verbrauch entsprechen.
Hacker-News-Kommentare
Alle meine Dienste teilen sich dieselbe IP, daher ist der Passwort-Manager oft unsicher, welche Zugangsdaten er verwenden soll
In Bitwarden kann man den Matching-Algorithmus ändern; wenn man statt des Standardwerts „starts with“ einstellt, lassen sich falsche Eintragszuordnungen vermeiden
Allerdings erscheint nach dieser Änderung eine Warnung, dass „das möglicherweise nicht beabsichtigt ist“, was etwas lästig ist
In einer Homelab-Umgebung lässt sich mit dnsmasq leicht Wildcard-DNS einrichten, und auch ohne direkten Router-Zugriff reicht eine hosts-Datei völlig aus
mdns kann aus demselben Grund ebenfalls genutzt werden, ist aber etwas aufwendiger einzurichten
Dazu kommt Tailscale, sodass auch von außen Werbeblockierung funktioniert und ich auch außerhalb des Hauses auf meine Dienste zugreifen kann
Zum Schluss habe ich noch einen NGINX-Reverse-Proxy ergänzt, aber eigentlich läuft es auch ohne schon völlig ausreichend
Jeder Dienst wird als
<service>.<yourdomain>.<tld>getrennt, und HTTPS gibt es kostenlos dazuRemote-Zugriff ist ohne Tailscale möglich, und mit Cloudflare Access funktionieren auch Google- oder Github-Logins
Ich nutze ebenfalls ein ähnliches Setup
Da es zugleich als Workstation dient, ist die Hardware etwas leistungsstärker
Mit nginx + letsencrypt-Wildcard betreibe ich mehrere Subdomains, und statt tailscale verbinde ich das Familiennetzwerk per wireguard
Über Jellyfin streame ich Filme/TV, und mit Mopidy + snapcast verteile ich Musik auf mehrere Lautsprecher
Ein NAS läuft mit Ubuntu + ZFS-Mirroring, und mit Home Assistant steuere ich die Automatisierung
Frigate verwaltet die Sicherheitskameras, und mit Forgejo betreibe ich ein privates Repository
Über SDR tracke ich auch Flugzeuge, und alle IoT-Geräte im Haus werden vollständig lokal gesteuert
Es wird geraten, lieber dedizierte Server-Hardware getrennt zu betreiben
Ich nutze immer noch TrueNAS auf FreeBSD-Basis
Schade, dass die neue Version auf Linux umgestellt wurde, auch wenn das für andere vielleicht die bessere Wahl ist
Bei mir sind NAS, Virtualisierung und Routing jeweils auf separate Hardware verteilt
Das neue TrueNAS war langsamer als früher, aber durch das Docker-artige App-Management wohl gut für Einsteiger oder kleine Unternehmen geeignet
Je mehr Infrastruktur man aufgebaut hat, desto geringer werden die Grenzkosten für neue Experimente, deshalb halte ich all diese Versuche für sinnvoll
Meist reichen Linux + NFS oder SMB völlig aus
Wenn man unnötige Schichten reduziert, lässt sich alles viel stabiler betreiben
Wenn am Wochenende Internet oder Filme für die Familie nicht funktionieren, ist der Frust groß
Schade, dass ein Mac Mini als Server so energieeffizient ist
Später ist geplant, NAS und Compute-Server zu trennen
Der Autor des Beitrags nutzte Restic + Backblaze B2, ich bevorzuge jedoch die Kombination Restic + BorgBase
BorgBase punktet mit einfacher Preisgestaltung und gutem Service,
und auch Pikapods vom selben Unternehmen ist für Homelab-Nutzer interessant
Mit 1 TB für 5 Dollar im Monat ist das günstiger
Die meisten sprechen nur über Cloud-Backups, aber ich denke über einen Backup-Server im Haus eines Freundes nach
Hardware ist günstig, Software ist Open Source, und Datenschutz ist der schwierige Teil
Dank Wireguard oder Tailscale sind solche Offsite-Backups deutlich einfacher geworden
Mich würde interessieren, ob das jemand auf diese Weise umgesetzt hat
Dasselbe soll später auch auf das Haus eines Freundes ausgeweitet werden
Fotos verwalte ich mit Immich statt mit iCloud, und dank Tailscale ist Privatsphäre einfacher sicherzustellen
Mit ZFS + zrepl repliziere ich Snapshots, und den Problemlösungsprozess teile ich als von KI aufbereitete Zusammenfassung
Anfangs wurde lokal gesichert, danach habe ich die Festplatte physisch transportiert und nur noch inkrementell synchronisiert
Mit der untrusted-peer-Funktion von Syncthing kann man sogar Speicherplatz bei Freunden nutzen und die Daten trotzdem verschlüsselt halten
PCs fürs Homelab verbrauchen deutlich weniger Strom als gewöhnliche Desktop-Rechner
Der Desktop im Beispiel liegt bei 600 kWh im Jahr, mein HP EliteDesk dagegen eher bei 100 kWh
Wenn keine GPU gebraucht wird, reicht auch ein Laptop völlig aus
Einen älteren Gaming-PC für TrueNAS oder OMV zu nutzen, ist eine gute Wahl
HDDs sollten aus Stabilitätsgründen per SATA statt USB angeschlossen werden
Im Scherz wird angemerkt, dass die HDD-Preise wegen der Nachfrage aus AI-Rechenzentren weiterhin hoch sind
Über BIOS- und powertop-Einstellungen lässt sich der Energiesparbetrieb optimieren
Andere Dienste auf ein NAS-OS zu setzen, fühlt sich wie eine verkehrte Struktur an
Sinnvoller erscheint es, NAS-Funktionen eher auf ein gewöhnliches Server-OS aufzubauen
Die meisten Dienste laufen bare metal, nur Dinge wie Home Assistant oder Nextcloud isoliere ich in Containern
Ich baue gerade einen auf Talos Linux basierenden Kubernetes-Cluster über mehrere Häuser hinweg auf
Verbunden wird alles mit Wireguard, und in jeder Zone steht eine ZFS-Box für Snapshot-Replikation
Traefik dient als Gateway, und mit CrunchyPGO werden Leader und Follower getrennt
Ich betreibe TrueNAS als VM auf xcp-ng
Einen dedizierten SAS-Controller habe ich per Passthrough angebunden, früher lief alles auf esxi, inzwischen wurde komplett auf xcp-ng migriert
DNS ist mit bind9 eingerichtet, der Reverse-Proxy mit nginx
Auf einem Dell OptiPlex Micro laufen zusätzlich weitere VMs
Die meisten Homelabs erzeugen keine hohe Last, daher sind RAM-Kapazität und Energieeffizienz die entscheidenden Faktoren
Eine stromsparende 4-Core-Maschine reicht völlig aus
Da fast keine AI-Berechnungen anfallen, ist keine Desktop-Klasse-Leistung nötig