Project Lightning Talk: k0s - CNCF Sandbox Distro Updates - Jussi Nummelin, Maintainer
About this talk
This talk introduces K0s, a lightweight Kubernetes distribution that packages everything needed to run Kubernetes into a single statically compiled binary. The speaker explains that K0s can be deployed across various environments, including Alpine, Red Hat, and Ubuntu, while allowing for flexibility in runtime components like CRI-O or Containerd. Emphasizing the architectural separation of the control plane and worker plane, they highlight how a K0s controller node does not need to run kubelet or Containerd, enhancing deployment flexibility. The speaker also presents Kosmodrome, a project aimed at simplifying control plane management using declarative approaches, enabling the management of multiple clusters more efficiently. Recent developments include improved Windows support and enhancements in Helm extensions, reflecting the growing community around K0s.
Full transcript
Hey, I'm Jussi. I'm one of the K0s core maintainers working at Mirantis. So, K0s, it's there's a lot of similarities with K3s. Yes. Both are slim and versatile and all that. Um so, with K0s we actually package everything you need to run Kubernetes in a one single binary. It's statically compiled, comes with all the dependencies embedded. So, you can actually deploy the same same single binary virtually
anywhere. Whether it's Alpine, whether it's Red Hat, whether it's Ubuntu. It just works. Of course, we include all the batteries, but you can swap them out. Say you want to run CRI-O instead of Containerd, you install CRI-O and point K0s to use that and it'll be fine. The kind of architectural difference compared to say your vanilla Kubernetes kubeadm setup is that that we do a a super
clear separation of control plane and a worker plane. What I mean by that is that by default when you launch a K0s controller node, it's not going to run kubelet. It's not going to run even Containerd. So, it just runs the controller processes like API servers, get schedulers and and so on, right? What that gives you is a lot of flexibility how you deploy your clusters. I
could now as a stupid example, deploy my control plane node as an EC2 instance in Amazon, expose it to public internet, like that's a good idea, right? And then I could run my worker node in my basement on set of Raspberry Pis and as long as the worker node can call home, everything works. We use this connectivity to do kind of reverse tunneling, so the communications is
kind of turned actually upside down. Which comes to a kind of a sibling project that we have called Kosmodrome. Because now if you think about it, what's control plane? Couple of Go lang processes and a database of sorts. Why do we make management of that complex? Because it's not, right? So, we thought that why can't we run that stuff in cluster as a pods and services and
whatnot? So, Kosmodrome is set of controllers that actually gets you a declarative way to manage your control planes. And not only that, it also acts as a set of cluster API providers. So, now you get full stack management in a declarative way. You define your control planes as custom resources, you define your whole infrastructure as cluster resources and boom, you can manage hundreds, thousands of clusters super
easily without having the need to spin up VMs for the control Um couple of highlights for the from the last release. Yes, we are also working with Windows in our case we're getting pretty much on par with the Linux support. And it's exactly the same pattern. You get one extra file, run it on Windows server and voila, you have a Windows worker node in our cluster. We've
been working on improving the Helm extensions, making Containerd more more operable to surface the deprecation warnings and and things like that for you. Uh we're also a sandbox project. Um been there about a year or so. We have an incubation application standing in November basically during KubeCon Atlanta. And the community has been has been growing. Just as as an example, the last minor release had 20 different
contributors contributing. And of course, more are welcome always. join the community. Together we are stronger. Especially again like Manuel said, if you are using K0s, tell us about it, fill in the adopters PR and we'll be happy to hear your use cases. Uh we will be hanging around in the project pavilion. We have a booth kiosk there on Tuesday afternoon, so if nothing else, come say hi
and maybe I can show how K0s actually works. Thank you. Awesome. Thank you, sir. >> [applause]
More from this event
See all 436 talks →
Best of KubeCon + CloudNativeCon Amsterdam 2026
2:17
The Quiet Work of Forever: Sustaining Open Source Communities - O. Hope Amaechi-Okorie, JSON Schema
26:24
Evolving KServe: The Unified Model Inference Platform for Both Predictive and... F. Spolti & J. Lee
32:40
Preventing S3 Cost Storms: Applying Cortex’s Efficiency Lessons to I/O-Heav... A. Fishman-Lichterman
5:32