Skip to content

Commit 4f6f412

Browse files
committed
Merge branch 'main' into release-rs-fuya-fuya-jan
2 parents 26b2349 + b346029 commit 4f6f412

File tree

58 files changed

+846
-4993
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

58 files changed

+846
-4993
lines changed

content/develop/ai/index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ Redis stores and indexes vector embeddings that semantically represent unstructu
1414

1515
| Vector | RAG | RedisVL |
1616
| :-- | :-- | :-- |
17-
| {{<image filename="images/ai-cube.png" alt="AI Redis icon.">}}[Redis vector database quick start guide]({{< relref "/develop/get-started/vector-database" >}}) |{{<image filename="images/ai-brain.png" alt="AI Redis icon.">}} [Retrieval-Augmented Generation quick start guide]({{< relref "/develop/get-started/rag" >}}) | {{<image filename="images/ai-lib.png" alt="AI Redis icon.">}}[Redis vector Python client library documentation]({{< relref "/integrate/redisvl/overview/" >}}) |
17+
| {{<image filename="images/ai-cube.png" alt="AI Redis icon.">}}[Redis vector database quick start guide]({{< relref "/develop/get-started/vector-database" >}}) |{{<image filename="images/ai-brain.png" alt="AI Redis icon.">}} [Retrieval-Augmented Generation quick start guide]({{< relref "/develop/get-started/rag" >}}) | {{<image filename="images/ai-lib.png" alt="AI Redis icon.">}}[Redis vector Python client library documentation]({{< relref "/integrate/redisvl/" >}}) |
1818

1919
#### Overview
2020

content/integrate/prometheus-with-redis-cloud/_index.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,13 @@ You can quickly set up Prometheus and Grafana for testing using the Prometheus a
5656
- Connect to the VPC subnet that is peered with your Redis Cloud subscription.
5757
- Allow outbound connections to port 8070, so that Prometheus can scrape the Redis Cloud server for data.
5858
- Allow inbound connections to port 9090 for Prometheus and port 3000 for Grafana.
59+
- Be located in one of the CIDR ranges of the RFC-1918 internal IP standard, which is comprised of three CIDR ranges:
60+
61+
- 10.0.0.0/8
62+
- 172.16.0.0/12
63+
- 192.168.0.0/16
64+
65+
The Prometheus endpoint is subject to a whitelist according to this standard.
5966

6067
### Set up Prometheus
6168

