Upgrade Platform Applications
Prerequisites
Before you begin, you must:
Set the
WORKSPACE_NAMESPACE
environment variable to the name of the workspace’s namespace where the cluster is attached:CODEexport WORKSPACE_NAMESPACE=<workspace_namespace>
Set the
WORKSPACE_NAME
environment variable to the name of the workspace where the cluster is attached:CODEexport WORKSPACE_NAME=<workspace_name>
Upgrade Platform Applications from the CLI
The DKP upgrade process deploys and upgrades Platform applications as a bundle for each cluster or workspace. For the Management Cluster or workspace, DKP upgrade handles all Platform applications; no other steps are necessary to upgrade the Platform application bundle. However, for managed or attached clusters or workspaces, you MUST manually upgrade the Platform applications bundle with the following command.
If you are upgrading your Platform applications as part of the DKP upgrade, upgrade your Platform applications on any additional Workspaces before proceeding with the Konvoy upgrade. Some applications in the previous release are not compatible with the Kubernetes version of this release, and upgrading Kubernetes is part of the DKP Konvoy upgrade process.
Execute the DKP Upgrade Command
Use this command to upgrade all platform applications in the given workspace and its projects to the same version as the platform applications running on the management cluster:
dkp upgrade workspace ${WORKSPACE_NAME}
An output similar to this appears:
✓ Ensuring HelmReleases are upgraded on clusters in namespace "${WORKSPACE_NAME}"
...
If the upgrade fails or times out, retry the command with higher verbosity to get more information on the upgrade process:
dkp upgrade workspace ${WORKSPACE_NAME} -v 4
If you find any HelmReleases
in a “broken” release state such as “exhausted” or “another rollback/release in progress”, you can trigger a reconciliation of the HelmRelease
using the following commands:
kubectl -n ${WORKSPACE_NAMESPACE} patch helmrelease <HELMRELEASE_NAME> --type='json' -p='[{"op": "replace", "path": "/spec/suspend", "value": true}]'
kubectl -n 4{WORKSPACE_NAMESPACE} patch helmrelease <HELMRELEASE_NAME> --type='json' -p='[{"op": "replace", "path": "/spec/suspend", "value": false}]'