Ramblings of an aging IT geek
← Ramblings of an aging IT geek
homelab

i ran kubernetes at home and mostly regret it

A short reckoning with running a three-node Kubernetes cluster at home to host things that docker-compose handled fine, and the one part that was genuinely worth it.

A small server rack with cabling in a home setup

I ran Kubernetes at home for a year. I hosted, amongst other things, a Pi-hole, a Nextcloud, and a small thing that fetched the weather. Three NUCs, a control plane, the whole liturgy. For workloads a single docker-compose.yml would have handled without complaint.

Most of it was a mistake, and I should be honest about why. The cluster spent more time being a project than being infrastructure. An upgrade would go sideways and I'd lose an evening to a CNI plugin that didn't fancy the new kernel. A node would reboot and the etcd quorum would sulk. Certificates expired on their own private schedule. None of this is Kubernetes being bad, it's Kubernetes being a distributed system with the operational weight of one, deployed to run a DNS blocker that a Raspberry Pi could host on its own.

The honest tally: the abstractions cost me far more hours than the services were ever down. Every problem I solved was a problem I'd created by choosing the platform.

But "mostly" is doing real work in that title. The bit I'd keep is what it taught me. Writing manifests for my own daft little services, debugging a pod that wouldn't schedule, understanding why a readiness probe matters, all of that landed at work in a way no tutorial ever did. The homelab was a terrible production environment and a brilliant gym. If I were starting again I'd run compose for the things I actually rely on, and keep a scratch cluster, switched off most of the time, purely to break on purpose.