K0 (kzeros) in a new single binary distribution model for running and deploying Kubernetes.
The project is available on GitHub here:
The k0s project comes from engineers working on the original docker project and it's some aims include making ruining and deploying Kubernetes clusters as easy as docker made building and running containers. Since Kubernetes does such a great job at orchestrating containers, making it easier to operate is a welcome ambition.
It will be interesting to see what the service tupe load balancer will be like for k0s , especially on bare metal deployments (see metallb).
k0s Install Steps
These are the basic install steps for k0s from
Adam Parco' bloghttps://medium.com/@adamparco/announcing-k0s-the-smallest-simplest-kubernetes-distribution-3626c86575d5 announcing the release of k0s:
$ #Download, install, and start a k0s server
$ curl -sSfL k0s.sh | sh
$ k0s server
$ #Create and add a worker node
$ k0s token create --role=worker
$ k0s worker <TOKEN>
$ #Or quickly try it out in a Docker container anywhere
$ docker run -d --hostname controller --privileged -v /var/lib/k0s -p 6443:6443 k0sproject/k0s
As you can see its a single binary. This is becoming an increasingly common distribution model, usually via the Go programming language: one (sometimes large) statically linked bonsaie. Increasingly this seems to be the path of least resistance taken by other company's such as Hashicoprp (terraform, consul etc). it makes getting starting easy which helps bread quick adoption- at the cost of not keeping up to date as your opetating system package manager can no longer check this for updates. this is a subtle but important shift in the software distribution model which seems to be more & more common. Ubuntu snaps solve some of this story (combining isolation with the ability to keep up to date).