Skip to content

Commit 6623a74

Browse files
authored
RS: Added missing module requirements to recover DB (#1679)
* DOC-4564 RS: Added missing module requirements to recover DB * DOC-4564 Added rladmin command to identify module versions required by recoverable DBs * DOC-4564 Copied missing module requirements to recover DB to RS 7.4 and 7.8 versions
1 parent 75c0df4 commit 6623a74

File tree

3 files changed

+216
-3
lines changed

3 files changed

+216
-3
lines changed

content/operate/rs/7.4/databases/recover.md

Lines changed: 72 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ The database recovery process includes:
2424

2525
1. If the cluster failed, [recover the cluster]({{< relref "/operate/rs/7.4/clusters/cluster-recovery.md" >}}).
2626
1. Identify recoverable databases.
27+
1. Verify the module versions used by any databases are installed on the cluster.
2728
1. Restore the database data.
2829
1. Verify that the databases are active.
2930

@@ -55,7 +56,7 @@ of the configuration and persistence files on each of the nodes.
5556

5657
If you use local persistent storage, place all of the recovery files on each of the cluster nodes.
5758

58-
1. To see which databases are recoverable, run:
59+
1. To see which databases are recoverable, run [`rladmin recover list`]({{<relref "/operate/rs/7.4/references/cli-utilities/rladmin/recover#recover-list">}}):
5960

6061
```sh
6162
rladmin recover list
@@ -71,6 +72,76 @@ of the configuration and persistence files on each of the nodes.
7172

7273
If you cannot resolve the issues, contact [Redis support](https://redis.com/company/support/).
7374

75+
1. Verify the module versions used by any recoverable databases are installed on the cluster:
76+
77+
1. Check which module versions are currently installed on the cluster using one of the following methods:
78+
79+
{{< multitabs id="get-module-versions"
80+
tab1="Cluster Manager UI"
81+
tab2="rladmin"
82+
tab3="REST API" >}}
83+
84+
In the Cluster Manager UI, go to **Cluster > Modules**.
85+
86+
-tab-sep-
87+
88+
Run [`rladmin status modules`]({{< relref "/operate/rs/7.4/references/cli-utilities/rladmin/status#status-modules" >}}):
89+
90+
```sh
91+
rladmin status modules
92+
```
93+
94+
-tab-sep-
95+
96+
Send a [`GET /v1/modules`]({{< relref "/operate/rs/7.4/references/rest-api/requests/modules#list-modules" >}}) request:
97+
98+
```sh
99+
GET https://<host>:<port>/v1/modules
100+
```
101+
102+
{{< /multitabs >}}
103+
104+
1. Identify the module versions required by the recoverable databases. To do so, run [`rladmin status modules`]({{< relref "/operate/rs/7.4/references/cli-utilities/rladmin/status#status-modules" >}}) and check the `DATABASE MODULES` section for the module versions listed for the recoverable databases:
105+
106+
```sh
107+
rladmin status modules extra all
108+
```
109+
110+
1. Download any missing modules versions from the [Redis download center](https://redis.io/downloads/#tools).
111+
112+
1. [Install the downloaded modules on the cluster]({{< relref "/operate/oss_and_stack/stack-with-enterprise/install/add-module-to-cluster" >}}) using one of the following methods:
113+
114+
{{< multitabs id="install-modules"
115+
tab1="Cluster Manager UI"
116+
tab2="REST API" >}}
117+
118+
To add a module to the cluster using the Cluster Manager UI:
119+
120+
1. Go to **Cluster > Modules**.
121+
122+
1. Select **Upload module**.
123+
124+
1. Use the file browser to add the packaged module.
125+
126+
-tab-sep-
127+
128+
To add a module to the cluster using the REST API:
129+
130+
1. Copy the module package to a node in the cluster.
131+
132+
1. Add the module to the cluster with a [`POST` request to the `/v2/modules`]({{< relref "/operate/rs/7.4/references/rest-api/requests/modules#post-module-v2" >}}) endpoint:
133+
134+
```sh
135+
POST https://[host][:port]/v2/modules
136+
"module=@/tmp/redisearch.Linux-ubuntu16.04-x86_64.2.2.6.zip"
137+
```
138+
139+
Here, the *module* parameter specifies the full path of the module package and must be submitted as form-data. In addition, the package must be available and accessible to the server processing the request.
140+
141+
1. If the module installation succeeds, the `POST` request returns a [JSON object]({{< relref "/operate/rs/7.4/references/rest-api/objects/module" >}}) that represents the new module. If it fails, it may return a JSON object with an `error_code` and `description` with more details.
142+
143+
{{< /multitabs >}}
144+
74145
1. Recover the database using one of the following [`rladmin recover`]({{< relref "/operate/rs/7.4/references/cli-utilities/rladmin/recover" >}}) commands:
75146

76147
- Recover all databases from the persistence files located in the persistent storage drives:

content/operate/rs/7.8/databases/recover.md

Lines changed: 72 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ The database recovery process includes:
2424

2525
1. If the cluster failed, [recover the cluster]({{< relref "/operate/rs/7.8/clusters/cluster-recovery.md" >}}).
2626
1. Identify recoverable databases.
27+
1. Verify the module versions used by any databases are installed on the cluster.
2728
1. Restore the database data.
2829
1. Verify that the databases are active.
2930

@@ -55,7 +56,7 @@ of the configuration and persistence files on each of the nodes.
5556

5657
If you use local persistent storage, place all of the recovery files on each of the cluster nodes.
5758

58-
1. To see which databases are recoverable, run:
59+
1. To see which databases are recoverable, run [`rladmin recover list`]({{<relref "/operate/rs/7.8/references/cli-utilities/rladmin/recover#recover-list">}}):
5960

6061
```sh
6162
rladmin recover list
@@ -71,6 +72,76 @@ of the configuration and persistence files on each of the nodes.
7172

7273
If you cannot resolve the issues, contact [Redis support](https://redis.com/company/support/).
7374

75+
1. Verify the module versions used by any recoverable databases are installed on the cluster:
76+
77+
1. Check which module versions are currently installed on the cluster using one of the following methods:
78+
79+
{{< multitabs id="get-module-versions"
80+
tab1="Cluster Manager UI"
81+
tab2="rladmin"
82+
tab3="REST API" >}}
83+
84+
In the Cluster Manager UI, go to **Cluster > Modules**.
85+
86+
-tab-sep-
87+
88+
Run [`rladmin status modules`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/status#status-modules" >}}):
89+
90+
```sh
91+
rladmin status modules
92+
```
93+
94+
-tab-sep-
95+
96+
Send a [`GET /v1/modules`]({{< relref "/operate/rs/7.8/references/rest-api/requests/modules#list-modules" >}}) request:
97+
98+
```sh
99+
GET https://<host>:<port>/v1/modules
100+
```
101+
102+
{{< /multitabs >}}
103+
104+
1. Identify the module versions required by the recoverable databases. To do so, run [`rladmin status modules`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/status#status-modules" >}}) and check the `DATABASE MODULES` section for the module versions listed for the recoverable databases:
105+
106+
```sh
107+
rladmin status modules extra all
108+
```
109+
110+
1. Download any missing modules versions from the [Redis download center](https://redis.io/downloads/#tools).
111+
112+
1. [Install the downloaded modules on the cluster]({{< relref "/operate/oss_and_stack/stack-with-enterprise/install/add-module-to-cluster" >}}) using one of the following methods:
113+
114+
{{< multitabs id="install-modules"
115+
tab1="Cluster Manager UI"
116+
tab2="REST API" >}}
117+
118+
To add a module to the cluster using the Cluster Manager UI:
119+
120+
1. Go to **Cluster > Modules**.
121+
122+
1. Select **Upload module**.
123+
124+
1. Use the file browser to add the packaged module.
125+
126+
-tab-sep-
127+
128+
To add a module to the cluster using the REST API:
129+
130+
1. Copy the module package to a node in the cluster.
131+
132+
1. Add the module to the cluster with a [`POST` request to the `/v2/modules`]({{< relref "/operate/rs/7.8/references/rest-api/requests/modules#post-module-v2" >}}) endpoint:
133+
134+
```sh
135+
POST https://[host][:port]/v2/modules
136+
"module=@/tmp/redisearch.Linux-ubuntu16.04-x86_64.2.2.6.zip"
137+
```
138+
139+
Here, the *module* parameter specifies the full path of the module package and must be submitted as form-data. In addition, the package must be available and accessible to the server processing the request.
140+
141+
1. If the module installation succeeds, the `POST` request returns a [JSON object]({{< relref "/operate/rs/7.8/references/rest-api/objects/module" >}}) that represents the new module. If it fails, it may return a JSON object with an `error_code` and `description` with more details.
142+
143+
{{< /multitabs >}}
144+
74145
1. Recover the database using one of the following [`rladmin recover`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/recover" >}}) commands:
75146

76147
- Recover all databases from the persistence files located in the persistent storage drives:

content/operate/rs/databases/recover.md

Lines changed: 72 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ The database recovery process includes:
2323

2424
1. If the cluster failed, [recover the cluster]({{< relref "/operate/rs/clusters/cluster-recovery.md" >}}).
2525
1. Identify recoverable databases.
26+
1. Verify the module versions used by any databases are installed on the cluster.
2627
1. Restore the database data.
2728
1. Verify that the databases are active.
2829

@@ -54,7 +55,7 @@ of the configuration and persistence files on each of the nodes.
5455

5556
If you use local persistent storage, place all of the recovery files on each of the cluster nodes.
5657

57-
1. To see which databases are recoverable, run:
58+
1. To see which databases are recoverable, run [`rladmin recover list`]({{<relref "/operate/rs/references/cli-utilities/rladmin/recover#recover-list">}}):
5859

5960
```sh
6061
rladmin recover list
@@ -70,6 +71,76 @@ of the configuration and persistence files on each of the nodes.
7071

7172
If you cannot resolve the issues, contact [Redis support](https://redis.com/company/support/).
7273

74+
1. Verify the module versions used by any recoverable databases are installed on the cluster:
75+
76+
1. Check which module versions are currently installed on the cluster using one of the following methods:
77+
78+
{{< multitabs id="get-module-versions"
79+
tab1="Cluster Manager UI"
80+
tab2="rladmin"
81+
tab3="REST API" >}}
82+
83+
In the Cluster Manager UI, go to **Cluster > Modules**.
84+
85+
-tab-sep-
86+
87+
Run [`rladmin status modules`]({{< relref "/operate/rs/references/cli-utilities/rladmin/status#status-modules" >}}):
88+
89+
```sh
90+
rladmin status modules
91+
```
92+
93+
-tab-sep-
94+
95+
Send a [`GET /v1/modules`]({{< relref "/operate/rs/references/rest-api/requests/modules#list-modules" >}}) request:
96+
97+
```sh
98+
GET https://<host>:<port>/v1/modules
99+
```
100+
101+
{{< /multitabs >}}
102+
103+
1. Identify the module versions required by the recoverable databases. To do so, run [`rladmin status modules`]({{< relref "/operate/rs/references/cli-utilities/rladmin/status#status-modules" >}}) and check the `DATABASE MODULES` section for the module versions listed for the recoverable databases:
104+
105+
```sh
106+
rladmin status modules extra all
107+
```
108+
109+
1. Download any missing modules versions from the [Redis download center](https://redis.io/downloads/#tools).
110+
111+
1. [Install the downloaded modules on the cluster]({{< relref "/operate/oss_and_stack/stack-with-enterprise/install/add-module-to-cluster" >}}) using one of the following methods:
112+
113+
{{< multitabs id="install-modules"
114+
tab1="Cluster Manager UI"
115+
tab2="REST API" >}}
116+
117+
To add a module to the cluster using the Cluster Manager UI:
118+
119+
1. Go to **Cluster > Modules**.
120+
121+
1. Select **Upload module**.
122+
123+
1. Use the file browser to add the packaged module.
124+
125+
-tab-sep-
126+
127+
To add a module to the cluster using the REST API:
128+
129+
1. Copy the module package to a node in the cluster.
130+
131+
1. Add the module to the cluster with a [`POST` request to the `/v2/modules`]({{< relref "/operate/rs/references/rest-api/requests/modules#post-module-v2" >}}) endpoint:
132+
133+
```sh
134+
POST https://[host][:port]/v2/modules
135+
"module=@/tmp/redisearch.Linux-ubuntu16.04-x86_64.2.2.6.zip"
136+
```
137+
138+
Here, the *module* parameter specifies the full path of the module package and must be submitted as form-data. In addition, the package must be available and accessible to the server processing the request.
139+
140+
1. If the module installation succeeds, the `POST` request returns a [JSON object]({{< relref "/operate/rs/references/rest-api/objects/module" >}}) that represents the new module. If it fails, it may return a JSON object with an `error_code` and `description` with more details.
141+
142+
{{< /multitabs >}}
143+
73144
1. Recover the database using one of the following [`rladmin recover`]({{< relref "/operate/rs/references/cli-utilities/rladmin/recover" >}}) commands:
74145

75146
- Recover all databases from the persistence files located in the persistent storage drives:

0 commit comments

Comments
 (0)