- cross-posted to:
- foss@beehaw.org
- linux@programming.dev
- cross-posted to:
- foss@beehaw.org
- linux@programming.dev
cross-posted from: https://kbin.melroy.org/m/foss@beehaw.org/t/1225798
After: ~1,337 days, 271 releases, 78,000 stars on GitHub, 1,558 contributors, 31,500 members on Discord, 36,000 members on Reddit, 68 languages on Weblate, Surviving the controversial announcement about joining FUTO, Having overwhelming success and support from the community with the product keys model, Launching the Merch store, Attending our first FOSDEM, …and before the release of GTA VI We are thrilled to announce the stable release of Immich! 🎉
I’m really excited about such a large project adopting semver! I never got the trend for software without a need for rapid release cycles adopting purely time-based version numbers.
The nodes go on x86. You use the pi’s for control planes. They sit around doing pretty much nothing until a pod get’s wrecked or upgraded then they spin a new one. You use 3’s or 4’s clocked down to save power.
You really only need one, but for $50 two gives your fault tolerance, fault tolerance.
Ok I’ll ask. I’ve been doing containers for a while now. My day job is in virtualization/networking/storage so this shouldn’t be that hard. But I just can’t get my head around kubernetes. Between work and home I have enough hardware to choke a robotic horse so that shouldn’t be a problem. Are there any good resources to get me started?
When I started with it, I looked through references all over and just felt f’ing lost, and I do this kind of stuff all the time. I am intimately familiar with AWS and Azure, but setting K8S up is just very different than the normal stuff we’re used to. I’m big on installing a package and screwing with it until it works, but this doesn’t work like that.
At the risk of being criticized here, and I’m very sorry if you’re strongly opposed to AI, consider asking ChatGPT or Copilot to guide you through setting up Kubernetes step by step. Out of desperation, I figured I’d give AI a shot, and for the most part, it was really great at teaching it to me.
Ask it to give you the different options for setting up Kubernetes on your home lab (there are numerous ways to do this). You can save a lot of steps by using something like Rancher (k3s), which is a simplified version, but I prefer starting with the official kubeadm first. It’s harder, but it gives you a better feel for what’s happening, and it’s more capable and closer to what you’d experience when crafting a production deployment.
Indicate your level of experience in the next prompt and specify which systems you’re familiar with so it can tailor training to your existing knowledge and play to your strengths. Ask it to make a lesson plan first, and then pick what items you want it to walk you through. If anything feels weird or you have questions, stop it and ask away. You’re working on something from scratch, so there’s little to lose if it gets something wrong, but honestly, teaching technical things with tons of documentation available is probably the best use of LLMs that has ever existed.
If you decide against AI, focus your research on Docker cli, Kubeadm installation (the control plane/controller) and creating/joining nodes, persistent storeage and networking, K8S Namespace, then pod deployment. Complicated parts that might hang you up are getting logs from PODS that die on startup, and getting interactive prompts in a cluster are a little different than Docker (have to specify namespace)
For persistent storage, you then have numerous options. For a homelab, I like Longhorn; it’s a RAID-like system that stores data blocks across the nodes, and it easily backs up to S3 if you want it to.
For homelab learning and testing, I just crapped out a Proxmox and started 3 VMs, setup kubeadm on the control plane and then joined two nodes, then spent I an hour getting NTFY to run in it for the first time, I really should have done a python hello world, NTFY is fiddly. But, it’s super fun to stop a VM and watch the app come back up like nothing happened.
Once you get a base system up, whatever you choose, do check out https://www.ansibleforkubernetes.com/
Jeff Geerling did a bang-up job on the book, and it supports his cause. It just doesn’t go into the detail you need to get started with k8s.