Manual upgrade of Cloud Scale using the Superchart
The following steps are applicable for performing a manual upgrade from Cloud Scale version 11.1 to later versions (11.1.0.2 and above) using Superchart.
Upgrading Cloud Scale deployment using Superchart
- Deactivate all policy and suspend the scheduling.
- Run the following command and check the operators release version:
helm ls -n netbackup-operator-system
- Upload images for operators and Cloud Scale services to a public or private registry.
- Upgrade operators by specifying the new tags.
Run the helm command from the following location:
/VRTSk8s-netbackup-<version>/helm/
Extract the
operators-values.yamlfile from the Helm package, make modifications, and upgrade the operators.Run the following command with
--reuse-valuesoption for upgrading the operators:helm upgrade operators operators-<version>.tgz -n netbackup-operator-system --reuse-values
--set msdp-operator.image.tag=<msdp image tag>
--set nb-operator.image.tag=<primary image tag>
--set nb-operator.msdp-operator.image.tag=<msdp image tag>
--set nb-operator.flexsnap-operator.image.tag=<nbsm image tag>
--set flexsnap-operator.image.tag=<NBSM image tag>
- Use the following command to verify the operator pod status:
kubectl get all -n netbackup-operator-system
- Depending on the environment, execute the following steps to upgrade the Cloud Scale deployment (fluentbit, postgresql and the environment):
For non-DBaaS environment: If the service image tag exists in version 11.1, perform the following steps for the PrimaryServer pods.
Run the following command:
helm upgrade cloudscale cloudscale-<version>.tgz -n netbackup --reuse-values --set environment.primary.paused=true
Remove the serviceImagetag section by using the kubectl edit command.
Run the following command:
helm upgrade cloudscale cloudscale-<version>.tgz -n netbackup --reuse-values --set environment.primary.tag=new-tag --set environment.primary.paused=false
For example:
helm upgrade cloudscale cloudscale-<version>.tgz -n netbackup --reuse-values \ --set fluentbit.image.tag=<primary image tag> --set fluentbit.cleanup.image.tag=<primary image tag> \ --set postgresql.image.tag=<postgres image tag> --set postgresql.postgresqlUpgrade.image.tag=<postgres image tag> \ --set environment.primary.tag=<primary image tag> \ --set environment.mediaServers[0].name=media1 \ --set environment.mediaServers[0].replicas=1 \ --set environment.mediaServers[0].nodeSelector.labelKey=agentpool \ --set environment.mediaServers[0].nodeSelector.labelValue=mediapool \ --set environment.mediaServers[0].storage.data.capacity=50Gi \ --set environment.mediaServers[0].storage.data.storageClassName=managed-csi-hdd \ --set environment.mediaServers[0].storage.log.capacity=30Gi \ --set environment.mediaServers[0].storage.log.storageClassName=managed-csi-hdd \ --set environment.mediaServers[0].tag=<primary image tag> \ --set environment.msdpScaleouts.tag=<MSDP image tag> \ --set environment.cpServer.tag=<NBSM image tag>For DBaaS environment: If the service image tag exists in version 11.1, perform the following steps for the PrimaryServer pods.
Run the following command:
helm upgrade cloudscale cloudscale-<version>.tgz -n netbackup --reuse-values --set environment.primary.paused=true
Remove the serviceImagetag section by using the kubectl edit command.
Run the following command:
helm upgrade cloudscale cloudscale-<version>.tgz -n netbackup --reuse-values --set environment.primary.tag=new-tag --set environment.primary.paused=false
For example:
helm upgrade cloudscale cloudscale-<version>.tgz -n netbackup --reuse-values \ --set fluentbit.image.tag=<primary image tag> --set fluentbit.cleanup.image.tag=<primary image tag> \ --set environment.primary.tag=<primary image tag> \ --set environment.mediaServers[0].name=media1 \ --set environment.mediaServers[0].replicas=1 \ --set environment.mediaServers[0].nodeSelector.labelKey=agentpool \ --set environment.mediaServers[0].nodeSelector.labelValue=mediapool \ --set environment.mediaServers[0].storage.data.capacity=50Gi \ --set environment.mediaServers[0].storage.data.storageClassName=managed-csi-hdd \ --set environment.mediaServers[0].storage.log.capacity=30Gi \ --set environment.mediaServers[0].storage.log.storageClassName=managed-csi-hdd \ --set environment.mediaServers[0].tag=<primary image tag> \ --set environment.msdpScaleouts.tag=<MSDP image tag>r \ --set environment.cpServer.tag=<NBSM image tag> - Wait for the Environment CR to reach the Ready status. During this period, pods may restart and new services may start.
kubectl get environment -n namespace
- Log into the primary server using the kubectl exec -it pod/,primary-podname> -n netbackup -- bash command and resume the backup job processing by using the following command:
nbpemreq -resume_scheduling