Skip to content

Commit 324c399

Browse files
Merge pull request #1486 from redis/DOC-5161-rdi-version-support-page
DOC-5161 updated RDI requirement details
2 parents 5be7ae5 + 7a84253 commit 324c399

File tree

10 files changed

+115
-133
lines changed

10 files changed

+115
-133
lines changed

content/embeds/rdi-db-reqs.md

+39
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
* Redis Enterprise v6.4 or greater for the cluster.
2+
* For production, 250MB RAM with one primary and one replica is recommended, but for the
3+
quickstart or for development, 125MB and a single shard is sufficient.
4+
* If you are deploying RDI for a production environment then secure this database with a password
5+
and TLS.
6+
* Provide the installation with the required RDI database details.
7+
* Set the database's
8+
[eviction policy]({{< relref "/operate/rs/databases/memory-performance/eviction-policy" >}}) to `noeviction`. Note that you can't set this using
9+
[`rladmin`]({{< relref "/operate/rs/references/cli-utilities/rladmin" >}}),
10+
so you must either do it using the admin UI or with the following
11+
[REST API]({{< relref "/operate/rs/references/rest-api" >}})
12+
command:
13+
14+
```bash
15+
curl -v -k -d '{"eviction_policy": "noeviction"}' \
16+
-u '<USERNAME>:<PASSWORD>' \
17+
-H "Content-Type: application/json" \
18+
-X PUT https://<CLUSTER_FQDN>:9443/v1/bdbs/<BDB_UID>
19+
```
20+
* Set the database's
21+
[data persistence]({{< relref "/operate/rs/databases/configure/database-persistence" >}})
22+
to AOF - fsync every 1 sec. Note that you can't set this using
23+
[`rladmin`]({{< relref "/operate/rs/references/cli-utilities/rladmin" >}}),
24+
so you must either do it using the admin UI or with the following
25+
[REST API]({{< relref "/operate/rs/references/rest-api" >}})
26+
commands:
27+
28+
```bash
29+
curl -v -k -d '{"data_persistence":"aof"}' \
30+
-u '<USERNAME>:<PASSWORD>' \
31+
-H "Content-Type: application/json"
32+
-X PUT https://<CLUSTER_FQDN>:9443/v1/bdbs/<BDB_UID>
33+
curl -v -k -d '{"aof_policy":"appendfsync-every-sec"}' \
34+
-u '<USERNAME>:<PASSWORD>' \
35+
-H "Content-Type: application/json" \
36+
-X PUT https://<CLUSTER_FQDN>:9443/v1/bdbs/<BDB_UID>
37+
```
38+
* **Ensure that the RDI database is not clustered.** RDI will not work correctly if the
39+
RDI database is clustered, but it is OK for the target database to be clustered.

