I run a Kubernetes cluster on two machines at home, and one machine in the cloud (for the public ip mostly). It was a little annoying to get started but now I have a solid base to deploy a lot of cool stuff. I use Tailscale for networking between all the nodes.