Patch Version Upgrade
Redis patch version upgrades provide security fixes and stability improvements. The upgrade process utilizes a rolling update strategy, sequentially restarting pods to maintain service availability throughout the operation. Strategic scheduling of upgrades during maintenance windows is recommended to minimize potential impact on production workloads.
When patch versions become available, we recommend adopting them promptly to ensure your Redis instances benefit from the latest security patches and feature enhancements.
TOC
You can define how patch upgrades are applied to your Redis instances by configuring the upgrade policy.
Procedure
# Set the upgrade policy for a specific instance
$ kubectl -n <namespace> patch redis <instance-name> --type='json' -p='[{"op":"replace","path":"/spec/upgradeOption/autoUpgrade","value":"<true|false>"}]'
Individual instance upgrades provide granular control over the upgrade process, allowing for targeted validation before deploying changes across your environment.
Prerequisites
- An available patch version upgrade is indicated by an upgrade icon in the instance list
- The instance status must be
Running before initiating the upgrade
Procedure
# Check for the latest patch version available
$ kubectl get imageversion -l middleware.instance/type=redis,middleware.instance/latest -o jsonpath='{.items[*].spec.crVersion}'
# Check current patch version of a specific instance
$ kubectl -n <namespace> get redis <instance-name> -o jsonpath='{.status.upgradeStatus.crVersion}'
# If the current version is older than the latest version, proceed with the upgrade
$ kubectl -n <namespace> patch redis <instance-name> --type='json' -p='[{"op":"replace","path":"/spec/upgradeOption/crVersion","value": "<new-patch-version>"}]'
Execute Bulk Upgrade Operation
The bulk upgrade feature enables efficient management of upgrades across multiple Redis instances, streamlining the maintenance process for large deployments.
Prerequisites
- Platform administrator privileges
- Target instances must be in a
Running state.
Procedure
# Check for the latest patch version available
$ kubectl get imageversion -l middleware.instance/type=redis,middleware.instance/latest -o jsonpath='{.items[*].spec.crVersion}'
# Proceed bulk upgrade for multiple instances
$ kubectl -n <namespace> patch redis --all --type='json' -p='[{"op":"replace","path":"/spec/upgradeOption/crVersion","value": "<new-patch-version>"}]'