Skip to content

Commit 050b5e4

Browse files
7.8 upgrade prereq
1 parent c5146f6 commit 050b5e4

File tree

5 files changed

+58
-30
lines changed

5 files changed

+58
-30
lines changed

content/operate/kubernetes/release-notes/7-8-2-releases/7-8-2-8-nov24.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ See [Upgrade Redis Enterprise for Kubernetes]({{<relref "/operate/kubernetes/upg
6767
- REDB field `upgradeSpec.upgradeModulesToLatest is deprecated.
6868
- REDB field `spec.modulesList.version` is deprecated.
6969

70-
### Supported distributions
70+
## Supported distributions
7171

7272
The following table shows supported distributions at the time of this release. You can also find this list in [Supported Kubernetes distributions]({{< relref "/operate/kubernetes/reference/supported_k8s_distributions" >}}).
7373

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
Title: Upgrade Redis Enterprise for Kubernetes
2+
Title: Upgrade Redis Enterprise for Kubernetes 7.8.2-2
33
alwaysopen: false
44
categories:
55
- docs
@@ -11,30 +11,32 @@ linkTitle: Upgrade
1111
weight: 15
1212
---
1313

14-
Redis implements rolling updates for software upgrades in Kubernetes deployments. The upgrade process includes updating three components:
14+
The upgrade process includes updating three components:
1515

1616
1. Upgrade the Redis Enterprise operator
1717
2. Upgrade the Redis Enterprise cluster (REC)
1818
3. Upgrade Redis Enterprise databases (REDB)
1919

20-
To use OpenShift container platform CLI to upgrade your Redis Enterprise, see [Upgrade Redis Enterprise with OpenShift CLI]({{< relref "/operate/kubernetes/upgrade/openshift-cli.md" >}}).
20+
If you are using OpenShift, see [Upgrade Redis Enterprise with OpenShift CLI]({{<relref "/operate/kubernetes/upgrade/openshift-cli">}}) or [Upgrade Redis Enterprise with OpenShift OperatorHub]({{<relref "/operate/kubernetes/upgrade/upgrade-olm">}}).
2121

22-
For all other Kubernetes distributions, see [Upgrade Redis Enterprise for Kubernetes]({{< relref "/operate/kubernetes/upgrade/upgrade-redis-cluster.md" >}}).
22+
For all other Kubernetes distributions, see [Upgrade Redis Enterprise for Kubernetes]({{<relref "/operate/kubernetes/upgrade/upgrade-redis-cluster" >}}).
2323

2424
## Upgrade compatibility
2525

26-
When upgrading, both your Kubernetes version and Redis operator version need to be supported at all times. When upgrading your Kubernetes version, you need to make sure both the current and target K8s version are supported by your Redis operator version. When upgrading your Redis operator version, you need make sure both the current and target operator versions are supported by your K8s version. This means if you are planning a large jump in versions, the upgrade might need to be done in multiple steps.
26+
When upgrading, both your Kubernetes version and Redis operator version need to be supported at all times.
2727

28-
The flow chart below can help you decide if your upgrade requires multiple steps.
28+
{{<warning>}}If your current Kubernetes distribution is not [supported by 7.8.2-2]({{<relref "/operate/kubernetes/release-notes/7-8-2-releases/7-8-2-8-nov24#supported-distributions">}}), upgrade to a supported distribution before upgrading. {{</warning>}}
2929

30-
{{< image filename="/images/k8s/upgrade-flowchart.jpg" alt="Upgrade flowchart" >}}
30+
## RHEL9-based image
3131

32-
## How does the REC upgrade work?
32+
Redis Enterprise images are now based on Red Hat Enterprise Linux 9 (RHEL9). This means upgrades to 7.8.2-2 require:
3333

34-
The Redis Enterprise cluster (REC) uses a rolling upgrade, meaning it upgrades pods one by one. Each pod is updated after the last one completes successfully. This helps keep your cluster available for use.
34+
- Cluster version of 7.4.2-2 or later.
35+
- Database version 7.2 or later.
36+
- RHEL9 compatible binaries for any modules you need.
3537

36-
To upgrade, the cluster terminates each pod and deploys a new pod based on the new image.
37-
Before each pod goes down, the operator checks if the pod is a primary (master) for the cluster, and if it hosts any primary (master) shards. If so, a replica on a different pod is promoted to primary. Then when the pod is terminated, the API remains available through the newly promoted primary pod.
38+
For detailed steps, see the relevant upgrade page:
3839

39-
After a pod is updated, the next pod is terminated and updated.
40-
After all of the pods are updated, the upgrade process is complete.
40+
- [OpenShift CLI]({{<relref "/operate/kubernetes/upgrade/openshift-cli">}})
41+
- [OpenShift OperatorHub]({{<relref "/operate/kubernetes/upgrade/upgrade-olm">}})
42+
- [Kubernetes]({{<relref "/operate/kubernetes/upgrade/upgrade-redis-cluster" >}})

content/operate/kubernetes/upgrade/openshift-cli.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
Title: Upgrade Redis Enterprise with OpenShift CLI
2+
Title: Upgrade Redis Enterprise 7.8.2-2 with OpenShift CLI
33
alwaysopen: false
44
categories:
55
- docs

content/operate/kubernetes/upgrade/upgrade-olm.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
Title: Upgrade Redis Enterprise with OpenShift OperatorHub
2+
Title: Upgrade Redis Enterprise 7.8.2-2 with OpenShift OperatorHub
33
alwaysopen: false
44
categories:
55
- docs

content/operate/kubernetes/upgrade/upgrade-redis-cluster.md

Lines changed: 40 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
Title: Upgrade Redis Enterprise for Kubernetes
2+
Title: Upgrade Redis Enterprise for Kubernetes 7.8.2-2
33
alwaysopen: false
44
categories:
55
- docs
@@ -19,13 +19,43 @@ Redis implements rolling updates for software upgrades in Kubernetes deployments
1919

2020
## Prerequisites
2121

22-
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, a validation error will block the upgrade and it will require manual recovery.**
2323

24-
1. Use `kubectl 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.
2525

26-
1. 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
2727

28-
{{<warning>}}**Upgrade cluster operating system** If your databases use modules, you need to update all nodes in the cluster to Redis Enterprise 7.2.4 or later before upgrading your operating system. See [Upgrade a cluster's operating system]({{< relref "/operate/rs/installing-upgrading/upgrading/upgrade-os" >}})in the Redis Enterprise Software documentation for more details.{{</warning>}}
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.
41+
42+
To see which modules you have installed, run:
43+
44+
```sh
45+
curl -k -u <rec_username>:<rec_password> -X GET https://localhost:9443/v1/modules | jq -r 'map([.module_name, .semantic_version, (.platforms | keys)]) | .[] | .[0] as $name | .[1] as $version | .[2][] | $name + "-" + $version + "-" + .' | sort
46+
```
47+
48+
To see which modules are currently in use, run:
49+
50+
```sh
51+
curl -k -u <rec_username>:<rec_password> -X GET https://localhost:9443/v1/bdbs | jq -r '.[].module_list | map(.module_name + "-" + .semantic_version) | .[]'
52+
```
53+
54+
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.
2959

3060
## Upgrade the operator
3161

@@ -101,15 +131,9 @@ We recommend upgrading the REC as soon as possible after updating the operator.
101131

102132
## Upgrade the Redis Enterprise cluster (REC)
103133

104-
{{<warning>}}
105-
Verify your license is valid before upgrading. Invalid licenses will cause the upgrade to fail.
106-
107-
Use `kubectl get rec` and verify the `LICENSE STATE` is valid on your REC before you start the upgrade process.
108-
{{</warning>}}
109-
110134
The Redis Enterprise cluster (REC) can be updated automatically or manually. To trigger automatic upgrade of the REC after the operator upgrade completes, specify `autoUpgradeRedisEnterprise: true` in your REC spec. If you don't have automatic upgrade enabled, follow the below steps for the manual upgrade.
111135

112-
Before beginning the upgrade of the Redis Enterprise cluster, check the K8s operator release notes to find the Redis Enterprise image tag. For example, in Redis Enterprise K8s operator release [6.0.12-5](https://github.com/RedisLabs/redis-enterprise-k8s-docs/releases/tag/v6.0.12-5), the `Images` section shows the Redis Enterprise tag is `6.0.12-57`.
136+
Before beginning the upgrade of the Redis Enterprise cluster, check the [Redis Enterprise for Kubernetes release notes]({{<relref "/operate/kubernetes/release-notes/7-8-2-releases">}}) to find the Redis Enterprise image tag.
113137

114138
After the operator upgrade is complete, you can upgrade Redis Enterprise cluster (REC).
115139

@@ -167,8 +191,10 @@ kubectl rollout status sts <REC_name>
167191
168192
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.
169193
170-
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.
194+
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.
171195
172196
For Active-Active databases, see [Upgrade an Active-Active database]({{<relref "/operate/rs/installing-upgrading/upgrading/upgrade-active-active">}}).
173197
174-
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.
198+
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.
199+
200+
## Troubleshooting

0 commit comments

Comments
 (0)