News for hackers. Stuff that matters.
Re:Minikube now supports rootless podman driver for running ... by pas on Thursday June 23, 2022 @01:18PM (#31852251)
> All claim to be certified as "perfectly like kubernetes"

because they are. they are directly built from the go sources, all are wrappers around the meat of k8s. (which are the various control loops packaged into services like api-server, kubelet, schedulker, controller-manager, etc ... and etcd itself)

minikube does a big monolithic build for convenience. (it can do this because all involved components are in pure go.)

microk8s is also a distribution of k8s.

almost all distributions have convenience features to help you with installation/setup. but all they do is what "the hard way" setups do. fetch/copy binaries, generate/sync keys, setup storage (devicemapper, btrfs volumes, whatever), setup wrappers that then start the binaries with the long list of correct arguments, and set them up to start when the node starts (usually by adding systemd services or something).

Re:Minikube now supports rootless podman driver for running ... by stavros on Thursday June 23, 2022 @01:35PM (#31852501)
So what are they missing that K8s has? I don't understand where I'd use one vs the other.
Re:Minikube now supports rootless podman driver for running ... by remram on Thursday June 23, 2022 @01:48PM (#31852695)
In a sense they are distributions. Ubuntu and Fedora can also both do it all, and it's no clear where you'd use one vs the other. You're in the hands of different people.
Re:Minikube now supports rootless podman driver for running ... by stavros on Thursday June 23, 2022 @02:02PM (#31852896)
Oh hmm, I see, thanks!
Re:Minikube now supports rootless podman driver for running ... by semitones on Thursday June 23, 2022 @03:47PM (#31854275)
Well also, minikube is meant to facilitate development and testing. We use minikube for local dev, tests, etc. and everything transfers over well to the production k8s cluster
Re:Minikube now supports rootless podman driver for running ... by pas on Friday June 24, 2022 @08:17AM (#31860633)
um, they aren't missing anything (but see below). they are k8s, just as you rarely run the Linux kernel without userspace.

so if you want to get the genuine original mainline experience you go to the project's github repo, they have releases, and mention that the detailed changelog has links to the binaries. yeey. (https://github.com/kubernetes/kubernetes/blob/master/CHANGEL... .. the client is the kubectl binary, the server has the control plane components the node binaries have the worker node stuff), you then have the option to set those up according to the documentation (generate TLS certs, specify the IP address range for pods (containers), install dependencies like etcd, and a CNI compatible container network layer provider -- if you have setup overlay networking eg. VXLAN or geneve or something fancy with openvswitch's OVN -- then the reference CNI plugin is probably sufficient)

at the end of this process you'll have the REST API (kube-apiserver) up and running and you can start submitting jobs (that will be persisted into etcd, eventually picked up by the scheduler control loop that calculates what should run where and persists it back to etcd, then a control loop on a particular worker will notice that something new is assigned to it, and it'll do the thing, allocate a pod, call CNI to allocate IP, etc.)

of course if you don't want to do all this by hand you can use a distribution that helps you with setup.

microk8s is a low-memory low-IO k8s distro by Canonical (Ubuntu folks) and they run dqlite (distributed sqlite) instead of etcd (to lower I/O and memory requirements), many people don't like it because it uses snaps

k3s is started by Rancher folks (and mostly still developed by them?),

there's k0s (for bare metal ... I have no idea what that means though), kind (kubernetes in docker), there's also k3d (k3s in docker)

these distributions work by consuming/wrapping the k8s components as go libraries - https://github.com/kubernetes/kubernetes/blob/master/staging...

...

then there's the whole zoo of various k8s plugins/addons/tools for networking (CNI - https://github.com/containernetworking/cni#3rd-party-plugins), storage (CSI - https://kubernetes-csi.github.io/docs/drivers.html), helm for package management, a ton of security-related things that try to spot errors in all this circus ... and so on.

Re:Minikube now supports rootless podman driver for running ... by sascha_sl on Friday June 24, 2022 @10:21AM (#31862305)
Worth mentioning there's a middle path, namely kubeadm. That's the "sanctioned" way to bootstrap clusters without going full from scratch and many other distributions actually use it internally.
Re:Minikube now supports rootless podman driver for running ... by stavros on Friday June 24, 2022 @08:29AM (#31860766)
Ahh that clarifies things a lot, thank you!