Online / 6 & 7 February 2021


Fully redundant LXD cluster

Bullet proof storage, networking and compute on the cheap

Want the smallest setup with fully redundant storage, networking and compute that's capable of running both containers and virtual machines? Well, this is it. This talk will go over the journey of building a 3 nodes redundant cluster meant to host public web services.

The setup boils down to Ceph for storage, OVN for networking, LXD for compute/management and some fancy BGP networking for external network redundancy. All of that running on 3 identical machines bought on eBay and some reasonable SSD/HDD bought new.

Finding cloud computing a bit too expensive for your taste? Whether it's because of storage, network or compute costs, the convenience of having instances running within seconds can easily be outweighed by the bill at the end of the month.

In this case, cloud hosting already wasn't an option and instead renting dedicated servers from the likes of Hetzner and OVH was done. This is already a lot more affordable but gets problematic when you'd like a cluster of them as fast interconnect between rental servers is uncommon and/or gets expensive quite quickly.

So wanting to move from standalone servers to a small redundant cluster, the only option that made financial sense ended up going with buying servers and finding a local co-location facility to host them. Not wanting to have to pay on-site staff or go onsite whenever something fails, the setup is quite focused on resiliency, allowing for the loss of an entire server or the loss of components from many servers without significant impact on the cluster.

The end result is effectively a tiny personal cloud, capable of running most common workloads, running on used server hardware in a colo facility with an estimated price per month, assuming a 5 years lifespan on the hardware roughly equivalent to renting just two reasonably sized machines from a dedicated server provider.


Photo of St├ęphane Graber St├ęphane Graber