Skip to content

5.6 Updates #725

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 12 commits into from
Apr 14, 2020
55 changes: 30 additions & 25 deletions content/cheatsheet.md
Original file line number Diff line number Diff line change
Expand Up @@ -263,67 +263,71 @@ Output:
This is how you make expanding blocks.
{{% /expand%}}

### Excerpts
### Embedded partials

**Defining an excerpt**
A partial markdown or HTML file can be included in other files using the **embed-md** or **embed-html** shortcodes. Partials must be placed in `content/embeds` directory.

Embed a markdown partial

Syntax:

```md
{{%/* excerpt */%}}The Redis OSS Cluster API support in Redis Enterprise Software (RS)
provides a simple mechanism for cluster-aware Redis clients to learn
and know the cluster topology. This enables clients to connect directly
to an RS proxy on the node hosting the master shard for the data being
operated on.{{%/* /excerpt */%}}
```src
{{</* embed-md "sample.md" */>}}
```

Output:

{{% excerpt %}}The Redis OSS Cluster API support in Redis Enterprise Software (RS)
provides a simple mechanism for cluster-aware Redis clients to learn
and know the cluster topology. This enables clients to connect directly
to an RS proxy on the node hosting the master shard for the data being
operated on.{{% /excerpt %}}
{{< embed-md "sample.md" >}}

**Including an excerpt**
Embed an HTML partial

Syntax:

```src
{{%/* excerpt-include filename="rs/concepts/data-access/oss-cluster-api.md" */%}}
{{</* embed-html "sample-table.html" */>}}
```

Output:

{{%excerpt-include filename="rs/concepts/data-access/oss-cluster-api.md" %}}
{{< embed-html "sample.html" >}}

**Embedding a partial**
### Excerpts

A partial markdown or HTML file can be included in other files using the **embed-md** or **embed-html** shortcodes. Partials should be placed in `content/embeds` directory.
{{% warning %}}
In most cases, use embedded partials instead of excerpts.
{{% /warning %}}

Embed a markdown partial
**Defining an excerpt**

Syntax:

```src
{{</* embed-md "sample.md" */>}}
```md
{{%/* excerpt */%}}The Redis OSS Cluster API support in Redis Enterprise Software (RS)
provides a simple mechanism for cluster-aware Redis clients to learn
and know the cluster topology. This enables clients to connect directly
to an RS proxy on the node hosting the master shard for the data being
operated on.{{%/* /excerpt */%}}
```

Output:

{{< embed-md "sample.md" >}}
{{% excerpt %}}The Redis OSS Cluster API support in Redis Enterprise Software (RS)
provides a simple mechanism for cluster-aware Redis clients to learn
and know the cluster topology. This enables clients to connect directly
to an RS proxy on the node hosting the master shard for the data being
operated on.{{% /excerpt %}}

Embed an HTML partial
**Including an excerpt**

Syntax:

```src
{{</* embed-html "sample-table.html" */>}}
{{%/* excerpt-include filename="rs/concepts/data-access/oss-cluster-api.md" */%}}
```

Output:

{{< embed-html "sample.html" >}}
{{%excerpt-include filename="rs/concepts/data-access/oss-cluster-api.md" %}}

## Informative Notices

Expand Down Expand Up @@ -430,6 +434,7 @@ Ouput:
See example [here](/rcessentials/administration).

### Recently updated

This shortcode can be used to display recently updated articles.

Syntax:
Expand Down
30 changes: 24 additions & 6 deletions content/embeds/backup-locations.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
### FTP server

Before you specify to backup to an FTP server, make sure that:
Before you choose to backup to an FTP server, make sure that:

- The RS cluster has network connectivity to the FTP server.
- The user that you specify in the FTP server location has read and write priviledges.
Expand All @@ -15,7 +15,7 @@ For example: `ftp://username:password@10.1.1.1/home/backups/`

### SFTP server

Before you specify to backup to an SFTP server, make sure that:
Before you choose to backup to an SFTP server, make sure that:

- The RS cluster has network connectivity to the SFTP server.
- The user that you specify in the SFTP server location has read and write priviledges.
Expand All @@ -35,15 +35,15 @@ For example: `sftp://username:password@10.1.1.1/home/backups/`

