Why Build a Homelab?
A separate lab helps test deployments and infrastructure before production use. Isolate experiments from production and use test data: a lab does not make experimentation risk-free.
Hardware Choices
You don't need enterprise hardware to start.
- Entry level: Old desktop PC, Raspberry Pi cluster
- Mid-tier: Used enterprise server (Dell R720, HP DL380)
- Serious: Multiple servers with shared storage
Start small and expand as needed. Power consumption matters for 24/7 operation.
Virtualization Platform
Consider Proxmox VE, XCP-ng or KVM/libvirt according to what you need to test. Check version support, licensing and hardware requirements before installation.
A cluster alone does not guarantee high availability. Plan quorum, storage, networking, spare capacity and failure testing as well.
Storage Architecture
Separate your storage from compute when possible.
- Local storage: Fast SSDs for VMs, HDDs for bulk storage
- Network storage: TrueNAS for NFS/iSCSI, or Ceph for distributed storage
- Backup storage: Separate drives or NAS for backup targets
Always have redundancy - RAID is not a backup!
Network Design
Segment your network like you would in production:
- Management VLAN: Hypervisor access, out-of-band management
- Production VLAN: Your "production" workloads
- DMZ VLAN: Public-facing services
- Storage VLAN: Dedicated for storage traffic
Use a managed switch that supports VLANs. pfSense or OPNsense for routing/firewall.
Essential Services
Every homelab needs:
- DNS: Pi-hole or AdGuard Home (also blocks ads)
- Reverse proxy: Traefik or nginx for routing
- Monitoring: Prometheus + Grafana
- Secrets: HashiCorp Vault or Bitwarden
- Git: Gitea or self-hosted GitLab
Example Lab Environment
A practice environment might contain a virtualization host, separate backup storage, a test application and monitoring. Start by deploying and restoring one application before adding clustering.
This is an illustrative layout, not a description of Northerd's or a customer's current production environment.
