Comment on page
Mayastor supports seamless upgrades starting with target version 2.1.0 and later, and source versions 2.0.0 and later. To upgrade from a previous version(1.0.5 or prior) to 2.1.0 or later, visit Legacy Upgrade Support.
- From 2.0.x to 2.4.0
- The upgrade process is generally non-disruptive for volumes with a replication factor greater than 1 and all replicas being healthy, prior to starting the upgrade.
To upgrade Mayastor deployment on the Kubernetes cluster, execute:
kubectl mayastor upgrade
To view all the available options and sub-commands that can be used with the upgrade command, execute:
kubectl mayastor upgrade -h
`Upgrade` the deployment
Usage: kubectl-mayastor upgrade [OPTIONS]
Display all the validations output but will not execute upgrade
-r, --rest <REST>
The rest endpoint to connect to
If set then upgrade will skip the io-engine pods restart
-k, --kube-config-path <KUBE_CONFIG_PATH>
Path to kubeconfig file
If set then it will continue with upgrade without validating singla replica volume
If set then upgrade will skip the repilca rebuild in progress validation
If set then upgrade will skip the cordoned node validation
-o, --output <OUTPUT>
The Output, viz yaml, json [default: none]
-j, --jaeger <JAEGER>
Trace rest requests to the Jaeger endpoint agent
-n, --namespace <NAMESPACE>
Kubernetes namespace of mayastor service, defaults to mayastor [default: mayastor]
To view the status of upgrade, execute:
kubectl mayastor get upgrade-status
Upgrade From: 2.0.0
Upgrade To: 2.4.0
Upgrade Status: Successfully upgraded Mayastor
To view the logs of upgrade job, execute:
kubectl logs <upgrade-job-pod-name> -n <mayastor-namespace>
- 1.The time taken to upgrade is directly proportional to the number of Mayastor nodes and Mayastor volumes.
- 2.To upgrade to a particular Mayastor version, ensure you are using the same version of kubectl plugin.
- 3.The above process of upgrade creates one Job in the namespace where Mayastor is installed, one ClusterRole, one ClusterRoleBinding and one ServiceAccount.