📖 Chapter 09 — When to Expand
The signs the lab needs to grow. The right time to add a second machine, a cluster, dedicated hardware.
Learning Objectives
- Recognize the signs the NAS can't host the lab anymore
- Decide between a second machine, a Proxmox cluster, and dedicated hardware
- Plan the expansion without disrupting the family system
Introduction
The current NAS is doing three jobs: family NAS, creator's storage, and home lab. At some point, the three jobs conflict. The family NAS needs reliability. The creator needs performance. The home lab needs flexibility. The same hardware can't optimally serve all three.
This chapter is about the moment when it's time to add hardware — and what kind to add.
The signs
Four signs that the lab has outgrown the NAS:
Sign 1: Resource contention
The family is watching a movie on Jellyfin. The transcoding is using all the CPU. Your home lab build is taking forever because the build VM is starved. The apps the family uses are sluggish because the lab is consuming the resources.
The fix: separate the lab from the production services. Run the lab on different hardware.
Sign 2: Storage performance
The HDDs in the NAS are great for capacity, slow for random I/O. The lab VMs want SSDs. The pool is full of family data; the lab can't have its own SSD pool on the same machine.
The fix: a second machine with SSDs for the lab. Or add SSDs to the NAS as a separate vdev for performance-sensitive workloads.
Sign 3: Uptime requirements
You want to experiment: try a new OS, install a new service, break things. The family doesn't want their photos to disappear because you misconfigured a lab VM.
The fix: run the lab on hardware that can fail without taking down the family NAS.
Sign 4: The lab is the primary use case
At some point, the home lab is no longer "a few extra things on the NAS." It's the primary thing. The NAS is the storage backend; the lab is the compute platform. At that point, the right architecture is: a dedicated compute platform (Proxmox, XCP-ng, or a Kubernetes cluster) with the NAS as the storage layer.
Option 1: A second machine
The simplest expansion: a second computer that runs the lab, with the NAS as the storage backend. The setup:
- The second machine runs Proxmox, XCP-ng, or a Linux distribution that hosts VMs and containers.
- The NAS provides NFS or iSCSI storage to the second machine's VMs.
- The second machine has its own resources: CPU, RAM, SSDs.
Pros: clean separation of concerns. The lab can fail without affecting the family. The lab can be rebooted, upgraded, or replaced without taking down the NAS.
Cons: more hardware, more power, more maintenance. Two machines to update, two UPSes, two sets of networking.
For most home labs, this is the right answer when expansion is needed. The cost is moderate; the benefit is significant.
Option 2: A Proxmox cluster
For a serious home lab, Proxmox is the standard. It's a Debian-based hypervisor with a web UI, supporting both KVM VMs and LXC containers. A cluster is 2-3 Proxmox nodes that share some resources (most usefully: the ability to live-migrate VMs from one node to another).
The setup:
- 2-3 small Proxmox nodes. Each can be a small form factor PC, an old desktop, or a NUC. 32-64 GB RAM, modern CPU, SSDs.
- A shared storage backend. Ceph (built into Proxmox) for a true cluster, or NFS from the NAS for simpler setups.
- Networking: a separate VLAN or subnet for the cluster traffic.
Pros: high availability (a node can fail and VMs keep running on the others), live migration (move VMs without downtime), professional-grade features for the home.
Cons: complexity. Ceph is non-trivial. A 3-node cluster with SSDs is a $2-4k investment. Power consumption is non-trivial.
For most home labs, a Proxmox cluster is overkill. The right time to build one is when you have a real need for high availability or when the lab is mission-critical for some reason.
Option 3: Dedicated hardware
For specific workloads, dedicated hardware is the right answer:
- A GPU server for AI/ML: a separate machine with one or more GPUs. Used for training models, running Stable Diffusion, etc.
- A 10 GbE NAS for editing: a second NAS optimized for video editing, with SSDs and 10 GbE networking. Used by the creator's editing workflow.
- A homelab in a rack: the "real" home lab, with multiple rack-mounted servers, network switches, and patch panels. A serious investment in time, money, and space.
These are all valid expansions when there's a specific need. The conversation's principle: buy the next thing, don't replace this thing. The current NAS is doing its job. Add capacity, performance, or capability by adding hardware, not by replacing.
When to expand vs when to optimize
Before adding hardware, see if you can optimize what you have. Common optimizations:
- Move the lab off SSDs if it doesn't need them. SSDs are scarce; HDDs are abundant. Lab VMs that don't need SSD performance can use the HDD pool.
- Tune the apps. Most apps have configuration that affects performance. The default config is often conservative. Tuning can give 2-10x improvement without hardware changes.
- Clean up. Old Docker images, unused containers, forgotten VMs. A leaner system uses fewer resources.
- Use the right tool. A container where a script would do. A VM where a container would do. Right-sizing the architecture saves resources.
The conversation's rule: optimize before you buy. Buy when optimization isn't enough.
Planning the expansion
For a planned expansion, the steps:
- Identify the constraint (compute, storage, network, capability).
- Decide what kind of expansion (a second machine, a cluster, dedicated hardware).
- Choose the hardware. Used enterprise gear is often the best price/perf for home labs. eBay is full of decommissioned Dell PowerEdges, HP ProLiants, and SuperMicro servers. They're loud, power-hungry, and reliable.
- Set up the new hardware. This is a weekend project, not a 30-minute task.
- Migrate the lab workloads to the new hardware. Test thoroughly before declaring victory.
- Update the documentation. The lab architecture has changed.
For TK's build, the most likely first expansion is a second machine for the home lab. The second-most-likely is a 10 GbE network upgrade. Both are well-understood and low-risk.
The cost of the expansion
A second machine for the lab:
- Used enterprise server: $300-800 (Dell R720, HP DL380, etc.) — loud, powerful, power-hungry
- Mini PC (Intel NUC, Beelink, Minisforum): $300-800 — quiet, modest, efficient
- Old desktop repurposed: $0-200 — already have it, just need to set it up
Power: a small mini PC uses 15-30W idle, a used enterprise server uses 100-300W idle. Over a year, the difference is $50-300 in electricity.
The conversation's recommendation for TK: start with a mini PC or an old desktop, not an enterprise server. Quieter, more efficient, sufficient for most home lab workloads. Upgrade to enterprise gear only when you need the cores or the RAM.
The "two NAS" architecture
For some setups, the right architecture is two NASes: one for the family (the current NAS), one for the creator and the lab. The benefits:
- Physical separation. A failure in one doesn't affect the other.
- Different performance characteristics. The creator's NAS has SSDs and 10 GbE. The family's NAS has HDDs and 1 GbE.
- Replication between them. The family's NAS is a backup target for the creator's NAS, and vice versa. Free 3-2-1.
For TK's build, this is the future: when the creator's workflow and the family storage need different things, a second NAS is the right answer. The first NAS stays as the family NAS; the second NAS is the creator's and the lab's.
Engineering Note
The lab is a journey, not a destination. The home lab you have today is not the home lab you'll have in 5 years. The right mindset: build what you need now, plan for what you'll need next, and don't over-invest upfront. The discipline is regular review, regular upgrade, regular cleanup. The lab grows with you.
Summary
Four signs the lab has outgrown the NAS: resource contention, storage performance, uptime requirements, lab as primary use. Three expansion options: a second machine, a Proxmox cluster, dedicated hardware. Optimize before you buy. Plan the expansion. The right architecture depends on the workload, the budget, and the time. Start small; grow as needed.
Checklist
- ⬜ Identify the constraint: what's the lab outgrowing?
- ⬜ Decide the kind of expansion: second machine, cluster, or dedicated hardware
- ⬜ Choose the hardware: quiet and efficient for most home labs
- ⬜ Plan the migration: test the new hardware before moving production workloads
- ⬜ Update the documentation: the lab architecture has changed
Volume 4 is complete
The lab as a system, networking, virtualization, containers, VMs, reverse proxies, monitoring, home automation, when to expand. The home lab is now a real platform, not a few apps on the NAS. Volume 5 takes the next step: data science on the NAS. Jupyter, datasets, ML workflows, the analyst's NAS.