### AWS S3

Before you specify to backup to Amazon S3, make sure that you have:
Before you choose to backup to Amazon S3, make sure that you have:

- Path in the format: `s3://bucketname/path/`
- Storage location path in the format: `s3://bucketname/path/`
- Access key ID
- Secret access key

### Local mount point

Before you specify to backup to a local mount point, make sure that:
Before you choose to backup to a local mount point, make sure that:

- The node has network connectivity to the destination server of the mount point.
- The `redislabs:redislabs` user has read and write priviledges on the local mount point
Expand All @@ -69,10 +69,28 @@ To backup to a local mount point for a node:

### OpenStack Swift

Before you specify to backup to OpenStack Swift, make sure that you have:
Before you choose to backup to OpenStack Swift, make sure that you have:

- Storage URL in the format: `https://<openstack_url>/v1`
- Container
- Prefix (Optional)
- User
- Key

### Azure Blob Storage

Before you choose to backup to OpenStack Swift, make sure that you have:

- Storage location path in the format: `/container_name/[path/]/`
- Account name
- Account key

### Google Cloud Storage

Before you choose to backup to OpenStack Swift, make sure that you have:

- Storage location path in the format: `/bucket_name/[path/]/`
- Client ID
- Client email
- Private key ID
- Private key
10 changes: 10 additions & 0 deletions content/embeds/oss-cluster-api-intro.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
Redis OSS Cluster API reduces access times and latency with near-linear scalability.
The Redis OSS Cluster API provides a simple mechanism for Redis clients to know the cluster topology.

Clients must first connect to the master node to get the cluster topology,
and then they connect directly to the Redis proxy on each node that hosts a master shard.

