Announcing k0s, the Smallest, Simplest Kubernetes Distribution

Adam Parco
4 min readNov 12, 2020

--

I’m excited to introduce a new Kubernetes distro called k0s. It is created by the team behind Lens, the Kubernetes IDE project. This new open source project is the spiritual successor to the Pharos Kubernetes distro that was also developed and maintained by the team. I like to say that k0s does for Kubernetes what Docker did for containers.

k0s is a modern, 100% upstream vanila Kubernetes distro that is designed and packaged without compromise. It is broadly applicable from local development to large scale production deployments. It runs anywhere and everywhere, with no dependencies, and 1 line installation.

Why Zero?

The “zero” in k0s really captures our aspiration to not compromise as we build the ultimate Kubernetes distribution:

Zero Friction

k0s drastically reduces the complexity of installing and running a fully conformant Kubernetes distribution. New kube clusters can be bootstrapped in minutes. Developer friction is reduced to zero, enabling anyone, with no special skills or expertise in Kubernetes, to easily get started.

$ #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

Using Lens with k0s completes the developer experience, giving full visualisation and control of kubernetes clusters in a rich, intuitive graphical experience.

Zero Dependencies

k0s is distributed as a single binary with no host OS dependencies besides the kernel. It does not require certain host OS distributions or additionally installed packages. Any vulnerability or performance issues are fixed in the k0s distribution directly.

Zero Overhead

k0s is designed to be ultra lightweight at its core, requiring minimal resources to get the job done.

Zero Cost

k0s is free open source software, and it always will be.

Zero Downtime

K0s comes with automated cluster lifecycle management, a Day 2 ops solution for upgrading clusters while your applications stay running.

We wanted to create a modern, robust and versatile base layer for various use cases where Kubernetes is in play. Something that leverages vanilla upstream Kubernetes and is versatile enough to cover use cases ranging from a typical cloud based deployments to various edge/IoT type of cases. Leveraging our previous experiences, we really did not want to start maintaining the setup and packaging for various OS distros. Hence the packaging model of a single binary to allow us to focus more on the core problem rather than different flavours of packaging such as debs, rpms and what-nots.” — Jussi Nummelin co-founder of k0s, and Senior Principal Engineer at Mirantis.

We designed k0s to be the only open source Kubernetes distribution you’ll ever need for any infrastructure or use case, including:

  • Local development clusters
  • Private datacenter clusters (on bare metal or virtual machines)
  • Public cloud clusters (on bare metal or virtual machines)
  • Edge, IoT and Telecom/O-RAN clusters
  • Hybrid cloud / hyper converged clusters

Based on upstream Kubernetes, k0s has many advanced features already built in, and many exciting new ones coming soon:

  • Support for any compliant CRI, such as ContainerD to Docker Enterprise.
  • Multiple machine architectures, including Intel and Arm.
  • Runs on any Linux host, or Windows Server 2019 (worker nodes only).
  • Support for common CNI and CSI providers.
  • Supports RBAC, OpenID providers, Pod Security Policies, Network Policies, Micro VM Runtimes, and Control Plane Isolation.
  • Includes DNS by CoreDNS, Cluster Metrics by Metrics Server, Horizontal Pod Autoscaling (HPA), GPU Support, Zero-downtime Cluster Upgrades, and Cluster Backup & Restore.

“k0s makes it very simple to run the same kubernetes distro as a simple single node cluster on your own laptop, as you run in production in the cloud.” — Natanael Copa, founder of Alpine Linux and Engineer at Mirantis.

I think you’ll love how easy k0s makes Kubernetes, so head on over to k0sproject.io to get started and let us know what you think.

k0s demo

For more information see Frederic Lardinois Tech Crunch article: “Mirantis brings extensions to its Lens Kubernetes IDE, launches a new Kubernetes distro”.

--

--

Adam Parco

Professional Engineer, Computer Scientist, and Product Leader. Opinions are my own.