The year has changed and the journey of k0s is just getting started. We are proud to announce k0s version 0.10. Again, this is one step getting us closer to the upcoming GA release of k0s and getting k0s ready for even larger scale use. In 0.10, we will bring improvements for example for cluster lifecycle management. Continue reading for more info about 0.10.
Support for k0sctl
The team has worked very hard to make cluster management easy. In 0.10 k0s is getting support for k0sctl, which is a tool for deploying multi-node clusters with one command. This will make deployment easy. By using a simple configuration, the user can define which kind of cluster is needed. The user just specifies the list of nodes where k0s needs to be deployed and this tool will do all the hard work. It’ll connect to each node, download and deploy k0s (controller/worker as defined), and attach the nodes together automatically and securely. This will make deployments of k0s clusters easily repeatable and consistent.
Just like k0s, k0sctl is open source and available on Github. We are looking forward to your feedback!
Dual-Stack IPv4/IPv6 (experimental)
The dual-stack feature will introduce the allocation of both IPv4 and IPv6 addresses to Pods and Services. This feature is still in the alpha state in Kubernetes 1.20 which makes it experimental also in k0s. If you’ve read the kubernetes documentation and some other articles, you’ll see that setting up both Kubernetes and the CNI to support IPv6 is quite a big and delicate effort which might lead to some sleepless nights. Now we’ve spent some sleepless nights so you don’t have to. Setting up the k0s cluster with IPv4/IPv6 dual stack support is as easy as configuring few options:
This configuration sets up everything properly on the Kubernetes side and also enables IPv4/IPv6 dual stack functionality on Calico CNI.
Improvements to High-availability Support
There have been problems with k0s high-availability support (reported by the community). When a cluster has had multiple controller nodes, the connection from worker nodes has been successfully done with only one controller node. The other controller nodes have lacked the connection to the worker nodes and caused problems for the high-availability function. This behaviour is now fixed so that the worker nodes get info about all the controller nodes (behind a load balancer) and create the connections to each controller as they should. Note that the high-availability feature requires a load balancer for controllers in order to work correctly.
Improvements to k0s install command
k0s install command has been improved to provide a robust foundation for setting up the k0s as a system level service. It’s able to auto detect the OS init system (systemd and openrc currently supported) and sets up k0s service to be booted up with server init. We’re using this also with the above mentioned k0sctl tool but it also serves as a good helper for more advanced use cases.
Surprisingly, just 1 component was updated in this release! This time, we bumped Kubernetes to version 1.20.2. As usual, this will bring k0s users to the latest version of Kubernetes without delays.
- About Kubernetes’ CNI Plugins and configuring custom CNI for k0s:
- Installing Ambassador Gateway on k0s:
- Creating Raspberry Pi 4 Cluster
- Getting started with k0s
As a gentle reminder: if you are not yet following us on Twitter, please do it now! Also, please join the k0s Slack channel (hosted by our friends at Lens IDE community) to hear the latest news, discussions and provide your feedback.
k0s is zero friction Kubernetes distribution. It provides a unique mix of simplicity, security and modularity. k0s is 100% open source and free of charge, for any purpose. The k0s open source project is backed by a number of Kubernetes, Docker and Linux ecosystem pioneers. It combines experience with all the best innovations and ideas in the ecosystem to create a pure kubernetes distribution that is slim, modern & fresh while maximizing the developer happiness. https://k0sproject.io