content/integrate/redis-data-integration/data-pipelines/data-pipelines.md

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -110,6 +110,14 @@ sources:
110110
# sink:
111111
# redis.memory.limit.mb: 100
112112
# redis.memory.threshold.percentage: 85
113+
# Uncomment the lines below for production usage with high availability (HA). When writing data
114+
# to the state database or the target with HA enabled, RDI should wait briefly for an
115+
# acknowledgment from the replica database. It should also retry a write operation after a
116+
# certain delay if the original operation times out.
117+
# redis.wait.enabled:true
118+
# redis.wait.timeout.ms:2
119+
# redis.wait.retry.enabled:true
120+
# redis.wait.retry.delay.ms:
113121
# Source specific properties - see the full list at https://debezium.io/documentation/reference/stable/connectors/
114122
# source:
115123
# snapshot.mode: initial
@@ -158,11 +166,9 @@ configuration contains the following data:
158166
(the default is to include all tables if you don't specify a query here).
159167
- `columns`: A list of the columns you are interested in (the default is to
160168
include all columns if you don't supply a list)
161-
- `keys`: A list of primary keys, one for each table. If the table doesn't
162-
have a column with a
163-
[`PRIMARY KEY`](https://www.w3schools.com/sql/sql_primarykey.asp) or
164-
[`UNIQUE`](https://www.w3schools.com/sql/sql_unique.asp) constraint then you can
165-
supply a unique composite key.
169+
- `keys`: A list of columns to create a composite key if your table
170+
doesn't already have a [`PRIMARY KEY`](https://www.w3schools.com/sql/sql_primarykey.asp) or
171+
[`UNIQUE`](https://www.w3schools.com/sql/sql_unique.asp) constraint.
166172
- `advanced`: These optional properties configure other Debezium-specific features.
167173
The available sub-sections are:
168174
- `sink`: All advanced properties for writing to RDI (TLS, memory threshold, etc).

content/integrate/redis-data-integration/data-pipelines/deploy.md

Lines changed: 70 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -77,73 +77,81 @@ Where `<DB>` is either `source-db` for source secrets or `target-db` for target
7777
The specific command lines for source secrets are as follows:
7878

7979
```bash
80-
# Source username
81-
kubectl create secret generic source-db \
82-
--namespace=rdi \
83-
--from-literal=SOURCE_DB_USERNAME=yourUsername
84-
85-
# Source password
86-
kubectl create secret generic source-db \
87-
--namespace=rdi \
88-
--from-literal=SOURCE_DB_PASSWORD=yourPassword
89-
90-
# Source trust certificate (both commands are required)
91-
kubectl create secret generic source-db-ssl --from-file=ca.crt=/path/to/myca.crt -n rdi
92-
93-
kubectl create secret generic source-db \
94-
--namespace=rdi \
95-
--from-literal=SOURCE_DB_CACERT=/etc/certificates/source_db/ca.crt
96-
97-
# Source public key (both commands are required)
98-
kubectl create secret generic source-db-ssl --from-file=client.crt=/path/to/myclient.crt -n rdi
99-
100-
kubectl create secret generic source-db \
101-
--namespace=rdi \
102-
--from-literal=SOURCE_DB_CERT=/etc/certificates/source_db/client.crt
103-
104-
105-
# Source private key (both commands are required)
106-
kubectl create secret generic source-db-ssl --from-file=client.key=/path/to/myclient.key -n rdi
107-
108-
kubectl create secret generic source-db \
109-
--namespace=rdi \
110-
--from-literal=SOURCE_DB_KEY=/etc/certificates/source_db/client.key
80+
# Without source TLS
81+
# Create or update source-db secret
82+
kubectl create secret generic source-db --namespace=rdi \
83+
--from-literal=SOURCE_DB_USERNAME=yourUsername \
84+
--from-literal=SOURCE_DB_PASSWORD=yourPassword \
85+
--save-config --dry-run=client -o yaml | kubectl apply -f -
86+
87+
# With source TLS
88+
# Create of update source-db secret
89+
kubectl create secret generic source-db --namespace=rdi \
90+
--from-literal=SOURCE_DB_USERNAME=yourUsername \
91+
--from-literal=SOURCE_DB_PASSWORD=yourPassword \
92+
--from-literal=SOURCE_DB_CACERT=/etc/certificates/source_db/ca.crt \
93+
--save-config --dry-run=client -o yaml | kubectl apply -f -
94+
# Create or update source-db-ssl secret
95+
kubectl create secret generic source-db-ssl --namespace=rdi \
96+
--from-file=ca.crt=/path/to/myca.crt \
97+
--save-config --dry-run=client -o yaml | kubectl apply -f -
98+
99+
# With source mTLS
100+
# Create or update source-db secret
101+
kubectl create secret generic source-db --namespace=rdi \
102+
--from-literal=SOURCE_DB_USERNAME=yourUsername \
103+
--from-literal=SOURCE_DB_PASSWORD=yourPassword \
104+
--from-literal=SOURCE_DB_CACERT=/etc/certificates/source_db/ca.crt \
105+
--from-literal=SOURCE_DB_CERT=/etc/certificates/source_db/client.crt \
106+
--from-literal=SOURCE_DB_KEY=/etc/certificates/source_db/client.key \
107+
--from-literal=SOURCE_DB_KEY_PASSWORD=yourKeyPassword \ # add this only if SOURCE_DB_KEY is password-protected
108+
--save-config --dry-run=client -o yaml | kubectl apply -f -
109+
# Create or update source-db-ssl secret
110+
kubectl create secret generic source-db-ssl --namespace=rdi \
111+
--from-file=ca.crt=/path/to/myca.crt \
112+
--from-file=client.crt=/path/to/myclient.crt \
113+
--from-file=client.key=/path/to/myclient.key \
114+
--save-config --dry-run=client -o yaml | kubectl apply -f -
111115
```
112116

113117
The corresponding command lines for target secrets are:
114118

115119
```bash
116-
# Target username
117-
kubectl create secret generic target-db \
118-
--namespace=rdi \
119-
--from-literal=TARGET_DB_USERNAME=yourUsername
120-
121-
# Target password
122-
kubectl create secret generic target-db \
123-
--namespace=rdi \
124-
--from-literal=TARGET_DB_PASSWORD=yourPassword
125-
126-
# Target trust certificate (both commands are required)
127-
kubectl create secret generic target-db-ssl --from-file=ca.crt=/path/to/myca.crt -n rdi
128-
129-
kubectl create secret generic target-db \
130-
--namespace=rdi \
131-
--from-literal=TARGET_DB_CACERT=/etc/certificates/target-db/ca.crt
132-
133-
# Target public key (both commands are required)
134-
kubectl create secret generic target-db-ssl --from-file=client.crt=/path/to/myclient.crt -n rdi
135-
136-
kubectl create secret generic target-db \
137-
--namespace=rdi \
138-
--from-literal=SOURCE_DB_CERT=/etc/certificates/target_db/client.crt
139-
140-
141-
# Target private key (both commands are required)
142-
kubectl create secret generic target-db-ssl --from-file=client.key=/path/to/myclient.key -n rdi
143-
144-
kubectl create secret generic target-db \
145-
--namespace=rdi \
146-
--from-literal=SOURCE_DB_KEY=/etc/certificates/target_db/client.key
120+
# Without target TLS
121+
# Create or update target-db secret
122+
kubectl create secret generic target-db --namespace=rdi \
123+
--from-literal=TARGET_DB_USERNAME=yourUsername \
124+
--from-literal=TARGET_DB_PASSWORD=yourPassword \
125+
--save-config --dry-run=client -o yaml | kubectl apply -f -
126+
127+
# With target TLS
128+
# Create of update target-db secret
129+
kubectl create secret generic target-db --namespace=rdi \
130+
--from-literal=TARGET_DB_USERNAME=yourUsername \
131+
--from-literal=TARGET_DB_PASSWORD=yourPassword \
132+
--from-literal=TARGET_DB_CACERT=/etc/certificates/target_db/ca.crt \
133+
--save-config --dry-run=client -o yaml | kubectl apply -f -
134+
# Create or update target-db-ssl secret
135+
kubectl create secret generic target-db-ssl --namespace=rdi \
136+
--from-file=ca.crt=/path/to/myca.crt \
137+
--save-config --dry-run=client -o yaml | kubectl apply -f -
138+
139+
# With target mTLS
140+
# Create or update target-db secret
141+
kubectl create secret generic target-db --namespace=rdi \
142+
--from-literal=TARGET_DB_USERNAME=yourUsername \
143+
--from-literal=TARGET_DB_PASSWORD=yourPassword \
144+
--from-literal=TARGET_DB_CACERT=/etc/certificates/target_db/ca.crt \
145+
--from-literal=TARGET_DB_CERT=/etc/certificates/target_db/client.crt \
146+
--from-literal=TARGET_DB_KEY=/etc/certificates/target_db/client.key \
147+
--from-literal=TARGET_DB_KEY_PASSWORD=yourKeyPassword \ # add this only if TARGET_DB_KEY is password-protected
148+
--save-config --dry-run=client -o yaml | kubectl apply -f -
149+
# Create or update target-db-ssl secret
150+
kubectl create secret generic target-db-ssl --namespace=rdi \
151+
--from-file=ca.crt=/path/to/myca.crt \
152+
--from-file=client.crt=/path/to/myclient.crt \
153+
--from-file=client.key=/path/to/myclient.key \
154+
--save-config --dry-run=client -o yaml | kubectl apply -f -
147155
```
148156

149157
## Deploy a pipeline

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

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -177,6 +177,20 @@ Follow the steps below for each of your VMs:
177177
```bash
178178
sudo ./install.sh
179179
```
180+
181+
{{< note >}}RDI uses [K3s](https://k3s.io/) as part of its implementation.
182+
By default, the installer installs K3s in the `/var/lib` directory,
183+
but this might be a problem if you have limited space in `/var`
184+
or your company policy forbids you to install there. You can
185+
select a different directory for the K3s installation using the
186+
`--installation-dir` option with `install.sh` (or
187+
[`redis-di install`]({{< relref "/integrate/redis-data-integration/reference/cli/redis-di-install" >}})):
188+
189+
```bash
190+
sudo ./install.sh --installation-dir <custom-directory-path>
191+
```
192+
{{< /note >}}
193+
180194
RDI uses a database on your Redis Enterprise cluster to store its state
181195
information. *This requires Redis Enterprise v6.4 or greater*.
182196

@@ -210,6 +224,31 @@ sudo service k3s restart
210224

211225
After the installation is finished, RDI is ready for use.
212226

227+
## Supply cloud DNS information
228+
229+
{{< note >}}This section is only relevant if you are installing RDI
230+
on VMs in a cloud environment.
231+
{{< /note >}}
232+
233+
If you are using [Amazon Route 53](https://aws.amazon.com/route53/),
234+
[Google Cloud DNS](https://cloud.google.com/dns?hl=en), or
235+
[Azure DNS](https://azure.microsoft.com/en-gb/products/dns)
236+
then you must supply the installer with the nameserver IP address
237+
during installation (or with the `nameservers` property if you are
238+
using [Silent installation](#silent-installation)). The table below
239+
shows the appropriate IP address for each platform:
240+
241+
| Platform | Nameserver IP |
242+
| :-- | :-- |
243+
| [Amazon Route 53](https://aws.amazon.com/route53/) | 169.254.169.253 |
244+
| [Google Cloud DNS](https://cloud.google.com/dns?hl=en) | 169.254.169.254 |
245+
| [Azure DNS](https://azure.microsoft.com/en-gb/products/dns) | 168.63.129.16 |
246+
247+
If you are planning to use Route 53, you should first check that your VPC
248+
is configured to allow it. See
249+
[DNS attributes in your VPC](https://docs.aws.amazon.com/vpc/latest/userguide/AmazonDNS-concepts.html#vpc-dns-support)
250+
in the Amazon docs for more information.
251+
213252
## "Silent" installation
214253

215254
You can use the

content/integrate/redis-data-integration/reference/cli/redis-di-install.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,12 @@ Usage: redis-di install [OPTIONS]
4040

4141
Run installer in online mode
4242

43+
* `installation-dir`:
44+
* Type: STRING
45+
* Default: `/var/lib`
46+
* Usage: `--installation-dir`
47+
48+
Custom installation directory
4349

4450
* `help`:
4551
* Type: BOOL
@@ -62,5 +68,7 @@ Options:
6268
[default: WARN]
6369
-f, --file FILE Path to a TOML configuration file for silent
6470
installation
71+
--installation-dir Custom installation directory
72+
6573
--help Show this message and exit.
6674
```

content/integrate/redisvl/_index.md

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,20 @@
11
---
2+
aliases:
3+
- /integrate/redisvl/api
4+
- /integrate/redisvl/api/cache
5+
- /integrate/redisvl/api/filter
6+
- /integrate/redisvl/api/query
7+
- /integrate/redisvl/api/schema
8+
- /integrate/redisvl/api/searchindex
9+
- /integrate/redisvl/api/vectorizer
10+
- /integrate/redisvl/overview
11+
- /integrate/redisvl/overview/cli
12+
- /integrate/redisvl/user-guide
13+
- /integrate/redisvl/user-guide/get-started
14+
- /integrate/redisvl/user-guide/json-v-hashes
15+
- /integrate/redisvl/user-guide/query-filter
16+
- /integrate/redisvl/user-guide/semantic-caching
17+
- /integrate/redisvl/user-guide/vectorizers
218
categories:
319
- docs
420
- integrate
@@ -8,7 +24,7 @@ categories:
824
- rc
925
- oss
1026
- clients
11-
description: This is the Redis vector library.
27+
description: This is the Redis vector library (RedisVL).
1228
group: library
1329
hidden: false
1430
linkTitle: RedisVL
@@ -19,4 +35,12 @@ title: RedisVL
1935
type: integration
2036
weight: 1
2137
---
38+
RedisVL is a powerful, dedicated Python client library for Redis that enables seamless integration and management of high-dimensional vector data.
39+
Built to support machine learning and artificial intelligence workflows, RedisVL simplifies the process of storing, searching, and analyzing vector embeddings, which are commonly used for tasks like recommendation systems, semantic search, and anomaly detection.
2240

41+
Key features of RedisVL include:
42+
43+
- Vector Similarity Search: Efficiently find nearest neighbors in high-dimensional spaces using algorithms like HNSW (Hierarchical Navigable Small World).
44+
- Integration with AI Frameworks: RedisVL works seamlessly with popular frameworks such as TensorFlow, PyTorch, and Hugging Face, making it easy to deploy AI models.
45+
- Scalable and Fast: Leveraging Redis's in-memory architecture, RedisVL provides low-latency access to vector data, even at scale.
46+
- By bridging the gap between data storage and AI model deployment, RedisVL empowers developers to build intelligent, real-time applications with minimal infrastructure complexity.

content/integrate/redisvl/api/_index.md

Lines changed: 0 additions & 7 deletions
This file was deleted.

0 commit comments

Comments
 (0)