10 ms·
Kubernetes. No, seriously. It's an orchestration tool that's common in the real world, and also notoriously hard to learn and "get right". Downtime due to obvi
by don-code 2y ago
Kubernetes. No, seriously.
It's an orchestration tool that's common in the real world, and also notoriously hard to learn and "get right". Downtime due to obvious, important mistakes is common, and it leaves both engineers and lower management wondering if it was a good idea to adopt.
The thing is, in your home environment, you have no (or hopefully significantly lower) uptime requirements. If you break the entire cluster for a few days, because you ran into a network problem or upgraded it wrong, who cares? That's a potentially hundred-thousand-dollar learning opportunity at a large organization, for just the cost of electricity in your home.
For what it's worth, I run Kubernetes both in my day job and in my home lab. I've learned more about networking from running my own cluster on bare metal (HP DL360 boxes) than I have from ten years of managing infrastructure for bigcorp's, and it also gives me a safe place to play with functionality that I might want to adopt at work.
- lallysingh 2y agoThis. K8s in the small is easy to set up and a great way to abstract your setup n differences from your apps.
- ckwalsh 2y ago+1 to this. I run Ubuntu 22.04 with microk8s. Keep all my yaml files in a local git repo, figured out how to hook up my NAS to provide storage via nfs. It's definitely gone down a few times, but I've learned a TON tinkering with it. super easy to spin up a new hobby project, a nice web UI for seeing what the heck is going on. I've completely borked it a couple times and survived one micro pc migration. Can't recommend it more
- 40099933 2y agoI've always struggled with how to get started. I get lost in picking which CNI(?) I need and how to manage stateful storage. Do you have any pointers towards how to get going?
- andycowley 2y agoLook up k3s and start there
- don-code 2y agoI agree that k3s is a great way to get started. You can easily bring new nodes online and upgrade them. If you want your Services to behave a little bit more like physical boxes or VMs, where each service gets its own IP address (instead of using an ingress controller or service mesh, which are different beasts entirely), have a look at MetalLB. MetalLB allows associating an IP address on your home network with a Service, which is more or less exactly what you'd do with a VM or a Raspberry Pi.