Team Lens proudly presents
Team Lens proudly presents
From pets to cattle: declaratively manage hosted k0s control planes, workers, clusters, and underlying infrastructure through the Kubernetes API.
Experience unparalleled isolation, scalability, and resource efficiency for your Kubernetes control planes with k0smotron - the ultimate Kubernetes management solution. It’s designed for k0s
k0smotron lets you easily create and manage hosted control planes in an existing Kubernetes cluster. This permits unparalleled scalability and flexibility when working with many clusters, easing the burden of multi-cluster operations and maintenance.
Using k0smotron the clusters controlplane and workerplane are truly separated. The controlplane, running on an existing cluster has no direct networking connection to the workerplane. This is a similar pattern to how all the major cloud providers separate the control and worker planes on the managed clusters.
With k0smotron you can connect worker nodes from ANY infrastructure to your cluster control plane. This allows you to manage all control planes in a shared infrastructure, and in a homogenous way, but connect each cluster’s workers from separate remote infrastructures.
k0smotron is NOT limited to only managing hosted k0s control planes. It has now evolved into a full Cluster API provider for k0s.
k0smotron operates as:
ControlPlane provider
Bootstrap provider
Infrastructure provider (with k0smotron RemoteMachine)
k0smotron RemoteMachine functions as a Cluster API compliant infrastructure provider enabling cluster provisioning on remote machines using SSH connections. This opens up new possibilities for managing remote machines seamlessly in your Kubernetes clusters. Perfect for diverse infrastructure setups, bare metal and for environments which have no existing Cluster API support.
You install k0smotron operator into an existing Kubernetes cluster. k0smotron operator will create and manage k0s control planes in that cluster. It leverages the natural pattern of working with custom resources to manage the lifecycle of the k0s control planes. k0smotron will automatically create all the needed Kubernetes lower level constructs, such as pods, configmaps etc., to
k0smotron is an Kubernetes operator designed to manage the lifecycle of k0s control planes in a Kubernetes (any distro) cluster. By running the control plane on a k8s cluster we can enjoy and leverage the high availability and auto-healing functionalities of the underlying cluster, a.k.a Mothership.
Often when running integration and end-to-end testing for your software running in Kubernetes you need somewhat temporary clusters in CI. Why not leverage the true flexibility and create those clusters on-demand using k0smotron. Creating a controlplane is as easy as creating a custom resource, so is the deletion of it. No more long living snowflake clusters for CI purposes.
Running Kubernetes on the network edge usually means running in low resource infrastructure. What this often means is that setting up the controlplane is either a challenge or a mission impossible. Running the controlplane on an existing cluster, on a separate dedicated infrastructure, removes that challenge and lets you focus on the real edge.
Running on the edge often also means a large number of clusters to manage. Do you really want to dedicate nodes for each cluster controlplane and manage all the infrastructure for those?
With k0smotron, you can distribute hosted or conventional Kubernetes control planes and workers across one or multiple infrastructures. Aggregate control planes in a ‘mothership’ cluster on public cloud, and put workers (and workloads) on another public cloud, on-premises cloud, or on bare metal machines from datacenter to edge. Explore novel cluster configurations to enhance reliability, security, performance, and to control costs.
Getting started with k0smotron is easy. Simply install the controller into existing cluster:
kubectl apply -f https://docs.k0smotron.io/stable/install.yaml
Then create a k0s control plane:
kubectl apply -f - <<EOF
apiVersion: k0smotron.io/v1beta1
kind: Cluster
metadata:
name: my-k0smotron
spec: {}
EOF
And that's it. You now have a k0s control plane running in your cluster. For further details how to work with the created cluster control plane check out the documentation.