Update k0smotron in standalone cluster#
To update a standalone k0smotron cluster, you need to update the k0s version in the YAML configuration file:
-
Localize the configuration of deployed k0smotron cluster in your repository. For example:
apiVersion: k0smotron.io/v1beta1 kind: Cluster metadata: name: k0smotron-test spec: replicas: 1 k0sImage: k0sproject/k0s version: v1.27.1-k0s.0
-
Configure persistence to prevent data loss. For example:
--- apiVersion: controlplane.cluster.x-k8s.io/v1beta1 kind: K0smotronControlPlane metadata: name: docker-test-cp spec: version: v1.27.2-k0s.0 persistence: type: hostPath hostPath: "/tmp/kmc-test" # k0smotron will mount a basic hostPath volume to avoid data loss.
Using the
hostPath
volume type introduces many security risks. Avoid configuring persistence for volumes of thehostPath
type. Learn more from official Kubernetes documentation: hostPath. -
Change all the k0s versions to the target one. For example:
apiVersion: k0smotron.io/v1beta1 kind: Cluster metadata: name: k0smotron-test spec: replicas: 1 k0sImage: k0sproject/k0s version: v1.28.7-k0s.0 # new k0s version
-
Update the resources:
kubectl apply -f ./path-to-file.yaml
The update procedure is completed, you now have the target version of k0smotron.