My Homelab Setup
My Setup
My current homelab setup consists of two old workstation computers, each running Proxmox individually.
- Dell Precision 5820 Tower
- Handles Home Assistant
- Linux Mint VM for remote access, Kali VM for occasional security tool use and experimenting.
- HP Z4 G4 Workstation
- Upgraded with an NVIDIA 2080 Ti
- 512 GB of RAM (not even I know what to do with all of this)
- Windows 11 VM configured for gaming performance
- GPU passthrough, USB port passthrough, and direct SSD access for (effectively) bare-metal latency.
- Jellyfin LXC Container
Security & Access Controls
Both machines are accessible via LAN. Each machine also has Tailscale installed as a VPN to allow traffic to enter from authorized devices outside the network (and also allows me to route all of my internet traffic to appear as if I'm connecting from my home network).
GPU Passthrough (ugh.)
If I wanted to do anything involving a GPU, learning how to do GPU passthrough was a must. Over the course of several hours, I tried and failed multiple times to get the passthrough to work.
I wanted to set up vGPU so I could split GPU resources across multiple VMs, but abruptly realized at the figurative finish line that the Linux Kernel had been updated just a month prior and no longer worked
with the vGPU drivers that were available at the time.
Using vGPU drivers would have allowed me to split up my GPU into multiple "vGPUs" and assign them to different VMs. For instance, I could have dedicated some resources to a Windows VM for gaming,
some resources to an AI VM, and some resources to Jellyfin for video encoding without the three competing for the same resource pool.
In the end, I was forced to pick a single VM and I decided to go with a Windows 11 VM for the sake of gaming compatibility. After all the headaches of setting this up, I needed something fun to mess with instead of more
configuration work.
Performance
Starting with the positives, latency is just about identical to a bare metal machine- if I didn't know it was running a VM I never would have guessed. Gaming performance leaves a lot to be desired, even though everything is configured as best it can be. The GPU also does its job as expected but the CPU struggles with just about every game, making this a bit of a 'waste' of GPU power. The two games I've tested so far have been Street Fighter 6 and Avatar Legends (I do love me some fighting games) and both maintain a consistent 60 fps but with very noticeable stuttering, which is usually a telltale sign of insufficient CPU resources. This was to be expected with Street Fighter as it's a 3D game with intricate environments and character models but I was surprised to see Avatar stuttering given its simple 2D environment.
Visual Comparison of Avatar Legends (Left) and Street Fighter 6 (Right) (Source: Playstation Store)
Future Goals
In the future I'd love to get vGPU up and running so that I can have a dedicated AI playground VM- I've got all that RAM, I might as well put it to good use. Some other goals I'd like to achieve are setting up a file server (and RAID!) and segmenting my network to isolate my IoT devices onto their own subnet but I don't have the necessary storage or router for either of those yet.