Open makhov opened 9 months ago
Current sequence of actions that need to be performed in order to upgrade child k0s cluster with k0smotron as Control Plane Bootstrap provider:
apiVersion: v1
kind: ConfigMap
metadata:
name: example-cluster-autopilot-plan
namespace: default
data:
data: |
apiVersion: autopilot.k0sproject.io/v1beta2
kind: Plan
metadata:
name: autopilot
spec:
id: id1234
timestamp: now
commands:
- k0supdate:
version: v1.29.1+k0s.1
platforms:
linux-amd64:
url: https://github.com/k0sproject/k0s/releases/download/v1.29.1+k0s.1/k0s-v1.29.1+k0s.1-amd64
targets:
controllers:
discovery:
selector: {}
ClusterResourceSet
(the easiest way to do it is to use kubectl edit clusterresourceset <crs-name>
)spec.k0sVersion
in K0sControlPlane
resource (this needs to be done in order to new controllers, if there will be any, to have new k0s version)Once controllers are upgraded, you can proceed with workers upgrade:
K0sWorkerConfigTemplate
MachineDeployment
Issues, that need to be addressed
MachineDeployment
, it should also change it in K0sWorkerConfigTemplate
(because MachineDeployment
is the owner for K0sWorkerConfigTemplate
) so you don't have to change versions in two different places
Check, and if needed, support k0s version updates for RemoteMachine's and other k0smotron scenarios