Skip to content

Commit 8c1fed7

Browse files
authored
RS: Rearranged upgrade Active-Active DB page and added more details about rladmin status output (#2321)
* Upgrade A-A DB improvements * DOC-5437 Copy edits and added in-page links to upgrade A-A DB * Fix rladmin status relref * DOC-5437 Feedback updates to clarify CRDB featureset and how to check if an A-A DB uses modules
1 parent b5abe53 commit 8c1fed7

File tree

1 file changed

+82
-53
lines changed

1 file changed

+82
-53
lines changed

content/operate/rs/installing-upgrading/upgrading/upgrade-active-active.md

Lines changed: 82 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -5,115 +5,144 @@ categories:
55
- docs
66
- operate
77
- rs
8-
description: Upgrade an Active-Active database.
8+
description: How to upgrade an Active-Active database.
99
linkTitle: Active-Active databases
1010
weight: 70
1111
---
1212

13-
When you upgrade an [Active-Active (CRDB) database]({{< relref "/operate/rs/databases/active-active" >}}), you can also upgrade the CRDB protocol version and feature version.
13+
## Upgrade an Active-Active database
1414

15-
## CRDB protocol version guidelines
15+
To upgrade an [Active-Active (CRDB) database]({{< relref "/operate/rs/databases/active-active" >}}):
1616

17-
Redis Enterprise Software versions 5.4.2 and later use CRDB protocol version 1 to help support Active-Active features.
17+
1. [Upgrade Redis Enterprise Software]({{< relref "/operate/rs/installing-upgrading/upgrading/upgrade-cluster" >}}) on each node in the clusters where the Active-Active instances are located.
1818

19-
CRDB protocol version 1 is backward compatible, which means Redis Enterprise v5.4.2 CRDB instances can understand write operations from instances using the earlier CRDB protocol version 0.
19+
1. [Check the status](#check-database-status) of all Active-Active database instances.
2020

21-
After you upgrade one instance's CRDB protocol to version 1:
21+
1. [Upgrade all Active-Active database instances](#upgrade-database-instances) to a later version of Redis.
2222

23-
- Any instances that use CRDB protocol version 1 can receive updates from both version 1 and version 0 instances.
23+
1. If the status indicates `OLD CRDB FEATURESET VERSION`, [upgrade the featureset version](#upgrade-featureset-version). See [Feature version guidelines](#feature-version-guidelines) for more information.
2424

25-
- However, instances that still use CRDB protocol version 0 cannot receive write updates from version 1 instances.
25+
1. If your Active-Active database uses modules, [update module information](#update-module-information). To check if your database uses modules, run [`rladmin status modules`]({{<relref "/operate/rs/references/cli-utilities/rladmin/status#status-modules">}}):
2626

27-
- After you upgrade an instance from CRDB protocol version 0 to version 1, it automatically receives any missing write operations.
27+
```sh
28+
rladmin status modules db { db:<ID> | <database-name> }
29+
```
2830
29-
Follow these upgrade guidelines:
31+
## Check database status
3032
31-
- Upgrade all instances of a specific CRDB within a reasonable time frame to avoid temporary inconsistencies between the instances.
33+
To check the status of an Active-Active database instance, run [`rladmin status`]({{<relref "/operate/rs/references/cli-utilities/rladmin/status">}}):
3234
33-
- Make sure that you upgrade all instances of a specific CRDB before you do global operations on the CRDB, such as removing instances and adding new instances.
35+
```sh
36+
rladmin status
37+
```
3438
35-
- As of v6.0.20, protocol version 0 is deprecated and support will be removed in a future version.
39+
{{< image filename="/images/rs/crdb-upgrade-node.png" >}}
3640
37-
- To avoid upgrade failures, update all Active-Active databases to protocol version 1 _before_ upgrading Redis Enterprise Software to v6.0.20 or later.
41+
The statuses of the Active-Active instances on the node can indicate:
3842
39-
## Feature version guidelines
43+
- `OLD REDIS VERSION`: The database instance is running a Redis version that is outdated or not fully compatible with the current Redis Enterprise Software cluster version. You should [upgrade the database](#upgrade-database-instances) to a later version of Redis bundled with the cluster's current Redis Enterprise Software version.
4044
41-
Starting with version 5.6.0, a new feature version (also called a _feature set version_) helps support new Active-Active features.
45+
- `OLD CRDB PROTOCOL VERSION`: This instance uses an older CRDB protocol. Redis Enterprise Software versions 5.4.2 and later use CRDB protocol version 1. You can upgrade the CRDB protocol version when you [upgrade the Active-Active database instances](#upgrade-database-instances). See [CRDB protocol version guidelines](#crdb-protocol-version-guidelines) for more information.
4246
43-
When you update the feature version for an Active-Active database, the feature version is updated for all database instances.
44-
45-
Follow these upgrade guidelines:
47+
- `OLD CRDB FEATURESET VERSION`: The database feature set version is outdated. After all [Active-Active database instances are upgraded](#upgrade-database-instances), [upgrade the feature set version](#upgrade-featureset-version). See [Feature version guidelines](#feature-version-guidelines) for more information.
4648
47-
- As of v6.0.20, feature version 0 is deprecated and support will be removed in a future version.
49+
## Upgrade database instances
4850
49-
- To avoid upgrade failures, update all Active-Active databases to protocol version 1 _before_ upgrading Redis Enterprise Software to v6.0.20 or later.
51+
For each Active-Active database instance:
5052
51-
## Upgrade Active-Active database instance
53+
1. Upgrade the Redis database version and enabled modules with [`rladmin upgrade db`]({{<relref "/operate/rs/references/cli-utilities/rladmin/upgrade#upgrade-db">}}):
5254
53-
To upgrade an Active-Active database (CRDB) instance:
55+
```sh
56+
rladmin upgrade db { db:<ID> | <database-name> }
57+
```
5458
55-
1. [Upgrade Redis Enterprise Software]({{< relref "/operate/rs/installing-upgrading/upgrading/upgrade-cluster" >}}) on each node in the clusters where the Active-Active instances are located.
59+
1. If the CRDB protocol version is old, read the warning message carefully and confirm that you want to update the CRDB protocol. See [CRDB protocol version guidelines](#crdb-protocol-version-guidelines) for more information.
5660
57-
1. To see the status of your Active-Active instances, run:
61+
{{< image filename="/images/rs/crdb-upgrade-protocol.png" >}}
5862
59-
```sh
60-
rladmin status
61-
```
63+
After confirmation, the Active-Active instance will use the new Redis version and CRDB protocol version.
6264
63-
The statuses of the Active-Active instances on the node can indicate:
65+
{{<note>}}
66+
You can use the `keep_crdt_protocol_version` option to upgrade the database version without upgrading the CRDB protocol version. However, you must upgrade the CRDB protocol before you update the CRDB feature set version.
6467
65-
- `OLD REDIS VERSION`
66-
- `OLD CRDB PROTOCOL VERSION`
67-
- `OLD CRBD FEATURESET VERSION`
68+
If you use `keep_crdt_protocol_version`, make sure that you upgrade the CRDB protocol soon after with the [`rladmin upgrade db`]({{< relref "/operate/rs/references/cli-utilities/rladmin/upgrade#upgrade-db" >}}) command.
69+
{{</note>}}
6870
69-
{{< image filename="/images/rs/crdb-upgrade-node.png" >}}
71+
### CRDB protocol version guidelines
7072
71-
1. To upgrade each Active-Active instance and its modules, including the Redis version and CRDB protocol version, run:
73+
Redis Enterprise Software versions 5.4.2 and later use CRDB protocol version 1 to help support Active-Active features.
7274
73-
```sh
74-
rladmin upgrade db <database_name | database_ID>
75-
```
75+
CRDB protocol version 1 is backward compatible, which means Redis Enterprise v5.4.2 CRDB instances can understand write operations from instances using the earlier CRDB protocol version 0.
7676
77-
If the protocol version is old, read the warning message carefully and confirm.
77+
After you upgrade one instance's CRDB protocol to version 1:
7878
79-
{{< image filename="/images/rs/crdb-upgrade-protocol.png" >}}
79+
- Any instances that use CRDB protocol version 1 can receive updates from both version 1 and version 0 instances.
8080
81-
The Active-Active instance uses the new Redis version and CRDB protocol version.
81+
- However, instances that still use CRDB protocol version 0 cannot receive write updates from version 1 instances.
8282
83-
Use the `keep_crdt_protocol_version` option to upgrade the database feature version
84-
without upgrading the CRDB protocol version.
83+
- After you upgrade an instance from CRDB protocol version 0 to version 1, it automatically receives any missing write operations.
8584
86-
If you use this option, make sure that you upgrade the CRDB protocol soon after with the [`rladmin upgrade db`]({{< relref "/operate/rs/references/cli-utilities/rladmin/upgrade#upgrade-db" >}}) command.
85+
Follow these upgrade guidelines:
8786
88-
You must upgrade the CRDB protocol before you update the CRDB feature set version.
87+
- Upgrade all instances of a specific CRDB within a reasonable time frame to avoid temporary inconsistencies between the instances.
8988
90-
1. If the feature set version is old, you must upgrade all of the Active-Active instances. Then, to update the feature set for each active-active database, run:
89+
- Make sure that you upgrade all instances of a specific CRDB before you perform global operations on the CRDB, such as removing instances and adding new instances.
9190
92-
```sh
93-
crdb-cli crdb update --crdb-guid <CRDB-GUID> --featureset-version yes
94-
```
91+
- As of v6.0.20, protocol version 0 is deprecated and support will be removed in a future version.
9592
96-
You can retrieve the `<CRDB-GUID>` with the following command:
93+
- To avoid upgrade failures, update all Active-Active databases to protocol version 1 _before_ upgrading Redis Enterprise Software to v6.0.20 or later.
94+
95+
## Upgrade featureset version
96+
97+
If the feature set version is old, as indicated by the `OLD CRDB FEATURESET VERSION` status:
98+
99+
1. [Upgrade all Active-Active database instances](#upgrade-database-instances) and make sure the CRDB protocol is not outdated.
100+
101+
1. Find the `<CRDB-GUID>` of your Active-Active database.
102+
103+
You can use the [`crdb-cli crdb list`]({{<relref "/operate/rs/references/cli-utilities/crdb-cli/crdb/list">}}) command:
97104
98105
```sh
99106
crdb-cli crdb list
100107
```
101108
102-
Look for the fully qualified domain name (CLUSTER-FDQN) of your cluster and use the associated GUID:
109+
Look for the fully qualified domain name (`CLUSTER-FDQN`) of your cluster and use the associated `GUID`:
103110
104111
```sh
105112
CRDB-GUID NAME REPL-ID CLUSTER-FQDN
106113
700140c5-478e-49d7-ad3c-64d517ddc486 aatest 1 aatest1.example.com
107114
700140c5-478e-49d7-ad3c-64d517ddc486 aatest 2 aatest2.example.com
108115
```
109116
110-
1. Update module information in the CRDB configuration using the following command:
117+
1. Update the feature set for each Active-Active database. See [Feature version guidelines](#feature-version-guidelines) for more information.
118+
119+
```sh
120+
crdb-cli crdb update --crdb-guid <CRDB-GUID> --featureset-version yes
121+
```
122+
123+
### Feature version guidelines
124+
125+
Starting with version 5.6.0, a new feature version (also called a _feature set version_) helps support new Active-Active features.
126+
127+
The featureset version is an internal version of the Active-Active feature that enables new capabilities and improvements across participating Active-Active clusters. When you update the feature version for an Active-Active database, the feature version is updated for all database instances.
128+
129+
Follow these upgrade guidelines:
130+
131+
- As of v6.0.20, feature version 0 is deprecated and support will be removed in a future version.
132+
133+
- To avoid upgrade failures, make sure all your Active-Active databases are configured with the latest feature set version before upgrading to Redis Enterprise Software 6.0.20 or later.
134+
135+
## Update module information
136+
137+
If your Active-Active database uses modules:
138+
139+
1. Update module information in the CRDB configuration using the following command syntax:
111140
112141
```sh
113-
crdb-cli crdb update --crdb-guid <guid> --update-db-config-modules true
142+
crdb-cli crdb update --crdb-guid <CRDB-GUID> --update-db-config-modules true
114143
```
115144
116-
`crdb-cli` will ask you to verify all Active-Active database instances and their modules have been updated before you enter `y` to continue.
145+
1. `crdb-cli` will ask you to verify all Active-Active database instances and their modules have been updated before you enter `y` to continue:
117146
118147
```
119148
Verify that all CRDB database instances and their modules have been updated.

0 commit comments

Comments
 (0)