Live data from Hacker News

Domesticating Kubernetes

blog.quickbird.uk

41–50 of 100 posts

Re: Domesticating Kubernetes

#41
post #33

Earlier quoted context omitted.

So what breaks if you use "*.[lastname].local" for your home network?

On zeroconf aware systems, it is still expected to be resolved via multicast; service discovery works by looking up srv/ptr/txt records on __$service.__$protocol.$hostname.local. How it will behave will depend on your specific stack. Zeroconf aware (Macs, iOS devices, Linux with Avahi - i.e. most modern distributions) one will use multicast, zeroconf unaware (Windows) will use your DNS resolver. Devices (printers, et…

I'd like to note that a default behavior of Avahi in Debian/Ubuntu/RH/SUSE prevents resolving *.local via unicast DNS to avoid this collision.

Re: Domesticating Kubernetes

#42
post #32

Earlier quoted context omitted.

Is there an RPi alternative (ie. similar size, form etc.) that has better IO/Network speed? I used RPis for my robot ( https://sendc.at/dl/Kjjbt3dij6T733YgWsyv3p3Vv5GPGKO1q5IEFStV... ) with daughter boards for motor control) and they wre pretty convenient, but never really considered running anything server-like on them because they have reportedly woeful network performance.

I have this https://www.hardkernel.com/shop/odroid-n2-with-4gbyte-ram/ It's pretty powerful for the cost and has no fan etc. Arm64.

Those look sweet, thanks!

Re: Domesticating Kubernetes

#43
post #4

What I miss from all of these tutorials is one very important piece - how to handle network routing and dns automation within your home network, that's in typical scenario is being handled by the ingress/cloud controller. Without having automated (or easy enough) way of reaching the apps you're deploying there, each of these clusters is pretty much useless for users except for maybe learning basics of k8s, what's eas…

I use MetalLB to allocate RFC1918 IPs out of a dedicated pool to LoadBalancer services. MetalLB then publishes these to my router over BGP because, you know, why not?

I then have external-dns running (https://github.com/kubernetes-sigs/external-dns) which manages the relevant A/CNAME records on Google DNS (other DNS providers are supported) so that I can resolve "myservice.mydomain.com" to the service's IP address.

I wrote a bit about the BGP bit last year: https://www.growse.com/2019/04/13/at-home-with-kubernetes-me...

Admittedly, I have no desire to expose any of these service to the internet, but if I did I could use an IPv6 address on the service instead, or add a static NAT rule to the router to forward traffic to the service IPv4 address. Auto provisioning of NAT rules feels icky, so I'd probably go down the ipv6 route if I wanted to do this.

Re: Domesticating Kubernetes

#44

Earlier quoted context omitted.

Few things to do: - specify a LAN IP for your ingress controller so it doesn't change. - Use ddwrt/dnsmasq to point *.k8s.myhomenetwork.local to said IP Once that's configured, you just configure the ingress hostname on services as you would "normally".

Also - do not use .local tld. It is a reserved one (RFC6762), for mDNS/Bonjour: > This document specifies that the DNS top-level domain ".local." is a special domain with special semantics, namely that any fully qualified name ending in ".local." is link-local, and names within this domain are meaningful only on the link where they originate. This is analogous to IPv4 addresses in the 169.254/16 prefix or IPv6 addres…

Iirc, the last time I looked into this, .test is the recommended TLD to use because it’s reserved for non-production use I.e. it will never be bought or sold.

Re: Domesticating Kubernetes

#45
post #40

I've given up running my own k8s at home a couple of times. It does seem to be getting easier, but then upgrading and maintaining breaks me again. + the other stuff like running your own container registry. Then with new centos podman breaks everything that worked OK in docker. I hate this stuff, so many problems its worth ignoring the whole stack.

I do not blame you. I try to avoid it as long as it is possible. The amount of time, energy and effort wasted on this is just insane.

Re: Domesticating Kubernetes

#46
post #40

I've given up running my own k8s at home a couple of times. It does seem to be getting easier, but then upgrading and maintaining breaks me again. + the other stuff like running your own container registry. Then with new centos podman breaks everything that worked OK in docker. I hate this stuff, so many problems its worth ignoring the whole stack.

what do you end up using instead of k8s?

Re: Domesticating Kubernetes

#47
post #2

I can attest to RPI i/o speed: its horrible. Combined with the fact that I have to build Docker containers on the RPIs themselves(because of arm), its more of a hassle than a cool add-on (to be clear I'm running Docker Swarm in a way that isn't too different from the setup of OP). Only reason I can see RPIs in kubernetes is if you're exclusively using ARM everywhere and/or are running some distributed cluster among d…

The RPi 4 can saturate gigabit with ease, it's in a different league compared to the RPi 3 and lower, avoid those like the plague.

Re: Domesticating Kubernetes

#48

Earlier quoted context omitted.

> if you're looking for something to run your home services long term, I would recommend not using Kubernetes If we disregard one’s experience with Kubernetes as a factor, are there any other reasons you see to not use k8s at home?

Do you really have that many computers at home, so you need container orchestration for that? A single machine is capable of handling most home workloads. So outside of playing with Kubernetes for experience, why would you do that?

i have to agree with you on this. i've been using k8s at work for over 4 years but operating k8s for home workload is still too much; unless, it's for tinkering/testing.

Re: Domesticating Kubernetes

#49

you can run a kubernetes stack using k3s on a rpi stack within minutes. and it runs far better than all of these. https://blog.alexellis.io/test-drive-k3s-on-raspberry-pi/ here's a live walkthrough - https://www.youtube.com/watch?v=DjpVtNjiXSU

The author disagrees with you on both points, he asserts rpi's are way slower than "old" pc's and laptops and that MicroK8S is preferable over K3S. He actually provides arguments & benchmarks to back up those opinions. Could you do the same for yours?

Re: Domesticating Kubernetes

#50
question: if not k8s, what everyone has been using to orchestrate containers at home? Ideally, I just want something easy to setup, low maintenance cost and easy to backup and restore if sth went wrong.

i've been using k8s at work for over 4 years but for home usage, it's just too much.

Post reply on HN