You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
1. Check [Supported Kubernetes distributions]({{< relref "/operate/kubernetes/reference/supported_k8s_distributions" >}}) to make sure your Kubernetes distribution is supported.
22
+
The following steps ensure you have the minimum versions of all components necessary to upgrade to 7.8.2-2. **Without these minimum versions, the upgrade will freeze and require manual recovery.**
23
23
24
-
2. Use `oc get rec` and verify the `LICENSE STATE` is valid on your REC before you start the upgrade process.
24
+
See the [troubleshooting](#troubleshooting) section for details on recovering a failed upgrade.
25
25
26
-
3. Verify you are upgrading from Redis Enterprise operator version 6.2.10-45 or later. If you are not, you must upgrade to 6.2.10-45 before upgrading to versions 6.2.18 or later.
26
+
### Kubernetes version
27
27
28
-
4. When upgrading existing clusters running on RHEL7-based images, make sure to select a RHEL7-based image for the new version. See [release notes]({{< relref "/operate/kubernetes/release-notes/" >}}) for more info.
28
+
Check [Supported Kubernetes distributions]({{<relref "/operate/kubernetes/reference/supported_k8s_distributions" >}}) to make sure your Kubernetes distribution is supported by 7.8.2-2. If not, upgrade your Kubernetes distribution before upgrading the Redis operator.
29
29
30
-
5. If you want to migrate from RHEL7-based images to RHEL8-based images, you'll need to upgrade to version 7.2.4-2 with a RHEL7-based image, then you'll be able to migrate to a RHEL8-based image when upgrading to 7.2.4-**TBD**.
30
+
### Redis operator version
31
31
32
+
Your Redis Enterprise clusters must be running version 7.4.2-2 or later before upgrading to 7.8.2-2. See the [7.4 upgrade]({{<relref "/operate/kubernetes/7.4.6/upgrade">}}) for detailed steps.
33
+
34
+
### Redis database version
35
+
36
+
Your Redis databases must be running version 7.2 or later before upgrading your cluster version to 7.8.2-2. See [upgrade databases](#upgrade-databases) for detailed steps. You can find your database version in the [REDB `spec.redisVersion` field]({{<relref "/operate/kubernetes/reference/redis_enterprise_database_api#redisversion" >}}).
37
+
38
+
### RHEL9-compatible modules
39
+
40
+
Upgrading to Redis operator version 7.8.2-2 requires migrating your Redis Enterprise nodes to RHEL9 from either Ubuntu 18 or RHEL8. If your databases use modules, you need to manually install modules compatibile with RHEL9.
See [Upgrade modules]({{<relref "/operate/oss_and_stack/stack-with-enterprise/install/upgrade-module">}}) for details on how to upgrade modules with the `rladmin` tool.
55
+
56
+
### Valid license
57
+
58
+
Use `kubectl get rec` and verify the `LICENSE STATE` is valid on your REC before you start the upgrade process.
32
59
## Upgrade the operator
33
60
34
61
### Download the bundle
@@ -174,38 +201,34 @@ To see the status of the current rolling upgrade, run:
174
201
oc rollout status sts <REC_name>
175
202
```
176
203
177
-
## After upgrading
178
-
179
-
For OpenShift users, operator version 6.4.2-6 introduced a new SCC (`redis-enterprise-scc-v2`). If any of your OpenShift RedisEnterpriseClusters are running versions earlier than 6.2.4-6, you need to keep both the new and old versions of the SCC.
204
+
### Upgrade databases
180
205
181
-
If all of your clusters have been upgraded to operator version 6.4.2-6 or later, you can delete the old version of the SCC (`redis-enterprise-scc`) and remove the binding to your service account.
206
+
After the cluster is upgraded, you can upgrade your databases. Specify your new database version in the `spec.redisVersion` field for your REDB and REAADB custom resources. Supported database versions for operator version 7.8.2-2 include `"7.2"` and `"7.4"` (note this value is a string).
182
207
183
-
1. Delete the old version of the SCC
208
+
Note that if your cluster [`redisUpgradePolicy`]({{<relref "/operate/kubernetes/reference/redis_enterprise_cluster_api#redisupgradepolicy" >}}) or your database [`redisVersion`]({{< relref "/operate/kubernetes/reference/redis_enterprise_database_api#redisversion" >}}) are set to `major`, you won't be able to upgrade those databases to minor versions. See [Redis upgrade policy]({{< relref "/operate/rs/installing-upgrading/upgrading#redis-upgrade-policy">}}) for more details.
184
209
185
-
```sh
186
-
oc delete scc redis-enterprise-scc
187
-
```
210
+
## Troubleshooting
188
211
189
-
The output should look similar to the following:
212
+
If you start an upgrade without meeting the [prerequisites](#prerequisites), the operator will freeze the upgrade. Check the operator logs for the source of the error. The REDB reconsilliation doesn't work during an upgrade, so you need to apply a manual fix with the Redis Software API (examples below). The updates will also need to be added to the REDB custom resource.
If the operator logs show an event related to an unsupported module, download the updated module locally, and install it using the `v2/modules` API endpoint.
200
217
218
+
```sh
219
+
curl -sfk -u <rec_username>:<rec_password> -X POST -F 'module=@<full path to your module>' https://localhost:9443/v2/modules
220
+
```
201
221
202
-
## Upgrade databases
222
+
After updating the modules with the Redis Software API, update the REDB custom resource to reflect the change.
203
223
204
-
{{<warning>}}In version 7.2.4, old module versions and manually uploaded modules are not persisted. If databases are not upgraded after cluster upgrade, and require cluster recovery afterwards, you'll need to contact Redis support. This issue will be fixed in the next maintenance release by moving the stored location of the modules.{{</warning>}}
224
+
### Invalid database version
205
225
206
-
After the cluster is upgraded, you can upgrade your databases. The process for upgrading databases is the same for both Kubernetes and non-Kubernetes deployments. For more details on how to [upgrade a database]({{< relref "/operate/rs/installing-upgrading/upgrading/upgrade-database">}}), see the [Upgrade an existing Redis Enterprise Software deployment]({{< relref "/operate/rs/installing-upgrading/upgrading">}}) documentation.
226
+
If the operator logs show an event related to an incompatible database version, upgradethe database using the Redis Software API.
207
227
208
-
Note that if your cluster [`redisUpgradePolicy`]({{< relref "/operate/kubernetes/reference/redis_enterprise_cluster_api#redisupgradepolicy">}}) or your database [`redisVersion`]({{< relref "/operate/kubernetes/reference/redis_enterprise_database_api#redisversion">}}) are set to `major`, you won't be able to upgrade those databases to minor versions. See [Redis upgrade policy]({{< relref "/operate/rs/installing-upgrading/upgrading#redis-upgrade-policy" >}}) for more details.
Redis implements rolling updates for software upgrades in Kubernetes deployments. The upgrade process includes updating three components:
15
15
16
-
1. Check [Supported Kubernetes distributions]({{< relref "/operate/kubernetes/reference/supported_k8s_distributions" >}}) to make sure your Kubernetes distribution is supported.
16
+
1.[Upgrade the Redis Enterprise operator](#upgrade-the-operator)
17
+
1.[Upgrade the Redis Enterprise cluster (REC)](#upgrade-the-redis-enterprise-cluster-rec)
2. Use `oc get rec` and verify the `LICENSE STATE` is valid on your REC before you start the upgrade process.
20
+
## Prerequisites
19
21
20
-
3. Verify you are upgrading from Redis Enterprise operator version 6.2.10-45 or later. If you are not, you must upgrade to 6.2.10-45 before upgrading to versions 6.2.18 or later.
22
+
The following steps ensure you have the minimum versions of all components necessary to upgrade to 7.8.2-2. **Without these minimum versions, the upgrade will freeze and require manual recovery.**
23
+
24
+
See the [troubleshooting](#troubleshooting) section for details on recovering a failed upgrade.
25
+
26
+
### Kubernetes version
27
+
28
+
Check [Supported Kubernetes distributions]({{<relref "/operate/kubernetes/reference/supported_k8s_distributions" >}}) to make sure your Kubernetes distribution is supported by 7.8.2-2. If not, upgrade your Kubernetes distribution before upgrading the Redis operator.
29
+
30
+
### Redis operator version
31
+
32
+
Your Redis Enterprise clusters must be running version 7.4.2-2 or later before upgrading to 7.8.2-2. See the [7.4 upgrade]({{<relref "/operate/kubernetes/7.4.6/upgrade">}}) for detailed steps.
33
+
34
+
### Redis database version
35
+
36
+
Your Redis databases must be running version 7.2 or later before upgrading your cluster version to 7.8.2-2. See [upgrade databases](#upgrade-databases) for detailed steps. You can find your database version in the [REDB `spec.redisVersion` field]({{<relref "/operate/kubernetes/reference/redis_enterprise_database_api#redisversion" >}}).
37
+
38
+
### RHEL9-compatible modules
39
+
40
+
Upgrading to Redis operator version 7.8.2-2 requires migrating your Redis Enterprise nodes to RHEL9 from either Ubuntu 18 or RHEL8. If your databases use modules, you need to manually install modules compatibile with RHEL9.
See [Upgrade modules]({{<relref "/operate/oss_and_stack/stack-with-enterprise/install/upgrade-module">}}) for details on how to upgrade modules with the `rladmin` tool.
55
+
56
+
### Valid license
57
+
58
+
Use `kubectl get rec` and verify the `LICENSE STATE` is valid on your REC before you start the upgrade process.
If you are upgrading from operator version 6.4.2-6 or before, see the [after upgrading section in the OpenShift CLI upgrade]({{<relref "/operate/kubernetes/upgrade/openshift-cli#after-upgrading">}}) to delete the old SCC and role binding after all clusters are running 6.4.2-6 or later.
89
+
### Upgrade databases
90
+
91
+
After the cluster is upgraded, you can upgrade your databases. Specify your new database version in the `spec.redisVersion` field for your REDB and REAADB custom resources. Supported database versions for operator version 7.8.2-2 include `"7.2"` and `"7.4"` (note this value is a string).
92
+
93
+
Note that if your cluster [`redisUpgradePolicy`]({{<relref "/operate/kubernetes/reference/redis_enterprise_cluster_api#redisupgradepolicy" >}}) or your database [`redisVersion`]({{< relref "/operate/kubernetes/reference/redis_enterprise_database_api#redisversion" >}}) are set to `major`, you won't be able to upgrade those databases to minor versions. See [Redis upgrade policy]({{< relref "/operate/rs/installing-upgrading/upgrading#redis-upgrade-policy" >}}) for more details.
94
+
95
+
## Troubleshooting
96
+
97
+
If you start an upgrade without meeting the [prerequisites](#prerequisites), the operator will freeze the upgrade. Check the operator logs for the source of the error. The REDB reconsilliation doesn't work during an upgrade, so you need to apply a manual fix with the Redis Software API (examples below). The updates will also need to be added to the REDB custom resource.
98
+
99
+
### Invalid module version
100
+
101
+
If the operator logs show an event related to an unsupported module, download the updated module locally, and install it using the `v2/modules` API endpoint.
102
+
103
+
```sh
104
+
curl -sfk -u <rec_username>:<rec_password> -X POST -F 'module=@<full path to your module>' https://localhost:9443/v2/modules
105
+
```
106
+
107
+
After updating the modules with the Redis Software API, update the REDB custom resource to reflect the change.
108
+
109
+
### Invalid database version
110
+
111
+
If the operator logs show an event related to an incompatible database version, upgrade the database using the Redis Software API.
0 commit comments