Before I dove into the home lab rabbit hole, I assumed server setups require high-end hardware that costs at least a thousand dollars, if not more. While there are certain distros that require a high-end workstation, Proxmox isn’t one of them, and it can deliver decent performance on even the most potato system. In case you're wondering, then yes, I speak from experience. After installing Proxmox on my N100 SBC and a decade-old laptop a while ago, I figured I should build a cluster out of these devices.
One thing led to another, and I ended up building a triple node PVE cluster after throwing an old Ryzen 5 1600 PC into the equation. Having used this weird but highly functional setup for more than a few weeks, I’ve grown to love my Proxmox cluster – even though it has some glaring issues.
Live migration works well
And it’s just as easy to use
For the uninitiated, live migration is a feature that lets you transfer virtual machines between different nodes. While it may seem like something you’d typically find in a hardcore server environment, live migration has its own utility in some home lab setups. Take mine, for example.
Since the N100 SBC and my dinosaur laptop lack sheer firepower, I can’t really conduct all my VM-heavy experiments on them. As such, I’ve turned them into LXC-hosting nodes, as these containers don’t consume many resources. Meanwhile, I tinker with cool-sounding virtual guests on my old 6-core, 12-thread Ryzen system, and if things go well, I use live migration to send the LXC-powered projects to the relatively safe cluster nodes. That way, I can use the new setup container from my older systems while leaving enough resources on my experimental node.
Centralized web UI simplifies VM and LXC management
One interface to rule them all
Overseeing three different Proxmox nodes is already somewhat cumbersome, and remembering the addresses for separate web UIs only increases my management woes. Before going down the triple-node cluster route, I used Homepage to enable easy access to PVE setups running on the ancient laptop and SBC. However, I had to constantly switch between different browser tabs, and this problem worsened after I installed Proxmox on my old PC.
Turns out, a cluster was the elixir to fix my disorganized setup. After configuring my old PC as the central node and adding the other two PVE systems as secondary nodes, I could use all three from a centralized web UI, making my tinkering (and more importantly, troubleshooting) tasks a lot easier.
A high-availability setup lets me tinker in peace
I don’t have to worry about losing access to essential services
Besides tinkering with self-hosted services and distro-hopping at the press of a button, I love working on quirky projects on my Proxmox nodes. Heck, I even use my Ryzen PC in dual-boot setups when I need to work with bare-metal FreeBSD distros. However, the biggest caveat to these experiments is that my Proxmox instance and all its virtual guests go down when I work on them. And don’t even get me started on the projects where a single config file modification can render my PVE node unusable.
That’s where my high-availability cluster comes in handy. Since I’ve got two other nodes in the HA configuration, they can run the mission-critical LXCs from my Ryzen system when I need to switch to GhostBSD for the umpteenth time. Since the N100 SBC and decade-old laptop don’t consume a lot of energy, they pair well with my UPS and can run my mission-critical services during the long outages in my backwater town.
You might not need a PVE cluster, though
Proxmox clusters have some annoying quirks
As much as I adore my Proxmox cluster, I have to admit that it’s not all that effective for the average tinkerer. You could technically use a dual-node PVE cluster, but maintaining a quorum is really hard with just two systems, and you’ll end up losing access to both servers if either goes down. If you’re wondering, then yes, I speak from experience.
So, you’ll need at least three nodes for a normal PVE cluster, which can get rather pricey depending on the hardware you wish to use in your Proxmox environment. You’ll also have to deal with the extra energy bills when setting up a cluster – and that’s without considering high-availability provisions. If you’re looking to build an HA configuration, you’ll have to run a separate NAS and an SMB share to set up a common (or rather, shared) storage between the three nodes.
Maybe it’s just me, but removing a node from a cluster also seems overly complicated – to the point where I had to do a clean PVE installation on all nodes when I tried splitting up a Proxmox cluster ages ago.
Of course, a high-availability PVE cluster can give you some hands-on experience for DevOps projects and ensure your essential services remain operational if a single node goes down. But unless you’re a hardcore Proxmox veteran with multiple devices in your arsenal, there’s not a lot of merit in setting up a full-fledged cluster.