{{% note %}}
You must use a client that supports the OSS cluster API to connect to a database
that has the OSS cluster API enabled.
{{% /note %}}
80 changes: 80 additions & 0 deletions content/embeds/tls-configuration-procedure.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
To encrypt Replica Of synchronization traffic, you must also [configure encryption for the destination database](#configuring-tls-for-replica-of-traffic-on-the-destination-database).

### Configuring encryption for only Replica Of communication on the source database

To enable TLS for Replica Of communication only on the source database:

1. In **databases**, either:
- Click ![icon_add](/images/rs/icon_add.png#no-click "Add") to create a new database.
- Click on the database that you want to configure and at the bottom of the
page click **edit**.
1. Enable **TLS**.

![database-tls-config](/images/rs/database-tls-config.png "Database TLS Configuration")

1. Select the communication that you want to secure:
- For a new database - **Require TLS for Replica Of communications only** is
selected by default.
- For an existing database that is configured to **Require TLS for all
communications** - Select **Require TLS for Replica Of communications only**.

By default, client authentication is enforced so you must enter the syncer certificates
of the clusters that host the destination databases.

1. To enter the syncer certificates:
1. Copy the syncer certificates for each cluster with a destination database:
1. Login to the cluster.
1. Go to **Settings**.
1. In the syncer certificates box, copy the entire text of the certificate.
1. Click ![icon_add](/images/rs/icon_add.png#no-click "Add") to open the certificate box.

![database-tls-replica-certs](/images/rs/database-tls-replica-certs.png
"Database TLS Configuration")

1. Paste the text of the certificates in the box.
1. Click ![icon_save](/images/rs/icon_save.png#no-click "Save")
to save the certificates.

You can also clear **Enforce client authentication** so that all clusters or
clients can connect to your database without authentication.

To encrypt Replica Of synchronization traffic, you must also [configure encryption
for the destination database]({{< relref "/rs/administering/active-passive.md#encryption" >}}).

### Configuring encryption for all communication on the source database

To enable TLS for Replica Of and client communication on the source database:

1. In **databases**, either:
- Click ![icon_add](/images/rs/icon_add.png#no-click "Add")
to create a new database.
- Click on the database that you want to configure and at the bottom of the
database page click **edit**.
1. Enable **TLS** and select **Require TLS for all communications**.

![database-tls-all](/images/rs/database-tls-all.png "database-tls-all")

By default, client authentication is enforced so you must enter the syncer
certificates of the clusters that host the destination databases.
The certificates of the clients that connect to the database.

1. To enter the syncer and client certificates:
1. Copy the entire text of the syncer and client certificates.

For each cluster with a destination database:

1. Login to the cluster.
1. Go to **Settings**.
1. In the syncer certificates box, copy the entire text of the certificate.
1. Click ![icon_add](/images/rs/icon_add.png#no-click "Add")
to open the certificate box.

![database-tls-replica-certs](/images/rs/database-tls-replica-certs.png
"Database TLS Configuration")

1. Paste the text of the certificates in the box.
1. Click ![icon_save](/images/rs/icon_save.png#no-click "Save")
to save the certificates.

You can also clear **Enforce client authentication** so that all clusters or
clients can connect to your database without authentication.
20 changes: 12 additions & 8 deletions content/modules/upgrading-rs.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ This causes a short interruption in the availability of this database across the
When you upgrade the module for a database, you can either:

- Specify the module arguments to replace the current arguments.
- Specify the 'keep_module_args' flag to use the current argument.
- Specify the `keep_args` flag to use the current argument.

1. Connect to the terminal of a node in the cluster
1. Run `rladmin status` to list the databases on the node.
Expand All @@ -70,27 +70,31 @@ When you upgrade the module for a database, you can either:
1. To upgrade the module for the database, run:

```src
rladmin upgrade module db_name <database_name> module_name <module_name> version <new_module_version_number> module_args <module arguments>
rladmin upgrade db <database_name> and module module_name <module_name> version <new_module_version_number> module_args "<module arguments>"
```

- If you want to remove the existing module arguments, enter `""` without arguments.
- If you want to use the exisintg module arguments, enter `"keep_args"`
- If you want to update multiple modules, use the `and module` parameter for each module.

## Examples

Here are some examples of module upgrades:

- To upgrade the version of RediSearch to 1.6.7:
- To upgrade the version of RediSearch to 1.6.7 and specify arguments:

```src
rladmin upgrade module db_name MyAwesomeDB module_name ft version 10607 module_args "PARTITIONS AUTO"
rladmin upgrade db <database_name> and module db_name MyAwesomeDB module_name ft version 10607 module_args "PARTITIONS AUTO"
```

- To upgrade RedisBloom to version 2.2.1:
- To upgrade RedisBloom to version 2.2.1 and remove arguments:

```src
rladmin upgrade module db_name MyDB module_name bf version 20201 module_args ""
rladmin upgrade db <database_name> and module db_name MyDB module_name bf version 20201 module_args ""
```

- To upgrade RedisJSON to 1.0.4:
- To upgrade RedisJSON to 1.0.4 and keep existing arguments and RedisBloom to version 2.2.1 and remove arguments:

```src
rladmin upgrade module db_name MyDB module_name ReJSON version 10004 module_args ""
rladmin upgrade module db_name MyDB module_name ReJSON version 10004 module_args "keep_args" and module db_name MyDB module_name bf version 20201 module_args ""
```
6 changes: 1 addition & 5 deletions content/rs/administering/active-active.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,15 +39,11 @@ Before configuring a CRDB, you must:
## CRDB Current Limitations

1. RS is limited to five Participating Clusters or CRDB Instances per CRDB.
1. An existing database cannot modified to be a CRDB.
To move existing data to a CRDB you must create a new CRDB and migrate your data.
1. An existing database cannot be changed into a CRDB. To move data from an existing database to a CRDB you must create a new CRDB and migrate the data.
1. CRDBs do not support [Redis modules]({{< relref "/rs/developing/modules/_index.md" >}}).
1. CRDBs require FQDNs or mDNS (development only). Discovery Service is not supported with CRDBs.
1. CRDBs are not compatible with [Replica Of]({{< relref "/rs/administering/active-passive.md" >}}).

ReplicaOf is a one-way replication, while CRDB utilize multi-master replication.
1. [OSS cluster API]({{< relref "/rs/concepts/data-access/oss-cluster-api.md" >}}) is not supported with CRDB.

## Network Time Service (NTP or Chrony)

For CRDBs, you must use a time service like NTP or Chrony.
Expand Down
Loading