Home Lab

Home Lab Current Homelab setup. This diagram is only concerned with the always present (and mostly always running) nodes, we of course have wifi and other clients, but that is not interesting. Everything except the TrueNAS and our workstation VMs is managed using Ansible as far as basic maintenance goes.

It all started with the DNS and a desire to have a NAS. The NAS was supposed to be built on top of the Odyssey SBC with 3 HDDs, as a tiny, power efficient NAS. I even designed a really compact custom case to hold everything, but it all folded on one little detail.

First dedicated Home Lab cabinet May 2022, the first dedicated Home Lab cabinet. My old laptop (top) running the home automations and the custom NAS (blue box, right) with the Odyssey SBC and 3 IronWolf disks inside.

The NAS started having problems with SATA connectivity under heavy load. The issue was caused by the M.2 to SATA expander card - no amount of cooling and SATA cable replacements fixed the occasional SATA checksum errors and timeouts. These never caused any data loss, but made using the NAS annoying. Unfortunately the whole project relied on that expander, since no else manufactured anything similar at that time. This ultimately forced me to abandon this concept and look for an older PC that would have native support for everything I needed.

This situation miraculously solved itself when a friend of ours upgraded his desktop computer and offered us his old one, which turned out to be ideal for a NAS build. I just transferred the disks, changed out some fans, took out the GPU and its been a solid performer since. Most importantly it only draws about 40 W and is completely silent.

Once you have a NAS, you’ll want to access it outside the comfort of your home, so figuring out a VPN solution is the logical next step. I chose to rent a VPS and use it as a jump host because the price of one is comparable with acquiring a public IPv4 from my ISP. The added benefit is that any spam traffic is handled by the VPS, not my home router.

From that point on the Lab grew organically. I added more services that we needed, like the GitLab instance. It was also used for some experiments, like trying to setup a distributed mongoDB. The most significant recent upgrade that happened was the addition of the EPYC based workstation PC, to which I had to dedicate a whole post, since I find it fascinating.


Last updated on June 22, 2024