It's been almost a year since I decided to set up Kubernetes on my home server, and I have to say, the experience has been a real rollercoaster. Let me share some of the highlights (and lowlights) with you.

The Good: Reliable Hosting for Multiple Websites

One of the main reasons I chose to run Kubernetes was to easily host several of my personal websites on a single server. And let me tell you, it's been working like a charm! I've had zero downtime for my sites, other than the occasional outage from my internet service provider. Kubernetes has made it a breeze to manage and scale my applications as needed.

The Bad: Disk Failure Woes

A few months in, I hit a bit of a snag when one of my hard drives failed. This is where I learned an important lesson - my disk settings weren't configured correctly, and I ended up losing some data. Lesson learned: always thoroughly test your disaster recovery plan, even for something as basic as a disk failure.

The fix for this was not to use the file backed backend to mayastor, but to create a logical volume using

sudo lvcreate --name mayastor-data --size 20g ubuntu-vg

The Ugly: Etcd and Cluster Failure

The real curveball came when we had a major power outage in my area. My Kubernetes cluster went down completely, and that's when I discovered another issue - Etcd, the key-value store used by my storage solution (Mayastor), doesn't automatically recover from a full cluster failure. I had to manually delete and recreate the Etcd cluster to get everything back up and running.

Closing Thoughts: Kubernetes at Home - Worth It, with a Catch

Overall, running Kubernetes has been a mixed bag. The benefits of easily managing multiple websites have been fantastic, but I've also had to deal with some frustrating technical challenges. If you're considering setting up Kubernetes at home, I'd say go for it - but be prepared to roll up your sleeves and deal with the occasional quirk.

Just remember to always have a solid backup strategy in place, and don't rely on Kubernetes as your sole hosting solution without properly planning for failures. With the right mindset and a willingness to troubleshoot, Kubernetes can be a great tool for hosting your personal projects from the comfort of your own home.