Upgrading Mirantis k0rdent Enterprise#
Upgrading Mirantis k0rdent Enterprise involves making upgrades to the
Management
object. To do that, you must have the Global Admin
role. (For
detailed information about Mirantis k0rdent Enterprise RBAC roles and
permissions, refer to the RBAC documentation.) Follow
these steps to upgrade Mirantis k0rdent Enterprise:
-
Create a new
Release
objectStart by creating a
Release
object in the management cluster that points to the desired version. You can getRelease
object for the current version from the following URL:https://get.mirantis.com/k0rdent-enterprise/1.0.0/release.yaml
For example, this
Release
object looks like this:apiVersion: k0rdent.mirantis.com/v1alpha1 kind: Release metadata: name: k0rdent-enterprise-1-0-0 annotations: helm.sh/resource-policy: keep spec: version: 1.0.0 kcm: template: k0rdent-enterprise-1-0-0 capi: template: cluster-api-1-0-0 providers: - name: cluster-api-provider-k0sproject-k0smotron template: cluster-api-provider-k0sproject-k0smotron-1-0-2 - name: cluster-api-provider-azure template: cluster-api-provider-azure-1-0-1 - name: cluster-api-provider-vsphere template: cluster-api-provider-vsphere-1-0-0 - name: cluster-api-provider-aws template: cluster-api-provider-aws-1-0-0 - name: cluster-api-provider-openstack template: cluster-api-provider-openstack-1-0-1 - name: cluster-api-provider-docker template: cluster-api-provider-docker-1-0-0 - name: cluster-api-provider-gcp template: cluster-api-provider-gcp-1-0-0 - name: cluster-api-provider-ipam template: cluster-api-provider-ipam-1-0-0 - name: cluster-api-provider-infoblox template: cluster-api-provider-infoblox-1-0-0 - name: projectsveltos template: projectsveltos-0-54-4
Thankfully, you don't have to build these YAML files yourself. Once you've chosen a release, you can go ahead and create the release object by referencing the YAML file online, as in:
kubectl create -f https://get.mirantis.com/k0rdent-enterprise/1.0.0/release.yaml
release.k0rdent.mirantis.com/k0rdent-enterprise-1-0-0 created
-
List Available
Releases
Once you've created the new
Release
you need to update theManagement
object to use it. Start by viewing all availableRelease
s:kubectl get releases
NAME AGE kcm-0-0-6 71m kcm-0-0-7 65m kcm-0-1-0 6d9h k0rdent-enterprise-1-0-0 12m
-
Patch the
Management
object with the newRelease
Update the
spec.release
field in theManagement
object to point to the new release. Replace<release-name>
with the name of your desired release:RELEASE_NAME=k0rdent-enterprise-1-0-0 kubectl patch managements.k0rdent.mirantis.com kcm --patch "{\"spec\":{\"release\":\"${RELEASE_NAME}\"}}" --type=merge
-
Verify the Upgrade
Although the change will be made immediately, it will take some time for Mirantis k0rdent Enterprise to update the components it should be using. Monitor the readiness of the
Management
object to ensure the upgrade was successful. For example:kubectl get managements.k0rdent.mirantis.com kcm
NAME READY RELEASE AGE kcm True k0rdent-enterprise-1-0-0 4m34s