A Modest Homelab


I’ve been an avid computer builder since my college days, and that transitioned naturally into homelabbing and self-hosting. Like any self-respecting homelabber, my setup has undergone countless iterations, and it will never be finished. But I’m pretty happy with my most recent work.

The whole homelab fits on one shelf:

Fractal Node 804

The heart is a machine that serves as a KVM virtualization host and ZFS storage server. Using virtualization and containerization (Docker), it also functions as a router/firewall (pfSense), cloud storage (Nextcloud), password manager (Bitwarden), media server (Jellyfin), blog (WordPress), logs/metrics/alerting system (Elasticsearch, Logstash, Kibana), workstation (Windows), and more!

AsRock Rack ROMED4ID-2, AMD EPYC 7302P 16-core

The massive CPU comes with gobs of ECC RAM, I/O for days, and a pair of 10GbE NICs. The result is pretty overkill, but I didn’t let that stop me.

VM storage is a mirror of enterprise-grade SSDs. By the way, after years of scrapped fingers and hands from working on SFF builds, I have decided to always over-provision space – just look at how roomy this case is!

General data storage is a RAID 10 of spinners. Tons of room to expand. As an aside, I went all in on ZFS with this round of upgrades after over a decade of using MD raid, and I couldn’t be happier. Volume and snapshot management is a dream, and raw encrypted send is really cool!

Rounding out things hardware-wise are a managed switch, a UPS, and a pair of UniFi WiFi access points. That’s it. There’s not even a physical router device!

This last change was particularly fascinating to me. Virtualizing and containerizing apps to avoid maintaining extra hardware is a no-brainer these days, but virtualizing even the router/firewall is rare even in a homelab. It was a move I went back and forth on quite a bit, since any work on the monolith machine means my Internet is down. But the advantage of deprecating yet another piece of equipment and running on much nicer hardware (10GbE NICs, redundant disks, ECC RAM, overpowered CPU) than a typical router was too tempting.

Router on a stick

I had been running a router on a stick, aka one-armed router, using a NUC mini-PC and managed switch for years. In this setup, there’s only one physical NIC, so everything has to be a VLAN including the WAN/Internet. This made the move to full-on virtualization easy, since I already had pfSense configured to share NICs with everything else in the monolith machine. It works great, but we’ll see if I stick with it.

With my homelab, I’m typically satisfied if I can make 5 years without major maintenance or upgrades. Fingers crossed!

,