content/embeds/rdi-k8s-reqs.md

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
RDI only supports versions of Kubernetes and OpenShift that have
2+
not yet reached end-of-life (EOL). See the
3+
[Kubernetes](https://kubernetes.io/releases/) and
4+
[OpenShift](https://access.redhat.com/support/policy/updates/openshift)
5+
lifecycle pages for the latest updates.

content/embeds/rdi-os-reqs.md

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
* RHEL 8 or 9
2+
* Ubuntu 20.04, 22.04, or 24.04

content/embeds/rdi-vm-reqs.md

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
* **CPU**: A minimum of 4 CPU cores. You should consider adding
2+
2-6 extra cores on top of this if your dataset is big and you want to ingest the
3+
baseline snapshot as fast as possible.
4+
* **RAM**: 2GB
5+
* **Disk**: On top of the OS footprint,
6+
RDI requires 20GB in the `/var` folder and 1GB in the `/opt` folder (to
7+
store the log files). This allows space for upgrades.
8+
* **Network interface**: 10GB or more.

content/integrate/redis-data-integration/data-pipelines/prepare-dbs/_index.md

+4
Original file line numberDiff line numberDiff line change
@@ -22,5 +22,9 @@ generally, these mechanisms are not switched on by default.
2222
RDI's Debezium collector uses these mechanisms for change data capture (CDC),
2323
so you must prepare your source database before you can use it with RDI.
2424

25+
RDI supports the following source databases:
26+
27+
{{< embed-md "rdi-supported-source-versions.md" >}}
28+
2529
The pages in this section give detailed instructions to get your source
2630
database ready for Debezium to use:

content/integrate/redis-data-integration/installation/install-k8s.md

+9-41
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ linkTitle: Install on K8s
1313
summary: Redis Data Integration keeps Redis in sync with the primary database in near
1414
real time.
1515
type: integration
16-
weight: 2
16+
weight: 20
1717
---
1818

1919
This guide explains how to use the RDI [Helm chart](https://helm.sh/docs/topics/charts/)
@@ -58,46 +58,10 @@ Complete the following steps before running Helm:
5858
### Create the RDI database
5959

6060
RDI uses a database on your Redis Enterprise cluster to store its state
61-
information. *This requires Redis Enterprise v6.4 or greater*.
62-
63-
- Use the Redis console to create a database with 250MB RAM with one primary and one replica.
64-
- If you are deploying RDI for a production environment then secure this database with a password
65-
and [TLS](https://en.wikipedia.org/wiki/Transport_Layer_Security).
66-
- Set the database's
67-
[eviction policy]({{< relref "/operate/rs/databases/memory-performance/eviction-policy" >}}) to `noeviction`. Note that you can't set this using
68-
[`rladmin`]({{< relref "/operate/rs/references/cli-utilities/rladmin" >}}),
69-
so you must either do it using the admin UI or with the following
70-
[REST API]({{< relref "/operate/rs/references/rest-api" >}})
71-
command:
72-
73-
```bash
74-
curl -v -k -d '{"eviction_policy": "noeviction"}' \
75-
-u '<USERNAME>:<PASSWORD>' \
76-
-H "Content-Type: application/json" \
77-
-X PUT https://<CLUSTER_FQDN>:9443/v1/bdbs/<BDB_UID>
78-
```
79-
80-
- Set the database's
81-
[data persistence]({{< relref "/operate/rs/databases/configure/database-persistence" >}})
82-
to AOF - fsync every 1 sec. Note that you can't set this using
83-
[`rladmin`]({{< relref "/operate/rs/references/cli-utilities/rladmin" >}}),
84-
so you must either do it using the admin UI or with the following
85-
[REST API]({{< relref "/operate/rs/references/rest-api" >}})
86-
commands:
87-
88-
```bash
89-
curl -v -k -d '{"data_persistence":"aof"}' \
90-
-u '<USERNAME>:<PASSWORD>' \
91-
-H "Content-Type: application/json"
92-
-X PUT https://<CLUSTER_FQDN>:9443/v1/bdbs/<BDB_UID>
93-
curl -v -k -d '{"aof_policy":"appendfsync-every-sec"}' \
94-
-u '<USERNAME>:<PASSWORD>' \
95-
-H "Content-Type: application/json" \
96-
-X PUT https://<CLUSTER_FQDN>:9443/v1/bdbs/<BDB_UID>
97-
```
98-
99-
- **Ensure that the RDI database is not clustered.** RDI will not work correctly if the
100-
RDI database is clustered, but it is OK for the target database to be clustered.
61+
information. Use the Redis console to create the RDI database with the following
62+
requirements:
63+
64+
{{< embed-md "rdi-db-reqs.md" >}}
10165

10266
You should then provide the details of this database in the [`values.yaml`](#the-valuesyaml-file)
10367
file as described below.
@@ -128,6 +92,10 @@ To pull images from a local registry, you must provide the image pull secret and
12892
- [Google Kubernetes Engine (GKE)](https://cloud.google.com/artifact-registry/docs/pull-cached-dockerhub-images)
12993
- [Azure Kubernetes Service (AKS)](https://learn.microsoft.com/en-us/azure/aks/cluster-container-registry-integration?tabs=azure-cli)
13094
95+
## Supported versions of Kubernetes and OpenShift
96+
97+
{{< embed-md "rdi-k8s-reqs.md" >}}
98+
13199
## Install the RDI Helm chart
132100
133101
1. Scaffold the default `values.yaml` file from the chart into a local

content/integrate/redis-data-integration/installation/install-vm.md

+5-51
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ linkTitle: Install on VMs
1313
summary: Redis Data Integration keeps Redis in sync with the primary database in near
1414
real time.
1515
type: integration
16-
weight: 1
16+
weight: 10
1717
---
1818

1919
This guide explains how to install Redis Data Integration (RDI) on one or more VMs and integrate it with
@@ -28,14 +28,7 @@ your source database. You can also
2828
RDI is mainly CPU and network bound.
2929
Each of the RDI VMs should have at least:
3030

31-
- **CPU**: A minimum of 4 CPU cores. You should consider adding
32-
2-6 extra cores on top of this if your dataset is big and you want to ingest the
33-
baseline snapshot as fast as possible.
34-
- **RAM**: 2GB
35-
- **Disk**: 25GB, which includes the OS footprint. In particular,
36-
RDI requires 7GB in `/var` and 1GB in `/opt` folder (to
37-
store the log files).
38-
- **Network interface**: 10GB or more.
31+
{{< embed-md "rdi-vm-reqs.md" >}}
3932

4033
## Install RDI on VMs
4134

@@ -71,8 +64,7 @@ known to work correctly with RDI.
7164

7265
The supported OS versions for RDI are:
7366

74-
- RHEL 8 & 9
75-
- Ubuntu 20.04, 22.04, and 24.04
67+
{{< embed-md "rdi-os-reqs.md" >}}
7668

7769
You must run the RDI installer as a privileged user because it installs
7870
[containerd](https://containerd.io/) and registers services. However, you don't
@@ -192,52 +184,14 @@ Follow the steps below for each of your VMs:
192184
{{< /note >}}
193185

194186
RDI uses a database on your Redis Enterprise cluster to store its state
195-
information. *This requires Redis Enterprise v6.4 or greater*.
187+
information.
196188

197189
The installer gives you instructions to help you create secrets and create your pipeline.
198190
It will ask you for cluster admin credentials during installation.
199191

200192
Use the Redis console to create the RDI database with the following requirements:
201193

202-
- 250MB RAM with one primary and one replica.
203-
- If you are deploying RDI for a production environment then secure this database with a password
204-
and TLS.
205-
- Provide the installation with the required RDI database details.
206-
- Set the database's
207-
[eviction policy]({{< relref "/operate/rs/databases/memory-performance/eviction-policy" >}}) to `noeviction`. Note that you can't set this using
208-
[`rladmin`]({{< relref "/operate/rs/references/cli-utilities/rladmin" >}}),
209-
so you must either do it using the admin UI or with the following
210-
[REST API]({{< relref "/operate/rs/references/rest-api" >}})
211-
command:
212-
213-
```bash
214-
curl -v -k -d '{"eviction_policy": "noeviction"}' \
215-
-u '<USERNAME>:<PASSWORD>' \
216-
-H "Content-Type: application/json" \
217-
-X PUT https://<CLUSTER_FQDN>:9443/v1/bdbs/<BDB_UID>
218-
```
219-
220-
- Set the database's
221-
[data persistence]({{< relref "/operate/rs/databases/configure/database-persistence" >}})
222-
to AOF - fsync every 1 sec. Note that you can't set this using
223-
[`rladmin`]({{< relref "/operate/rs/references/cli-utilities/rladmin" >}}),
224-
so you must either do it using the admin UI or with the following
225-
[REST API]({{< relref "/operate/rs/references/rest-api" >}})
226-
commands:
227-
228-
```bash
229-
curl -v -k -d '{"data_persistence":"aof"}' \
230-
-u '<USERNAME>:<PASSWORD>' \
231-
-H "Content-Type: application/json"
232-
-X PUT https://<CLUSTER_FQDN>:9443/v1/bdbs/<BDB_UID>
233-
curl -v -k -d '{"aof_policy":"appendfsync-every-sec"}' \
234-
-u '<USERNAME>:<PASSWORD>' \
235-
-H "Content-Type: application/json" \
236-
-X PUT https://<CLUSTER_FQDN>:9443/v1/bdbs/<BDB_UID>
237-
```
238-
239-
- **Ensure that the RDI database is not clustered.** RDI will not work correctly if the
240-
RDI database is clustered, but it is OK for the target database to be clustered.
194+
{{< embed-md "rdi-db-reqs.md" >}}
241195

242196
{{< note >}}If you specify `localhost` as the address of the RDI database server during
243197
installation then the connection will fail if the actual IP address changes for the local
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
---
2+
Title: Requirements summary
3+
alwaysopen: false
4+
categories:
5+
- docs
6+
- integrate
7+
- rs
8+
- rdi
9+
description: Requirements and recommendations for RDI installations.
10+
group: di
11+
hideListLinks: false
12+
linkTitle: Requirements summary
13+
summary: Redis Data Integration keeps Redis in sync with the primary database in near
14+
real time.
15+
type: integration
16+
weight: 5
17+
---
18+
19+
The sections below summarize the software and hardware requirements for
20+
an RDI installation.
21+
22+
## Hardware requirements for VM installation
23+
24+
{{< embed-md "rdi-vm-reqs.md" >}}
25+
26+
## OS requirements for VM installation
27+
28+
{{< embed-md "rdi-os-reqs.md" >}}
29+
30+
## Kubernetes/OpenShift supported versions
31+
32+
{{< embed-md "rdi-k8s-reqs.md" >}}
33+
34+
## RDI database requirements
35+
36+
{{< embed-md "rdi-db-reqs.md" >}}
37+
38+
## Supported source databases
39+
40+
{{< embed-md "rdi-supported-source-versions.md" >}}

content/integrate/redis-data-integration/installation/upgrade.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ linkTitle: Upgrade
1313
summary: Redis Data Integration keeps Redis in sync with the primary database in near
1414
real time.
1515
type: integration
16-
weight: 3
16+
weight: 30
1717
---
1818

1919
## Upgrading a VM installation

content/integrate/redis-data-integration/quick-start-guide.md

+2-40
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,7 @@ In this tutorial you will learn how to install RDI and set up a pipeline to inge
1818
- [Redis Insight]({{< relref "/develop/tools/insight" >}})
1919
to edit your pipeline
2020
- A virtual machine (VM) with one of the following operating systems:
21-
- Ubuntu 20.04, 22.04, or 24.04
22-
- RHEL 8 or 9
21+
{{< embed-md "rdi-os-reqs.md" >}}
2322

2423
## Overview
2524

@@ -56,44 +55,7 @@ run the pipeline.
5655

5756
Use the Redis console to create the RDI database with the following requirements:
5857

59-
- A single-shard database with 125MB RAM is enough for the quickstart but double this
60-
to 250MB if you want to add a replica.
61-
- Provide the installation with the required RDI database details.
62-
- Set the database's
63-
[eviction policy]({{< relref "/operate/rs/databases/memory-performance/eviction-policy" >}}) to `noeviction`. Note that you can't set this using
64-
[`rladmin`]({{< relref "/operate/rs/references/cli-utilities/rladmin" >}}),
65-
so you must either do it using the admin UI or with the following
66-
[REST API]({{< relref "/operate/rs/references/rest-api" >}})
67-
command:
68-
69-
```bash
70-
curl -v -k -d '{"eviction_policy": "noeviction"}' \
71-
-u '<USERNAME>:<PASSWORD>' \
72-
-H "Content-Type: application/json" \
73-
-X PUT https://<CLUSTER_FQDN>:9443/v1/bdbs/<BDB_UID>
74-
```
75-
76-
- Set the database's
77-
[data persistence]({{< relref "/operate/rs/databases/configure/database-persistence" >}})
78-
to AOF - fsync every 1 sec. Note that you can't set this using
79-
[`rladmin`]({{< relref "/operate/rs/references/cli-utilities/rladmin" >}}),
80-
so you must either do it using the admin UI or with the following
81-
[REST API]({{< relref "/operate/rs/references/rest-api" >}})
82-
commands:
83-
84-
```bash
85-
curl -v -k -d '{"data_persistence":"aof"}' \
86-
-u '<USERNAME>:<PASSWORD>' \
87-
-H "Content-Type: application/json"
88-
-X PUT https://<CLUSTER_FQDN>:9443/v1/bdbs/<BDB_UID>
89-
curl -v -k -d '{"aof_policy":"appendfsync-every-sec"}' \
90-
-u '<USERNAME>:<PASSWORD>' \
91-
-H "Content-Type: application/json" \
92-
-X PUT https://<CLUSTER_FQDN>:9443/v1/bdbs/<BDB_UID>
93-
```
94-
95-
- **Ensure that the RDI database is not clustered.** RDI will not work correctly if the
96-
RDI database is clustered, but it is OK for the target database to be clustered.
58+
{{< embed-md "rdi-db-reqs.md" >}}
9759

9860
### Prepare the pipeline
9961

0 commit comments

Comments
 (0)