From 074e398b5d6408357a6b2c90b827aa58ea25faba Mon Sep 17 00:00:00 2001 From: Andy Stark Date: Wed, 23 Sep 2026 14:49:12 +0100 Subject: [PATCH 1/2] DOC-7104: Migrate content/operate/rs/7.8/ (excl. references) to render hooks Convert every relref and note/tip/warning/alert callout shortcode under content/operate/rs/7.8/ (clusters/, databases/, installing-upgrading/, monitoring/, networking/, security/, and the top-level pages) to the render-hook equivalents: plain Markdown links resolved by layouts/_default/_markup/render-link.html, and `> [!NOTE]` etc. blockquotes resolved by layouts/_default/_markup/render-blockquote.html. content/operate/rs/7.8/references/ is out of scope (unit 12, PR #4096). - Ran build/migrate_shortcode_links.py over the 171 in-scope files (932 relref, 153 callout shortcodes: 125 note, 26 warning, 2 tip, 0 alert; 153 files changed, 18 had nothing to convert). - Hand-fixed the by-far-most-common gotcha from prior units: callout shortcodes indented inside a list item lose their indentation on continuation/closing lines (not just the header), which detaches them from the enclosing
  • and can leave a stray whitespace-only `>` line. 28 files, 42 blocks affected. Fixed by re-indenting every continuation line to match its header's indent, and normalizing the trailing whitespace-only line to a bare indented `>`. - Fixed a pre-existing broken relref in databases/connect/troubleshooting-guide.md (the HGETALL link was missing its closing paren, `>}}:` instead of `>}}):` -- the same bug found in this exact file's 7.4 snapshot in the prior unit; did not recur in 7.8/references/ (unit 12) but does recur here). - Verified 0 rendered href diffs across all 435 pages under operate/rs/7.8 (including references/, untouched but in the fingerprint scope) via the patched build/diff_rendered_hrefs.py from DOC-7104-diff-hrefs-fix (not merged into this diff). - Spot-checked rendered
  • nesting for the indented-callout fixes (add-node.md's tip, create.md's 8-space-indented note inside a nested list) -- both match between before/after. Flagged, not fixed (pre-existing content facts, out of mechanical scope): new-features-redis-enterprise.md carries 6 relrefs that don't resolve to any real content page (/operate/rs/7.8/developing/crdbs, /operate/modules/{redisbloom,redisjson,redisearch}, /operate/rs/7.8/installing-upgrading/get-started-docker.md, /operate/rs/7.8/security/passwords-users-roles.md#setting-up-ldap) -- already broken before this migration and left equivalently broken after it (the page also has draft: true, so it never renders), per AGENTS.md "flag rather than decide." Co-Authored-By: Claude Sonnet 5 --- content/operate/rs/7.8/_index.md | 48 +++++----- content/operate/rs/7.8/clusters/_index.md | 4 +- content/operate/rs/7.8/clusters/add-node.md | 28 +++--- .../rs/7.8/clusters/cluster-recovery.md | 41 ++++----- .../rs/7.8/clusters/configure/_index.md | 4 +- .../clusters/configure/cluster-settings.md | 4 +- .../rs/7.8/clusters/configure/license-keys.md | 18 ++-- .../clusters/configure/rack-zone-awareness.md | 44 +++++---- .../rs/7.8/clusters/configure/sync-clocks.md | 2 +- .../operate/rs/7.8/clusters/logging/_index.md | 4 +- .../rs/7.8/clusters/logging/log-security.md | 9 +- .../rs/7.8/clusters/logging/redis-slow-log.md | 24 ++--- .../logging/rsyslog-logging/_index.md | 18 ++-- .../rs/7.8/clusters/maintenance-mode.md | 23 +++-- .../rs/7.8/clusters/new-cluster-setup.md | 37 ++++---- .../disk-sizing-heavy-write-scenarios.md | 2 +- .../clusters/optimize/memtier-benchmark.md | 2 +- .../rs/7.8/clusters/optimize/optimization.md | 2 +- .../7.8/clusters/optimize/oss-cluster-api.md | 4 +- .../clusters/optimize/turn-off-services.md | 8 +- .../operate/rs/7.8/clusters/optimize/wait.md | 6 +- .../operate/rs/7.8/clusters/remove-node.md | 39 ++++---- .../operate/rs/7.8/clusters/replace-node.md | 20 ++-- content/operate/rs/7.8/databases/_index.md | 4 +- .../rs/7.8/databases/active-active/_index.md | 25 +++-- .../rs/7.8/databases/active-active/connect.md | 11 +-- .../rs/7.8/databases/active-active/create.md | 78 ++++++++-------- .../rs/7.8/databases/active-active/delete.md | 7 +- .../databases/active-active/develop/_index.md | 2 +- .../develop/app-failover-active-active.md | 5 +- .../develop/data-types/hyperloglog.md | 2 +- .../active-active/develop/data-types/json.md | 4 +- .../develop/data-types/sorted-sets.md | 5 +- .../develop/data-types/streams.md | 38 ++++---- .../develop/data-types/strings.md | 16 ++-- .../active-active/develop/develop-for-aa.md | 10 +- .../databases/active-active/get-started.md | 38 ++++---- .../rs/7.8/databases/active-active/manage.md | 15 ++- .../7.8/databases/active-active/planning.md | 42 ++++----- .../rs/7.8/databases/active-active/syncer.md | 16 ++-- .../active-active/synchronization-mode.md | 9 +- .../rs/7.8/databases/auto-tiering/_index.md | 34 ++++--- .../7.8/databases/auto-tiering/quickstart.md | 16 ++-- .../databases/auto-tiering/storage-engine.md | 8 +- .../rs/7.8/databases/configure/_index.md | 91 +++++++++---------- .../configure/database-persistence.md | 9 +- .../rs/7.8/databases/configure/db-defaults.md | 30 +++--- .../rs/7.8/databases/configure/db-tags.md | 2 +- .../rs/7.8/databases/configure/db-upgrade.md | 8 +- .../databases/configure/oss-cluster-api.md | 30 +++--- .../7.8/databases/configure/proxy-policy.md | 33 +++---- .../rs/7.8/databases/configure/replica-ha.md | 25 +++-- .../databases/configure/shard-placement.md | 2 +- .../rs/7.8/databases/connect/_index.md | 12 +-- .../connect/supported-clients-browsers.md | 22 ++--- .../connect/test-client-connectivity.md | 16 ++-- .../connect/troubleshooting-guide.md | 26 +++--- content/operate/rs/7.8/databases/create.md | 21 ++--- .../rs/7.8/databases/durability-ha/_index.md | 12 +-- .../7.8/databases/durability-ha/clustering.md | 25 +++-- .../databases/durability-ha/consistency.md | 6 +- .../durability-ha/discovery-service.md | 22 ++--- .../databases/durability-ha/replication.md | 26 +++--- .../databases/import-export/export-data.md | 4 +- .../rs/7.8/databases/import-export/flush.md | 23 ++--- .../databases/import-export/import-data.md | 15 ++- .../import-export/migrate-to-active-active.md | 25 +++-- .../import-export/replica-of/_index.md | 53 +++++------ .../import-export/replica-of/create.md | 21 ++--- .../import-export/schedule-backups.md | 21 ++--- .../databases/memory-performance/_index.md | 20 ++-- .../memory-performance/eviction-policy.md | 9 +- .../memory-performance/memory-limit.md | 34 +++---- .../shard-placement-policy.md | 2 +- .../rs/7.8/databases/migrate-shards.md | 24 ++--- content/operate/rs/7.8/databases/recover.md | 60 ++++++------ .../rs/7.8/installing-upgrading/_index.md | 42 ++++----- .../configuring/centos-rhel-firewall.md | 9 +- .../change-location-socket-files.md | 18 ++-- .../configuring/linux-swap.md | 2 +- .../creating-support-package.md | 19 ++-- .../installing-upgrading/install/_index.md | 38 ++++---- .../install/customize-install-directories.md | 2 +- .../install/customize-user-and-group.md | 17 ++-- .../install/install-on-linux.md | 58 ++++++------ .../install/install-script.md | 14 +-- .../install/manage-installation-questions.md | 14 +-- .../install/offline-installation.md | 4 +- .../install/plan-deployment/_index.md | 28 +++--- .../configuring-aws-instances.md | 31 +++---- .../install/plan-deployment/file-locations.md | 11 +-- .../plan-deployment/hardware-requirements.md | 19 ++-- .../persistent-ephemeral-storage.md | 15 ++- .../install/prepare-install/_index.md | 16 ++-- .../download-install-package.md | 7 +- .../prepare-install/port-availability.md | 2 +- .../installing-upgrading/product-lifecycle.md | 9 +- .../quickstarts/_index.md | 10 +- .../quickstarts/docker-quickstart.md | 28 +++--- .../redis-enterprise-software-quickstart.md | 15 ++- .../7.8/installing-upgrading/uninstalling.md | 2 +- .../installing-upgrading/upgrading/_index.md | 16 ++-- .../upgrading/upgrade-active-active.md | 6 +- .../upgrading/upgrade-cluster.md | 67 +++++++------- .../upgrading/upgrade-database.md | 20 ++-- .../upgrading/upgrade-os.md | 48 +++++----- content/operate/rs/7.8/monitoring/_index.md | 10 +- .../rs/7.8/monitoring/db-availability.md | 13 ++- .../7.8/monitoring/metrics_stream_engine.md | 8 +- .../rs/7.8/monitoring/v1_monitoring.md | 21 ++--- .../operate/rs/7.8/networking/cluster-dns.md | 11 +-- .../rs/7.8/networking/cluster-lba-setup.md | 27 +++--- ...guring-aws-route53-dns-redis-enterprise.md | 5 +- content/operate/rs/7.8/networking/mdns.md | 11 +-- .../rs/7.8/networking/multi-ip-ipv6.md | 21 ++--- .../rs/7.8/networking/port-configurations.md | 20 ++-- .../networking/private-public-endpoints.md | 2 +- .../rs/7.8/new-features-redis-enterprise.md | 12 +-- content/operate/rs/7.8/security/_index.md | 12 +-- .../rs/7.8/security/access-control/_index.md | 9 +- .../access-control/create-cluster-roles.md | 8 +- .../access-control/create-combined-roles.md | 23 +++-- .../access-control/create-db-roles.md | 23 +++-- .../security/access-control/create-users.md | 10 +- .../security/access-control/ldap/_index.md | 20 ++-- .../ldap/enable-role-based-ldap.md | 6 +- .../ldap/map-ldap-groups-to-roles.md | 12 +-- .../ldap/migrate-to-role-based-ldap.md | 16 ++-- .../ldap/update-database-acls.md | 6 +- .../access-control/manage-passwords/_index.md | 15 ++- .../active-active-admin-credentials.md | 5 +- .../password-complexity-rules.md | 6 +- .../manage-passwords/password-expiration.md | 5 +- .../password-hashing-algorithm.md | 6 +- .../manage-passwords/rotate-passwords.md | 26 +++--- .../manage-users/default-user.md | 15 ++- .../manage-users/login-lockout.md | 16 ++-- .../access-control/redis-acl-overview.md | 41 ++++----- .../operate/rs/7.8/security/audit-events.md | 6 +- .../rs/7.8/security/certificates/_index.md | 8 +- .../certificate-based-authentication.md | 41 ++++----- .../certificates/create-certificates.md | 6 +- .../certificates/monitor-certificates.md | 4 +- .../security/certificates/ocsp-stapling.md | 12 +-- .../certificates/updating-certificates.md | 58 ++++++------ .../rs/7.8/security/encryption/_index.md | 16 ++-- .../encryption/internode-encryption.md | 6 +- .../7.8/security/encryption/pem-encryption.md | 12 +-- .../rs/7.8/security/encryption/tls/_index.md | 8 +- .../rs/7.8/security/encryption/tls/ciphers.md | 40 ++++---- .../7.8/security/encryption/tls/enable-tls.md | 25 +++-- .../security/encryption/tls/tls-protocols.md | 18 ++-- .../recommended-security-practices.md | 22 ++--- 153 files changed, 1358 insertions(+), 1457 deletions(-) diff --git a/content/operate/rs/7.8/_index.md b/content/operate/rs/7.8/_index.md index 2e22d653f3..8157a57f80 100644 --- a/content/operate/rs/7.8/_index.md +++ b/content/operate/rs/7.8/_index.md @@ -24,39 +24,39 @@ With Redis Enterprise, you get many enterprise-grade capabilities, including: You can run self-managed Redis Enterprise Software in an on-premises data center or on your preferred cloud platform. -If you prefer a fully managed Redis database-as-a-service, available on major public cloud services, consider setting up a [Redis Cloud]({{}}) subscription. You can [try Redis Cloud](https://redis.io/try-free/) for free. +If you prefer a fully managed Redis database-as-a-service, available on major public cloud services, consider setting up a [Redis Cloud](/content/operate/rc/_index.md) subscription. You can [try Redis Cloud](https://redis.io/try-free/) for free. ## Get started Build a small-scale cluster with the Redis Enterprise Software container image. -- [Linux quickstart]({{< relref "/operate/rs/7.8/installing-upgrading/quickstarts/redis-enterprise-software-quickstart" >}}) -- [Docker quickstart]({{< relref "/operate/rs/7.8/installing-upgrading/quickstarts/docker-quickstart" >}}) -- [Get started with Active-Active]({{< relref "/operate/rs/7.8/databases/active-active/get-started" >}}) +- [Linux quickstart](/content/operate/rs/7.8/installing-upgrading/quickstarts/redis-enterprise-software-quickstart.md) +- [Docker quickstart](/content/operate/rs/7.8/installing-upgrading/quickstarts/docker-quickstart.md) +- [Get started with Active-Active](/content/operate/rs/7.8/databases/active-active/get-started.md) ## Install & setup -[Install & set up]({{< relref "/operate/rs/7.8/installing-upgrading" >}}) a Redis Enterprise Software cluster. -- [Networking]({{< relref "/operate/rs/7.8/networking" >}}) -- [Set up]({{< relref "/operate/rs/7.8/clusters/new-cluster-setup" >}}) & [configure]({{< relref "/operate/rs/7.8/clusters/configure" >}}) a [cluster]({{< relref "/operate/rs/7.8/clusters" >}}) +[Install & set up](/content/operate/rs/7.8/installing-upgrading/_index.md) a Redis Enterprise Software cluster. +- [Networking](/content/operate/rs/7.8/networking/_index.md) +- [Set up](/content/operate/rs/7.8/clusters/new-cluster-setup.md) & [configure](/content/operate/rs/7.8/clusters/configure/_index.md) a [cluster](/content/operate/rs/7.8/clusters/_index.md) - [Release notes](https://redis.io/docs/latest/operate/rs/release-notes/) ## Databases -Create and manage a [Redis database]({{< relref "/operate/rs/7.8/databases" >}}) on a cluster. -- [Create a Redis Enterprise Software database]({{< relref "/operate/rs/7.8/databases/create" >}}) -- [Configure database]({{< relref "/operate/rs/7.8/databases/configure" >}}) -- [Create Active-Active database]({{< relref "/operate/rs/7.8/databases/active-active/create" >}}) -- [Edit Active-Active database]({{< relref "/operate/rs/7.8/databases/active-active/manage.md" >}}) +Create and manage a [Redis database](/content/operate/rs/7.8/databases/_index.md) on a cluster. +- [Create a Redis Enterprise Software database](/content/operate/rs/7.8/databases/create.md) +- [Configure database](/content/operate/rs/7.8/databases/configure/_index.md) +- [Create Active-Active database](/content/operate/rs/7.8/databases/active-active/create.md) +- [Edit Active-Active database](/content/operate/rs/7.8/databases/active-active/manage.md) ## Security -[Manage secure connections]({{< relref "/operate/rs/7.8/security" >}}) to the cluster and databases. -- [Access control]({{< relref "/operate/rs/7.8/security/access-control" >}}) -- [Users]({{< relref "/operate/rs/7.8/security/access-control/manage-users" >}}) & [roles]({{< relref "/operate/rs/7.8/security/access-control" >}}) -- [Certificates]({{< relref "/operate/rs/7.8/security/certificates" >}}) -- [TLS]({{< relref "/operate/rs/7.8/security/encryption/tls" >}}) & [Encryption]({{< relref "/operate/rs/7.8/security/encryption" >}}) +[Manage secure connections](/content/operate/rs/7.8/security/_index.md) to the cluster and databases. +- [Access control](/content/operate/rs/7.8/security/access-control/_index.md) +- [Users](/content/operate/rs/7.8/security/access-control/manage-users/_index.md) & [roles](/content/operate/rs/7.8/security/access-control/_index.md) +- [Certificates](/content/operate/rs/7.8/security/certificates/_index.md) +- [TLS](/content/operate/rs/7.8/security/encryption/tls/_index.md) & [Encryption](/content/operate/rs/7.8/security/encryption/_index.md) ## Reference Use command-line utilities and the REST API to manage the cluster and databases. -- [rladmin]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin" >}}), [crdb-cli]({{< relref "/operate/rs/7.8/references/cli-utilities/crdb-cli" >}}), & [other utilities]({{< relref "/operate/rs/7.8/references/cli-utilities" >}}) -- [REST API reference]({{< relref "/operate/rs/7.8/references/rest-api" >}}) & [examples]({{< relref "/operate/rs/7.8/references/rest-api/quick-start" >}}) -- [Redis commands]({{< relref "/commands" >}}) +- [rladmin](/content/operate/rs/7.8/references/cli-utilities/rladmin/_index.md), [crdb-cli](/content/operate/rs/7.8/references/cli-utilities/crdb-cli/_index.md), & [other utilities](/content/operate/rs/7.8/references/cli-utilities/_index.md) +- [REST API reference](/content/operate/rs/7.8/references/rest-api/_index.md) & [examples](/content/operate/rs/7.8/references/rest-api/quick-start.md) +- [Redis commands](/commands) ## Archive @@ -74,10 +74,10 @@ To view documentation earlier than version 7.4, see the archived website: ## Related info -- [Redis Cloud]({{< relref "/operate/rc" >}}) -- [Redis Open Source]({{< relref "/operate/oss_and_stack" >}}) -- [Redis Stack]({{< relref "/operate/oss_and_stack/stack-with-enterprise" >}}) -- [Glossary]({{< relref "/glossary" >}}) +- [Redis Cloud](/content/operate/rc/_index.md) +- [Redis Open Source](/content/operate/oss_and_stack/_index.md) +- [Redis Stack](/content/operate/oss_and_stack/stack-with-enterprise/_index.md) +- [Glossary](/content/glossary/_index.md) ## Continue learning with Redis University diff --git a/content/operate/rs/7.8/clusters/_index.md b/content/operate/rs/7.8/clusters/_index.md index 25036310ac..bf89a5061e 100644 --- a/content/operate/rs/7.8/clusters/_index.md +++ b/content/operate/rs/7.8/clusters/_index.md @@ -16,5 +16,5 @@ url: '/operate/rs/7.8/clusters/' You can manage your Redis Enterprise Software clusters with several different tools: - Cluster Manager UI (the web-based user interface) -- Command-line tools ([rladmin]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin" >}}), [redis-cli]({{< relref "/develop/tools/cli" >}}), [crdb-cli]({{< relref "/operate/rs/7.8/references/cli-utilities/crdb-cli" >}})) -- [REST API]({{< relref "/operate/rs/7.8/references/rest-api/_index.md" >}}) +- Command-line tools ([rladmin](/content/operate/rs/7.8/references/cli-utilities/rladmin/_index.md), [redis-cli](/content/develop/tools/cli.md), [crdb-cli](/content/operate/rs/7.8/references/cli-utilities/crdb-cli/_index.md)) +- [REST API](/content/operate/rs/7.8/references/rest-api/_index.md) diff --git a/content/operate/rs/7.8/clusters/add-node.md b/content/operate/rs/7.8/clusters/add-node.md index 20eca87d0d..06ce40d3e1 100644 --- a/content/operate/rs/7.8/clusters/add-node.md +++ b/content/operate/rs/7.8/clusters/add-node.md @@ -17,12 +17,12 @@ After you install the first node, you can add more nodes to the cluster. Before you add a node to the cluster: -- The clocks on all nodes must always be [synchronized]({{< relref "/operate/rs/7.8/clusters/configure/sync-clocks.md" >}}). +- The clocks on all nodes must always be [synchronized](/content/operate/rs/7.8/clusters/configure/sync-clocks.md). If the clock in the node you are trying to join to the cluster is not synchronized with the nodes already in the cluster, the action fails and an error message is shown indicating that you must synchronize the clocks first. -- You must [update the DNS records]({{< relref "/operate/rs/7.8/networking/cluster-dns" >}}) +- You must [update the DNS records](/content/operate/rs/7.8/networking/cluster-dns.md) each time a node is added or replaced. - We recommend that you add nodes one after the other rather than in parallel @@ -32,18 +32,18 @@ Before you add a node to the cluster: To add a node to an existing cluster: -1. [Install the Redis Enterprise Software installation package]({{< relref "/operate/rs/7.8/installing-upgrading" >}}) on a clean installation - of a [supported operating system]({{< relref "/operate/rs/7.8/installing-upgrading/install/plan-deployment/supported-platforms.md" >}}). +1. [Install the Redis Enterprise Software installation package](/content/operate/rs/7.8/installing-upgrading/_index.md) on a clean installation + of a [supported operating system](/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/supported-platforms.md). 1. To connect to the Cluster Manager UI of the new Redis Enterprise Software installation, go to: For example, if you installed Redis Enterprise Software on a machine with IP address 10.0.1.34, go to `https://10.0.1.34:8443`. - {{< tip >}} -The management UI uses TLS encryption with a default certificate. -You can also [replace the TLS certificate]({{< relref "/operate/rs/7.8/security/certificates/updating-certificates" >}}) -with a custom certificate. - {{< /tip >}} + > [!TIP] + > The management UI uses TLS encryption with a default certificate. + > You can also [replace the TLS certificate](/content/operate/rs/7.8/security/certificates/updating-certificates.md) + > with a custom certificate. + > 1. Select **Join cluster**. @@ -59,15 +59,15 @@ with a custom certificate. 1. Configure storage and network settings: - 1. Enter a path for [*Ephemeral storage*]({{< relref "/operate/rs/7.8/installing-upgrading/install/plan-deployment/persistent-ephemeral-storage" >}}), or leave the default path. + 1. Enter a path for [*Ephemeral storage*](/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/persistent-ephemeral-storage.md), or leave the default path. - 1. Enter a path for [*Persistent storage*]({{< relref "/operate/rs/7.8/installing-upgrading/install/plan-deployment/persistent-ephemeral-storage" >}}), + 1. Enter a path for [*Persistent storage*](/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/persistent-ephemeral-storage.md), or leave the default path. - 1. To enable [*Auto Tiering*]({{< relref "/operate/rs/7.8/databases/auto-tiering/" >}}), + 1. To enable [*Auto Tiering*](/content/operate/rs/7.8/databases/auto-tiering/_index.md), select **Enable flash storage** and enter the path to the flash storage. - 1. If the cluster is configured to support [rack-zone awareness]({{< relref "/operate/rs/7.8/clusters/configure/rack-zone-awareness.md" >}}), set the **Rack-zone ID** for the new node. + 1. If the cluster is configured to support [rack-zone awareness](/content/operate/rs/7.8/clusters/configure/rack-zone-awareness.md), set the **Rack-zone ID** for the new node. 1. If your machine has multiple IP addresses, assign a single IPv4 type address for **Node-to-node communication (internal traffic)** and multiple IPv4/IPv6 type addresses for **External traffic**. @@ -92,4 +92,4 @@ We recommend that you verify the node is functioning properly using one of the f - Command-line method: - Run the [`rlcheck`]({{< relref "/operate/rs/7.8/references/cli-utilities/rlcheck" >}}) utility from the node's command line. + Run the [`rlcheck`](/content/operate/rs/7.8/references/cli-utilities/rlcheck/_index.md) utility from the node's command line. diff --git a/content/operate/rs/7.8/clusters/cluster-recovery.md b/content/operate/rs/7.8/clusters/cluster-recovery.md index e0e2fc81ee..46741b8734 100644 --- a/content/operate/rs/7.8/clusters/cluster-recovery.md +++ b/content/operate/rs/7.8/clusters/cluster-recovery.md @@ -14,9 +14,8 @@ url: '/operate/rs/7.8/clusters/cluster-recovery/' When a Redis Enterprise Software cluster fails, you must use the cluster configuration file and database data to recover the cluster. -{{< note >}} -For cluster recovery in a Kubernetes deployment, see [Recover a Redis Enterprise cluster on Kubernetes]({{< relref "/operate/kubernetes/re-clusters/cluster-recovery" >}}). -{{< /note >}} +> [!NOTE] +> For cluster recovery in a Kubernetes deployment, see [Recover a Redis Enterprise cluster on Kubernetes](/content/operate/kubernetes/re-clusters/cluster-recovery.md). Cluster failure can be caused by: @@ -26,7 +25,7 @@ Cluster failure can be caused by: To recover a cluster and re-create it as it was before the failure, you must restore the cluster configuration `ccs-redis.rdb` to the cluster nodes. To recover databases in the new cluster, you must restore the databases from persistence files such as backup files, append-only files (AOF), or RDB snapshots. -These files are stored in the [persistent storage location]({{< relref "/operate/rs/7.8/installing-upgrading/install/plan-deployment/persistent-ephemeral-storage" >}}). +These files are stored in the [persistent storage location](/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/persistent-ephemeral-storage.md). The cluster recovery process includes: @@ -34,7 +33,7 @@ The cluster recovery process includes: 1. Mount the persistent storage with the recovery files from the original cluster to the nodes of the new cluster. 1. Recover the cluster configuration on the first node in the new cluster. 1. Join the remaining nodes to the new cluster. -1. [Recover the databases]({{< relref "/operate/rs/7.8/databases/recover.md" >}}). +1. [Recover the databases](/content/operate/rs/7.8/databases/recover.md). ## Prerequisites @@ -51,7 +50,7 @@ The cluster recovery process includes: 1. (Optional) If you want to recover the cluster to the original cluster nodes, uninstall Redis Enterprise Software from the nodes. -1. [Install Redis Enterprise Software]({{< relref "/operate/rs/7.8/installing-upgrading/install/install-on-linux" >}}) on the new cluster nodes. +1. [Install Redis Enterprise Software](/content/operate/rs/7.8/installing-upgrading/install/install-on-linux.md) on the new cluster nodes. The new servers must have the same basic hardware and software configuration as the original servers, including: @@ -60,21 +59,21 @@ The cluster recovery process includes: - The same Redis Enterprise Software version - The same installation user and paths - {{< note >}} -The cluster recovery can fail if these requirements are not met. - {{< /note >}} + > [!NOTE] + > The cluster recovery can fail if these requirements are not met. + > 1. Mount the persistent storage drives with the recovery files to the new nodes. These drives must contain the cluster configuration backup files and database persistence files. - {{< note >}} -Make sure that the user redislabs has permissions to access the storage location -of the configuration and persistence files on each of the nodes. - {{< /note >}} + > [!NOTE] + > Make sure that the user redislabs has permissions to access the storage location + > of the configuration and persistence files on each of the nodes. + > If you use local persistent storage, place all of the recovery files on each of the cluster nodes. -1. To recover the original cluster configuration, run [`rladmin cluster recover`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/cluster/recover" >}}) on the first node in the new cluster: +1. To recover the original cluster configuration, run [`rladmin cluster recover`](/content/operate/rs/7.8/references/cli-utilities/rladmin/cluster/recover.md) on the first node in the new cluster: ```sh rladmin cluster recover filename [ | ] node_uid rack_id @@ -89,7 +88,7 @@ of the configuration and persistence files on each of the nodes. When the recovery command succeeds, this node is configured as the node from the old cluster that has ID 1. -1. To join the remaining servers to the new cluster, run [`rladmin cluster join`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/cluster/join" >}}) from each new node: +1. To join the remaining servers to the new cluster, run [`rladmin cluster join`](/content/operate/rs/7.8/references/cli-utilities/rladmin/cluster/join.md) from each new node: ```sh rladmin cluster join nodes username password replace_node @@ -101,15 +100,15 @@ of the configuration and persistence files on each of the nodes. rladmin cluster join nodes 10.142.0.4 username admin@example.com password mysecret replace_node 2 ``` -1. Run [`rladmin status`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/status" >}}) to verify the recovered nodes are now active and the databases are pending recovery: +1. Run [`rladmin status`](/content/operate/rs/7.8/references/cli-utilities/rladmin/status.md) to verify the recovered nodes are now active and the databases are pending recovery: ```sh rladmin status ``` - {{< note >}} -Make sure that you update your [DNS records]({{< relref "/operate/rs/7.8/networking/cluster-dns" >}}) -with the IP addresses of the new nodes. - {{< /note >}} + > [!NOTE] + > Make sure that you update your [DNS records](/content/operate/rs/7.8/networking/cluster-dns.md) + > with the IP addresses of the new nodes. + > -After the cluster is recovered, you must [recover the databases]({{< relref "/operate/rs/7.8/databases/recover.md" >}}). +After the cluster is recovered, you must [recover the databases](/content/operate/rs/7.8/databases/recover.md). diff --git a/content/operate/rs/7.8/clusters/configure/_index.md b/content/operate/rs/7.8/clusters/configure/_index.md index 6b7ca77dab..9086d82909 100644 --- a/content/operate/rs/7.8/clusters/configure/_index.md +++ b/content/operate/rs/7.8/clusters/configure/_index.md @@ -14,8 +14,8 @@ url: '/operate/rs/7.8/clusters/configure/' You can manage your Redis Enterprise Software clusters with several different tools: - Cluster Manager UI (the web-based user interface) -- Command-line tools ([rladmin]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin" >}}), [redis-cli]({{< relref "/develop/tools/cli" >}}), [crdb-cli]({{< relref "/operate/rs/7.8/references/cli-utilities/crdb-cli" >}})) -- [REST API]({{< relref "/operate/rs/7.8/references/rest-api/_index.md" >}}) +- Command-line tools ([rladmin](/content/operate/rs/7.8/references/cli-utilities/rladmin/_index.md), [redis-cli](/content/develop/tools/cli.md), [crdb-cli](/content/operate/rs/7.8/references/cli-utilities/crdb-cli/_index.md)) +- [REST API](/content/operate/rs/7.8/references/rest-api/_index.md) diff --git a/content/operate/rs/7.8/clusters/configure/cluster-settings.md b/content/operate/rs/7.8/clusters/configure/cluster-settings.md index f34a977fec..14586a9996 100644 --- a/content/operate/rs/7.8/clusters/configure/cluster-settings.md +++ b/content/operate/rs/7.8/clusters/configure/cluster-settings.md @@ -23,7 +23,7 @@ you can upload the cluster license key, either during initial cluster creation or at any time afterward. The license key defines various cluster settings, such as the maximum number of shards you can have in the cluster. For more detailed information see [Cluster license -keys]({{< relref "/operate/rs/7.8/clusters/configure/license-keys.md" >}}). +keys](/content/operate/rs/7.8/clusters/configure/license-keys.md). ### View max number of allowed shards @@ -44,7 +44,7 @@ You can change the **Time zone** field to ensure the date, time fields, and log The **Alert Settings** tab lets you configure alerts that are relevant to the entire cluster, such as alerts for cluster utilization, nodes, node utilization, security, and database utilization. -You can also configure email server settings and [send alerts by email]({{< relref "/operate/rs/7.8/monitoring/v1_monitoring#send-alerts-by-email" >}}) to relevant users. +You can also configure email server settings and [send alerts by email](/content/operate/rs/7.8/monitoring/v1_monitoring.md#send-alerts-by-email) to relevant users. ### Configure email server settings diff --git a/content/operate/rs/7.8/clusters/configure/license-keys.md b/content/operate/rs/7.8/clusters/configure/license-keys.md index 2b95d5ddbc..5d5b728a04 100644 --- a/content/operate/rs/7.8/clusters/configure/license-keys.md +++ b/content/operate/rs/7.8/clusters/configure/license-keys.md @@ -22,21 +22,19 @@ Trial mode allows all features to be enabled during the trial period. Trial mode is limited to 30 days and 4 shards, including master and replica shards. A new Redis Enterprise Software installation starts its 30-day trial period from the day you set up the cluster on the first node. -Trial mode requires a trial license. If you do not provide a license when you create a cluster using the Cluster Manager UI or a [bootstrapping REST API request]({{< relref "/operate/rs/7.8/references/rest-api/requests/bootstrap#post-bootstrap" >}}), a trial cluster license is generated by default. +Trial mode requires a trial license. If you do not provide a license when you create a cluster using the Cluster Manager UI or a [bootstrapping REST API request](/content/operate/rs/7.8/references/rest-api/requests/bootstrap/_index.md#post-bootstrap), a trial cluster license is generated by default. ## View cluster license key -To view the cluster license key, use a [`GET /v1/license`]({{< relref "/operate/rs/7.8/references/rest-api/requests/license#get-license" >}}) REST API request. For a list of returned fields, see the [response section]({{< relref "/operate/rs/7.8/references/rest-api/requests/license#get-response" >}}). +To view the cluster license key, use a [`GET /v1/license`](/content/operate/rs/7.8/references/rest-api/requests/license/_index.md#get-license) REST API request. For a list of returned fields, see the [response section](/content/operate/rs/7.8/references/rest-api/requests/license/_index.md#get-response). -{{}} -As of version 7.2, Redis Enterprise enforces shard limits by shard types, RAM or flash, instead of the total number of shards. The flash shards limit only appears in the UI if Auto Tiering is enabled. -{{}} +> [!NOTE] +> As of version 7.2, Redis Enterprise enforces shard limits by shard types, RAM or flash, instead of the total number of shards. The flash shards limit only appears in the UI if Auto Tiering is enabled. ## Update cluster license -{{< note >}} -After you add a cluster key, you cannot remove the key to return the cluster to trial mode. -{{< /note >}} +> [!NOTE] +> After you add a cluster key, you cannot remove the key to return the cluster to trial mode. You can update the cluster license key: @@ -105,7 +103,7 @@ To change the cluster license alert settings, use one of the following methods: 1. Click **Save**. -- [Update cluster]({{}}) REST API request: +- [Update cluster](/content/operate/rs/7.8/references/rest-api/requests/cluster/_index.md#put-cluster) REST API request: The following example changes the cluster license alert to occur 30 days before the cluster license expiration date: @@ -123,7 +121,7 @@ To change the cluster license alert settings, use one of the following methods: ## Monitor cluster license -As of version 7.2, Redis Enterprise exposes the license quotas and the shards consumption metrics in the Cluster Manager UI or via the [Prometheus integration]({{< relref "/integrate/prometheus-with-redis-enterprise/" >}}). +As of version 7.2, Redis Enterprise exposes the license quotas and the shards consumption metrics in the Cluster Manager UI or via the [Prometheus integration](/content/integrate/prometheus-with-redis-enterprise/_index.md). The `cluster_shards_limit` metric displays the total shard limit by shard type. diff --git a/content/operate/rs/7.8/clusters/configure/rack-zone-awareness.md b/content/operate/rs/7.8/clusters/configure/rack-zone-awareness.md index a4b699a234..9014398618 100644 --- a/content/operate/rs/7.8/clusters/configure/rack-zone-awareness.md +++ b/content/operate/rs/7.8/clusters/configure/rack-zone-awareness.md @@ -34,9 +34,8 @@ The rack-zone ID must comply with the following rules: - Characters consist of letters, digits, and hyphens ('-'). Underscores ('_') are also accepted as of Redis Enterprise Software 6.4.2-61. - ID starts with a letter and ends with a letter or a digit. -{{< note >}} -Rack-zone IDs are **case-insensitive** (uppercase and lowercase letter are treated as the same). -{{< /note >}} +> [!NOTE] +> Rack-zone IDs are **case-insensitive** (uppercase and lowercase letter are treated as the same). ## Node layout guidelines @@ -53,15 +52,14 @@ If a Redis Enterprise Software cluster consists of three nodes (the recommended To enable rack-zone awareness, you need to configure it for the cluster, nodes, and [databases](#enable-database-rack-zone-awareness). -{{}} -- After rack-zone awareness is enabled for a cluster, it cannot be turned off. - -- After a rack ID is assigned to a node, it cannot be changed. -{{}} +> [!NOTE] +> - After rack-zone awareness is enabled for a cluster, it cannot be turned off. +> +> - After a rack ID is assigned to a node, it cannot be changed. ### New cluster -You can set up rack-zone awareness for the cluster and its nodes during [cluster creation]({{< relref "/operate/rs/7.8/clusters/new-cluster-setup" >}}): +You can set up rack-zone awareness for the cluster and its nodes during [cluster creation](/content/operate/rs/7.8/clusters/new-cluster-setup.md): 1. In the **Cluster** screen's **Configuration** section, enable **Rack zone awareness**. @@ -69,22 +67,22 @@ You can set up rack-zone awareness for the cluster and its nodes during [cluster 1. Enter a **Rack-zone ID** for the current node. -1. Finish [cluster setup]({{< relref "/operate/rs/7.8/clusters/new-cluster-setup" >}}). +1. Finish [cluster setup](/content/operate/rs/7.8/clusters/new-cluster-setup.md). -1. For every [node you add to the cluster]({{< relref "/operate/rs/7.8/clusters/add-node" >}}), assign a different **Rack-zone ID**. +1. For every [node you add to the cluster](/content/operate/rs/7.8/clusters/add-node.md), assign a different **Rack-zone ID**. ### Existing cluster -If you did not configure rack-zone awareness during cluster creation, you can configure rack-zone awareness for existing clusters using the [REST API]({{< relref "/operate/rs/7.8/references/rest-api" >}}): +If you did not configure rack-zone awareness during cluster creation, you can configure rack-zone awareness for existing clusters using the [REST API](/content/operate/rs/7.8/references/rest-api/_index.md): -1. For each node in the cluster, assign a different rack-zone ID using the REST API to [update the node]({{< relref "/operate/rs/7.8/references/rest-api/requests/nodes#put-node" >}}): +1. For each node in the cluster, assign a different rack-zone ID using the REST API to [update the node](/content/operate/rs/7.8/references/rest-api/requests/nodes/_index.md#put-node): ```sh PUT /v1/nodes/ { "rack_id": "rack-zone-ID" } ``` -1. [Update the cluster policy]({{< relref "/operate/rs/7.8/references/rest-api/requests/cluster/policy#put-cluster-policy" >}}) to enable rack-zone awareness: +1. [Update the cluster policy](/content/operate/rs/7.8/references/rest-api/requests/cluster/policy.md#put-cluster-policy) to enable rack-zone awareness: ```sh PUT /v1/cluster/policy @@ -98,11 +96,11 @@ Before you can enable rack-zone awareness for a database, you must configure rac -To enable rack-zone awareness for a database, use a [REST API request]({{< relref "/operate/rs/7.8/references/rest-api/requests/bdbs#put-bdbs" >}}): +To enable rack-zone awareness for a database, use a [REST API request](/content/operate/rs/7.8/references/rest-api/requests/bdbs/_index.md#put-bdbs): ```sh PUT /v1/bdbs/ @@ -126,9 +124,9 @@ PUT /v1/bdbs/ ### Rearrange database shards -After you enable rack-zone awareness for an existing database, you should generate an optimized shard placement blueprint using the [REST API]({{< relref "/operate/rs/7.8/references/rest-api" >}}) and use it to rearrange the shards in different racks or zones. +After you enable rack-zone awareness for an existing database, you should generate an optimized shard placement blueprint using the [REST API](/content/operate/rs/7.8/references/rest-api/_index.md) and use it to rearrange the shards in different racks or zones. -1. [Generate an optimized shard placement blueprint]({{< relref "/operate/rs/7.8/references/rest-api/requests/bdbs/actions/optimize_shards_placement#get-bdbs-actions-optimize-shards-placement" >}}): +1. [Generate an optimized shard placement blueprint](/content/operate/rs/7.8/references/rest-api/requests/bdbs/actions/optimize_shards_placement.md#get-bdbs-actions-optimize-shards-placement): 1. Send the following `GET` request: @@ -140,7 +138,7 @@ After you enable rack-zone awareness for an existing database, you should genera 1. Copy the JSON response body, which represents the new shard placement blueprint. -1. [Rearrange the database shards]({{< relref "/operate/rs/7.8/references/rest-api/requests/bdbs/actions/optimize_shards_placement#put-bdbs-rearrange-shards" >}}) according to the new shard placement blueprint: +1. [Rearrange the database shards](/content/operate/rs/7.8/references/rest-api/requests/bdbs/actions/optimize_shards_placement.md#put-bdbs-rearrange-shards) according to the new shard placement blueprint: 1. In the request headers, include the `cluster-state-id` from the `optimize_shards_placement` response. diff --git a/content/operate/rs/7.8/clusters/configure/sync-clocks.md b/content/operate/rs/7.8/clusters/configure/sync-clocks.md index e0ba3f01ac..f45fa41a75 100644 --- a/content/operate/rs/7.8/clusters/configure/sync-clocks.md +++ b/content/operate/rs/7.8/clusters/configure/sync-clocks.md @@ -130,5 +130,5 @@ For more details, refer to the official [RHEL 8 and 9 documentation](https://acc For more details, refer to the official [Amazon Linux 2 documentation](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/set-time.html). -If you are using Active-Active databases, you must use [Network Time Service (ntpd)]({{< relref "/operate/rs/7.8/databases/active-active/_index.md#network-time-service-ntp-or-chrony" >}}) +If you are using Active-Active databases, you must use [Network Time Service (ntpd)](/content/operate/rs/7.8/databases/active-active/_index.md#network-time-service-ntp-or-chrony) to synchronize OS clocks consistently across clusters to handle conflict resolution according to the OS time. diff --git a/content/operate/rs/7.8/clusters/logging/_index.md b/content/operate/rs/7.8/clusters/logging/_index.md index e91b1822b5..ee6aecda93 100644 --- a/content/operate/rs/7.8/clusters/logging/_index.md +++ b/content/operate/rs/7.8/clusters/logging/_index.md @@ -32,8 +32,8 @@ events regarding alerts, notifications, and configuration. You can use the **Logs** screen to review what actions a user has performed, such as editing a database's configuration. - [Redis slow - log]({{< relref "/operate/rs/7.8/clusters/logging/redis-slow-log.md" >}}) -- [rsyslog logging]({{< relref "/operate/rs/7.8/clusters/logging/rsyslog-logging/" >}}) + log](/content/operate/rs/7.8/clusters/logging/redis-slow-log.md) +- [rsyslog logging](/content/operate/rs/7.8/clusters/logging/rsyslog-logging/_index.md) ## View logs in the UI diff --git a/content/operate/rs/7.8/clusters/logging/log-security.md b/content/operate/rs/7.8/clusters/logging/log-security.md index e05280472e..83b3eb1dad 100644 --- a/content/operate/rs/7.8/clusters/logging/log-security.md +++ b/content/operate/rs/7.8/clusters/logging/log-security.md @@ -10,13 +10,13 @@ linktitle: Manage logs weight: 50 url: '/operate/rs/7.8/clusters/logging/log-security/' --- -Redis Enterprise comes with [a set of logs]({{< relref "/operate/rs/7.8/clusters/logging" >}}) on the server and available through the user interface to assist users in investigating actions taken on the server and to troubleshoot issues. +Redis Enterprise comes with [a set of logs](/content/operate/rs/7.8/clusters/logging/_index.md) on the server and available through the user interface to assist users in investigating actions taken on the server and to troubleshoot issues. ## Send logs to a remote logging server Redis Enterprise sends logs to syslog by default. You can send these logs to a remote logging server by configuring syslog. -To do this, modify the syslog or rsyslog configuration on your operating system to send logs in the `$logdir` directory (`/var/opt/redislabs/log` in default installations) to a remote monitoring server of your choice. See [rsyslog logging]({{< relref "/operate/rs/7.8/clusters/logging/rsyslog-logging/" >}}) for additional details. +To do this, modify the syslog or rsyslog configuration on your operating system to send logs in the `$logdir` directory (`/var/opt/redislabs/log` in default installations) to a remote monitoring server of your choice. See [rsyslog logging](/content/operate/rs/7.8/clusters/logging/rsyslog-logging/_index.md) for additional details. ## Log rotation @@ -78,6 +78,5 @@ ${logdir}/cluster_wd.log.long_retention { - `notifempty`: Don't rotate the log file if it is empty. -{{}} -For large scale deployments, you might need to rotate logs at faster intervals than daily. You can also use a cronjob or external vendor solutions. -{{}} +> [!NOTE] +> For large scale deployments, you might need to rotate logs at faster intervals than daily. You can also use a cronjob or external vendor solutions. diff --git a/content/operate/rs/7.8/clusters/logging/redis-slow-log.md b/content/operate/rs/7.8/clusters/logging/redis-slow-log.md index 426965a40d..b51eb63178 100644 --- a/content/operate/rs/7.8/clusters/logging/redis-slow-log.md +++ b/content/operate/rs/7.8/clusters/logging/redis-slow-log.md @@ -11,7 +11,7 @@ weight: $weight url: '/operate/rs/7.8/clusters/logging/redis-slow-log/' --- -[Redis slow log]({{}}) is one of the best +[Redis slow log](/content/commands/slowlog.md) is one of the best tools for debugging and tracing your Redis database, especially if you experience high latency and high CPU usage with Redis operations. Because Redis is based on a single threaded architecture, Redis slow log @@ -31,9 +31,9 @@ execution times of the same command, observe spikes in CPU usage, and more. This is especially useful with complex commands such as -[ZUNIONSTORE]({{}}), -[ZINTERSTORE]({{}}), and -[ZRANGEBYSCORE]({{}}). +[ZUNIONSTORE](/content/commands/zunionstore.md), +[ZINTERSTORE](/content/commands/zinterstore.md), and +[ZRANGEBYSCORE](/content/commands/zrangebyscore.md). The enhanced Redis Software slow log adds the **Complexity info** field to the output data. @@ -78,7 +78,7 @@ To view slow log entries for Redis Software databases, use one of the following - Cluster Manager UI: - 1. To access the slow log in the Cluster Manager UI, your [cluster management role]({{}}) must be Admin, Cluster Member, or DB Member. + 1. To access the slow log in the Cluster Manager UI, your [cluster management role](/content/operate/rs/7.8/security/access-control/create-cluster-roles.md) must be Admin, Cluster Member, or DB Member. 1. Select a database from the **Databases** list. @@ -86,7 +86,7 @@ To view slow log entries for Redis Software databases, use one of the following - Command line: - Use [`redis-cli`]({{}}) to run [`SLOWLOG GET`]({{}}): + Use [`redis-cli`](/content/operate/rs/7.8/references/cli-utilities/redis-cli/_index.md) to run [`SLOWLOG GET`](/content/commands/slowlog-get.md): ```sh redis-cli -h -p SLOWLOG GET @@ -94,15 +94,15 @@ To view slow log entries for Redis Software databases, use one of the following ## Change slow log threshold -The slow log includes all database commands that take longer than ten milliseconds (10,000 microseconds) by default. You can use [`redis-cli`]({{}}) to view or change this threshold. +The slow log includes all database commands that take longer than ten milliseconds (10,000 microseconds) by default. You can use [`redis-cli`](/content/operate/rs/7.8/references/cli-utilities/redis-cli/_index.md) to view or change this threshold. -To check the current threshold, run [`CONFIG GET`]({{}}): +To check the current threshold, run [`CONFIG GET`](/content/commands/config-get.md): ```sh redis-cli -h -p CONFIG GET slowlog-log-slower-than ``` -To change the threshold, run [`CONFIG SET`]({{}}): +To change the threshold, run [`CONFIG SET`](/content/commands/config-set.md): ```sh redis-cli -h -p CONFIG SET slowlog-log-slower-than @@ -110,15 +110,15 @@ redis-cli -h -p CONFIG SET slowlog-log-slower-than }}) to view or change the maximum number of entries. +The slow log retains the last 128 entries by default. You can use [`redis-cli`](/content/operate/rs/7.8/references/cli-utilities/redis-cli/_index.md) to view or change the maximum number of entries. -To check the current maximum, run [`CONFIG GET`]({{}}): +To check the current maximum, run [`CONFIG GET`](/content/commands/config-get.md): ```sh redis-cli -h -p CONFIG GET slowlog-max-len ``` -To change the maximum, run [`CONFIG SET`]({{}}): +To change the maximum, run [`CONFIG SET`](/content/commands/config-set.md): ```sh redis-cli -h -p CONFIG SET slowlog-max-len diff --git a/content/operate/rs/7.8/clusters/logging/rsyslog-logging/_index.md b/content/operate/rs/7.8/clusters/logging/rsyslog-logging/_index.md index 6937f48ac6..3c07ecc823 100644 --- a/content/operate/rs/7.8/clusters/logging/rsyslog-logging/_index.md +++ b/content/operate/rs/7.8/clusters/logging/rsyslog-logging/_index.md @@ -21,13 +21,13 @@ In some cases, a single action, such as removing a node from the cluster, may ac All log entries displayed in the Cluster Manager UI are also written to `syslog`. You can configure `rsyslog` to monitor `syslog`. Enabled alerts are logged to `syslog` and appear with other log entries. -You can also [manage your logs]({{< relref "/operate/rs/7.8/clusters/logging/log-security" >}}) with a remote logging server and log rotation. +You can also [manage your logs](/content/operate/rs/7.8/clusters/logging/log-security.md) with a remote logging server and log rotation. ### Types of log entries Log entries are categorized into events and alerts. Both types of entries appear in the logs, but alert log entries also include a boolean `"state"` parameter that indicates whether the alert is enabled or disabled. -Log entries include information about the specific event that occurred. See the log entry tables for [alerts and events]({{< relref "/operate/rs/7.8/clusters/logging/alerts-events" >}}) for more details. +Log entries include information about the specific event that occurred. See the log entry tables for [alerts and events](/content/operate/rs/7.8/clusters/logging/alerts-events.md) for more details. ### Severity @@ -64,7 +64,7 @@ The log entries have the following basic structure: - **process id­**: The ID of the logging process - **list of key-value pairs in any order**:­ A list of key-value pairs that describe the specific event. They can appear in any order. Some key­-value pairs are always shown, and some appear depending on the specific event. - **Key-­value pairs that always appear:** - - `"type"`: A unique code­ name for the logged event. For the list of codenames, see the [logged alerts and events]({{< relref "/operate/rs/7.8/clusters/logging/alerts-events" >}}) tables. + - `"type"`: A unique code­ name for the logged event. For the list of codenames, see the [logged alerts and events](/content/operate/rs/7.8/clusters/logging/alerts-events.md) tables. - `"object"`: Defines the object type and ID (if relevant) of the object this event relates to, such as cluster, node with ID, BDB with ID, etc. Has the format of `[:]`. - `"time"`: Unix epoch time but can be ignored in this context. - **Key-­value pairs that might appear depending on the specific entry:** @@ -106,7 +106,7 @@ In this example, the storage utilization on node 1 reached the value of ~90%, wh - `"object":"node:1"`­ - The object related to this alert - `"state":true­` - Current state of the alert - `"time":1434282560­` - Can be ignored -- `"type":"ephemeral_storage"` - The code name of this specific event. See [logged alerts and events]({{< relref "/operate/rs/7.8/clusters/logging/alerts-events" >}}) for more details. +- `"type":"ephemeral_storage"` - The code name of this specific event. See [logged alerts and events](/content/operate/rs/7.8/clusters/logging/alerts-events.md) for more details. #### "Alert off" log entry sample @@ -136,7 +136,7 @@ This log entry is an example of when the alert for the node with ID 1 "Ephemeral - `"object":"node:1"` -­ The object related to this alert - `"state":false­` - Current state of the alert - `"time":1434283480­` - Can be ignored -- `"type":"ephemeral_storage"` -­ The code name identifier of this specific event. See [logged alerts and events]({{< relref "/operate/rs/7.8/clusters/logging/alerts-events" >}}) for more details. +- `"type":"ephemeral_storage"` -­ The code name identifier of this specific event. See [logged alerts and events](/content/operate/rs/7.8/clusters/logging/alerts-events.md) for more details. ### Odd number of nodes with a minimum of three nodes alert @@ -166,7 +166,7 @@ This log entry is an example of when the alert for "True high availability requi - `"state":true` -­ Current state of the alert - `"time":1434284700­` - Can be ignored - `"node_count":1­` - The number of nodes in the cluster -- `"type":"even_node_count"­` - The code name identifier of this specific event. See [logged alerts and events]({{< relref "/operate/rs/7.8/clusters/logging/alerts-events" >}}) for more details. +- `"type":"even_node_count"­` - The code name identifier of this specific event. See [logged alerts and events](/content/operate/rs/7.8/clusters/logging/alerts-events.md) for more details. #### "Alert off" log entry sample @@ -194,7 +194,7 @@ This log entry is an example of when the alert for "True high availability requi - `"state":false­` - Current state of the alert - `"time":1434285200­` - Can be ignored - `"node_count":3­` - The number of nodes in the cluster -- `"type":"even_node_count"` -­ The code name of this specific event. See [logged alerts and events]({{< relref "/operate/rs/7.8/clusters/logging/alerts-events" >}}) for more details. +- `"type":"even_node_count"` -­ The code name of this specific event. See [logged alerts and events](/content/operate/rs/7.8/clusters/logging/alerts-events.md) for more details. ### Node has insufficient disk space for AOF rewrite @@ -233,7 +233,7 @@ This log entry is an example of when the alert for "Node has insufficient disk s - `"state":true­` - Current state of the alert - `"time":1434365483` -­ Can be ignored - `"disk":705667072­` - The total size in bytes of the persistent storage -- `"type":"insufficient_disk_aofrw"­` - The code name of this specific event. See [logged alerts and events]({{< relref "/operate/rs/7.8/clusters/logging/alerts-events" >}}) for more details. +- `"type":"insufficient_disk_aofrw"­` - The code name of this specific event. See [logged alerts and events](/content/operate/rs/7.8/clusters/logging/alerts-events.md) for more details. #### "Alert off" log entry sample @@ -266,4 +266,4 @@ daemon.info: Jun 15 13:51:11 node1 event_log[34252]: - `"state":false­` - Current state of the alert - `"time":1434365471­` - Can be ignored - `"disk":705667072­` - The total size in bytes of the persistent storage -- `"type":"insufficient_disk_aofrw"`­ - The code name of this specific event. See [logged alerts and events]({{< relref "/operate/rs/7.8/clusters/logging/alerts-events" >}}) for more details. +- `"type":"insufficient_disk_aofrw"`­ - The code name of this specific event. See [logged alerts and events](/content/operate/rs/7.8/clusters/logging/alerts-events.md) for more details. diff --git a/content/operate/rs/7.8/clusters/maintenance-mode.md b/content/operate/rs/7.8/clusters/maintenance-mode.md index 62db48a8e2..3afe82812d 100644 --- a/content/operate/rs/7.8/clusters/maintenance-mode.md +++ b/content/operate/rs/7.8/clusters/maintenance-mode.md @@ -19,15 +19,15 @@ When you activate maintenance mode, Redis Enterprise does the following: 1. Checks whether the cluster has enough active nodes to maintain quorum if one goes down. If taking a node offline would cause quorum loss, maintenance mode will not activate. - {{}} -This check does not consider if other nodes are already in maintenance mode. Do not put the majority of nodes into maintenance mode and restart them simultaneously, as this can cause the cluster to lose quorum and lead to data loss. - {{}} + > [!WARNING] + > This check does not consider if other nodes are already in maintenance mode. Do not put the majority of nodes into maintenance mode and restart them simultaneously, as this can cause the cluster to lose quorum and lead to data loss. + > 1. If no maintenance mode snapshots already exist or if you use `overwrite_snapshot` when you activate maintenance mode, Redis Enterprise creates a new node snapshot that records the node's shard and endpoint configuration. 1. Marks the node as a quorum node to prevent shards and endpoints from migrating to it. - At this point, [`rladmin status`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/status" >}}) displays the node's shards field in yellow, which indicates that shards cannot migrate to the node. + At this point, [`rladmin status`](/content/operate/rs/7.8/references/cli-utilities/rladmin/status.md) displays the node's shards field in yellow, which indicates that shards cannot migrate to the node. {{< image filename="/images/rs/maintenance_mode.png" >}} @@ -105,7 +105,7 @@ By default, a snapshot is required to deactivate maintenance mode. If the snaps ### Specify a snapshot -When you turn off maintenance mode, you can restore the node configuration from a maintenance mode snapshot or any snapshots previously created by [`rladmin node snapshot create`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/node/snapshot#node-snapshot-create" >}}). If you do not specify a snapshot, Redis Enterprise uses the latest maintenance mode snapshot by default. +When you turn off maintenance mode, you can restore the node configuration from a maintenance mode snapshot or any snapshots previously created by [`rladmin node snapshot create`](/content/operate/rs/7.8/references/cli-utilities/rladmin/node/snapshot.md#node-snapshot-create). If you do not specify a snapshot, Redis Enterprise uses the latest maintenance mode snapshot by default. To get a list of available snapshots, run: @@ -119,10 +119,9 @@ To specify a snapshot when you turn maintenance mode off, run: rladmin node maintenance_mode off snapshot_name ``` -{{}} -If an error occurs when you turn on maintenance mode, the snapshot is not deleted. -When you rerun the command, use the snapshot from the initial attempt since it contains the original state of the node. -{{}} +> [!NOTE] +> If an error occurs when you turn on maintenance mode, the snapshot is not deleted. +> When you rerun the command, use the snapshot from the initial attempt since it contains the original state of the node. ### Skip shard restoration @@ -147,7 +146,7 @@ Use these commands with caution. For best results, contact Support before runni ## Cluster status example -This example shows how the output of [`rladmin status`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/status" >}}) changes when you turn on maintenance mode for a node. +This example shows how the output of [`rladmin status`](/content/operate/rs/7.8/references/cli-utilities/rladmin/status.md) changes when you turn on maintenance mode for a node. The cluster status before turning on maintenance mode: @@ -184,7 +183,7 @@ Now node 2 has `0/0` shards because shards cannot migrate to it while it is in m ## Maintenance mode REST API -You can also turn maintenance mode on or off using [REST API requests]({{< relref "/operate/rs/7.8/references/rest-api" >}}) to [POST `/nodes/{node_uid}/actions/{action}`]({{< relref "/operate/rs/7.8/references/rest-api/requests/nodes/actions#post-node-action" >}}). +You can also turn maintenance mode on or off using [REST API requests](/content/operate/rs/7.8/references/rest-api/_index.md) to [POST `/nodes/{node_uid}/actions/{action}`](/content/operate/rs/7.8/references/rest-api/requests/nodes/actions.md#post-node-action). ### Activate maintenance mode (REST API) @@ -232,7 +231,7 @@ The `maintenance_off` request returns a JSON response body: ### Track action status -You can send a request to [GET `/nodes/{node_uid}/actions/{action}`]({{< relref "/operate/rs/7.8/references/rest-api/requests/nodes/actions#get-node-action" >}}) to track the [status]({{< relref "/operate/rs/7.8/references/rest-api/objects/action" >}}) of the `maintenance_on` and `maintenance_off` actions. +You can send a request to [GET `/nodes/{node_uid}/actions/{action}`](/content/operate/rs/7.8/references/rest-api/requests/nodes/actions.md#get-node-action) to track the [status](/content/operate/rs/7.8/references/rest-api/objects/action.md) of the `maintenance_on` and `maintenance_off` actions. This request returns the status of the `maintenance_on` action: diff --git a/content/operate/rs/7.8/clusters/new-cluster-setup.md b/content/operate/rs/7.8/clusters/new-cluster-setup.md index f5903887c8..c90ba5a7b9 100644 --- a/content/operate/rs/7.8/clusters/new-cluster-setup.md +++ b/content/operate/rs/7.8/clusters/new-cluster-setup.md @@ -13,24 +13,23 @@ url: '/operate/rs/7.8/clusters/new-cluster-setup/' A Redis Enterprise Software cluster typically consists of several nodes. For production deployments, we recommend an uneven number of nodes, with a minimum of three. -{{< note >}} -In a cluster that consists of only one node, some features and capabilities are not enabled, -such as database replication that provides high availability. -{{< /note >}} +> [!NOTE] +> In a cluster that consists of only one node, some features and capabilities are not enabled, +> such as database replication that provides high availability. -To set up a new cluster, you must first [install the Redis Enterprise Software package]({{< relref "/operate/rs/7.8/installing-upgrading" >}}) +To set up a new cluster, you must first [install the Redis Enterprise Software package](/content/operate/rs/7.8/installing-upgrading/_index.md) and then set up the cluster as described below. -After the cluster is created you can [add multiple nodes to the cluster]({{< relref "/operate/rs/7.8/clusters/add-node.md" >}}). +After the cluster is created you can [add multiple nodes to the cluster](/content/operate/rs/7.8/clusters/add-node.md). To create a cluster: 1. In a browser, go to `https://:8443`. For example, if you installed Redis Enterprise Software on a machine with IP address 10.0.1.34, go to . - {{< note >}} -- The management UI uses a [self-signed certificate for TLS encryption]({{< relref "/operate/rs/7.8/security/certificates/updating-certificates" >}}). -- If the machine has both an internal IP address and an external IP address, use the external IP address to access the setup UI. - {{< /note >}} + > [!NOTE] + > - The management UI uses a [self-signed certificate for TLS encryption](/content/operate/rs/7.8/security/certificates/updating-certificates.md). + > - If the machine has both an internal IP address and an external IP address, use the external IP address to access the setup UI. + > 1. Select **Create new cluster**. @@ -42,26 +41,26 @@ To create a cluster: 1. For **FQDN (Fully Qualified Domain Name)**, enter a unique name for the cluster. - See the [instructions for DNS setup]({{< relref "/operate/rs/7.8/networking/cluster-dns" >}}) + See the [instructions for DNS setup](/content/operate/rs/7.8/networking/cluster-dns.md) to make sure your cluster is reachable by name. - 1. Choose whether to [**Enable private & public endpoints support**]({{< relref "/operate/rs/7.8/networking/private-public-endpoints.md" >}}). + 1. Choose whether to [**Enable private & public endpoints support**](/content/operate/rs/7.8/networking/private-public-endpoints.md). - 1. Choose whether to [**Enable rack-zone awareness**]({{< relref "/operate/rs/7.8/clusters/configure/rack-zone-awareness.md" >}}). + 1. Choose whether to [**Enable rack-zone awareness**](/content/operate/rs/7.8/clusters/configure/rack-zone-awareness.md). 1. Click **Next**. 1. Configure storage and network settings: - 1. Enter a path for [*Ephemeral storage*]({{< relref "/operate/rs/7.8/installing-upgrading/install/plan-deployment/persistent-ephemeral-storage" >}}), or leave the default path. + 1. Enter a path for [*Ephemeral storage*](/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/persistent-ephemeral-storage.md), or leave the default path. - 1. Enter a path for [*Persistent storage*]({{< relref "/operate/rs/7.8/installing-upgrading/install/plan-deployment/persistent-ephemeral-storage" >}}), + 1. Enter a path for [*Persistent storage*](/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/persistent-ephemeral-storage.md), or leave the default path. - 1. To enable [*Auto Tiering*]({{< relref "/operate/rs/7.8/databases/auto-tiering/" >}}), + 1. To enable [*Auto Tiering*](/content/operate/rs/7.8/databases/auto-tiering/_index.md), select **Enable flash storage** and enter the path to the flash storage. - 1. If the cluster is configured to support [rack-zone awareness]({{< relref "/operate/rs/7.8/clusters/configure/rack-zone-awareness.md" >}}), set the **Rack-zone ID** for the new node. + 1. If the cluster is configured to support [rack-zone awareness](/content/operate/rs/7.8/clusters/configure/rack-zone-awareness.md), set the **Rack-zone ID** for the new node. 1. If your machine has multiple IP addresses, assign a single IPv4 type address for **Node-to-node communication (internal traffic)** and multiple IPv4/IPv6 type addresses for **External traffic**. @@ -74,5 +73,5 @@ After a short wait, your cluster is created and you can sign in to the Cluster M You can now access any of the management capabilities, including: -- [Creating a new database]({{< relref "/operate/rs/7.8/databases/create.md" >}}) -- [Joining a new node to a cluster]({{< relref "/operate/rs/7.8/clusters/add-node.md" >}}) +- [Creating a new database](/content/operate/rs/7.8/databases/create.md) +- [Joining a new node to a cluster](/content/operate/rs/7.8/clusters/add-node.md) diff --git a/content/operate/rs/7.8/clusters/optimize/disk-sizing-heavy-write-scenarios.md b/content/operate/rs/7.8/clusters/optimize/disk-sizing-heavy-write-scenarios.md index daf2d39519..68a9e9971b 100644 --- a/content/operate/rs/7.8/clusters/optimize/disk-sizing-heavy-write-scenarios.md +++ b/content/operate/rs/7.8/clusters/optimize/disk-sizing-heavy-write-scenarios.md @@ -37,5 +37,5 @@ disk space they would require in this scenario: For disk size requirements in standard usage scenarios, refer to the [Hardware -requirements]({{< relref "/operate/rs/7.8/installing-upgrading/install/plan-deployment/hardware-requirements.md" >}}) +requirements](/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/hardware-requirements.md) section. diff --git a/content/operate/rs/7.8/clusters/optimize/memtier-benchmark.md b/content/operate/rs/7.8/clusters/optimize/memtier-benchmark.md index 681f112036..02733ab4e4 100644 --- a/content/operate/rs/7.8/clusters/optimize/memtier-benchmark.md +++ b/content/operate/rs/7.8/clusters/optimize/memtier-benchmark.md @@ -20,7 +20,7 @@ Prerequisites: - A cluster configured - A database created -For help with the prerequisites, see the [Redis Enterprise Software quickstart]({{< relref "/operate/rs/7.8/installing-upgrading/quickstarts/redis-enterprise-software-quickstart" >}}). +For help with the prerequisites, see the [Redis Enterprise Software quickstart](/content/operate/rs/7.8/installing-upgrading/quickstarts/redis-enterprise-software-quickstart.md). It is recommended to run memtier_benchmark on a separate node that is not part of the cluster being tested. If you run it on a node of the diff --git a/content/operate/rs/7.8/clusters/optimize/optimization.md b/content/operate/rs/7.8/clusters/optimize/optimization.md index 94ea1aaf27..6b605817b3 100644 --- a/content/operate/rs/7.8/clusters/optimize/optimization.md +++ b/content/operate/rs/7.8/clusters/optimize/optimization.md @@ -36,7 +36,7 @@ configuration. ## Change failure detection sensitivity -To change the cluster's `failure_detection_sensitivity`, run one of the following [`rladmin`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/tune#tune-cluster" >}}) commands. +To change the cluster's `failure_detection_sensitivity`, run one of the following [`rladmin`](/content/operate/rs/7.8/references/cli-utilities/rladmin/tune.md#tune-cluster) commands. - For Redis Enterprise Software version 6.4.2-69 and later, run: diff --git a/content/operate/rs/7.8/clusters/optimize/oss-cluster-api.md b/content/operate/rs/7.8/clusters/optimize/oss-cluster-api.md index 633e35f4df..052179d00b 100644 --- a/content/operate/rs/7.8/clusters/optimize/oss-cluster-api.md +++ b/content/operate/rs/7.8/clusters/optimize/oss-cluster-api.md @@ -17,6 +17,6 @@ You can use the OSS Cluster API along with other Redis Enterprise Software high to get high performance with low latency and let applications stay current with cluster topology changes, including add node, remove node, and node failover. -For more about working with the OSS Cluster API in Redis Enterprise Software, see [Enable OSS Cluster API]({{< relref "/operate/rs/7.8/databases/configure/oss-cluster-api" >}}). +For more about working with the OSS Cluster API in Redis Enterprise Software, see [Enable OSS Cluster API](/content/operate/rs/7.8/databases/configure/oss-cluster-api.md). -To learn how to enable OSS Cluster API in Redis Cloud, see [Clustering Redis databases]({{< relref "/operate/rc/databases/configuration/clustering#cluster-api" >}}). +To learn how to enable OSS Cluster API in Redis Cloud, see [Clustering Redis databases](/content/operate/rc/databases/configuration/clustering.md#cluster-api). diff --git a/content/operate/rs/7.8/clusters/optimize/turn-off-services.md b/content/operate/rs/7.8/clusters/optimize/turn-off-services.md index b4c761fe76..a328639018 100644 --- a/content/operate/rs/7.8/clusters/optimize/turn-off-services.md +++ b/content/operate/rs/7.8/clusters/optimize/turn-off-services.md @@ -22,9 +22,9 @@ The services that you can turn off are: - RS Admin Console - `cm_server` - Logs in CSV format - `stats_archiver` -- [LDAP authentication]({{< relref "/operate/rs/7.8/security/access-control/ldap" >}}) - `saslauthd` -- [Discovery service]({{< relref "/operate/rs/7.8/networking/cluster-dns.md" >}})- `mdns_server`, `pdns_server` -- [Active-Active databases]({{< relref "/operate/rs/7.8/databases/active-active" >}}) - `crdb_coordinator`, `crdb_worker` +- [LDAP authentication](/content/operate/rs/7.8/security/access-control/ldap/_index.md) - `saslauthd` +- [Discovery service](/content/operate/rs/7.8/networking/cluster-dns.md)- `mdns_server`, `pdns_server` +- [Active-Active databases](/content/operate/rs/7.8/databases/active-active/_index.md) - `crdb_coordinator`, `crdb_worker` - Alert Manager - `alert_mgr` (For best results, disable only if you have an alternate alert system.) To turn off a service with the `rladmin cluster config` command, use the `services` parameter and the name of the service, followed by `disabled`. @@ -33,7 +33,7 @@ To turn off a service with the `rladmin cluster config` command, use the `servic [ services ] ``` -To turn off a service with the API, use the [`PUT /v1/services_configuration`]({{< relref "/operate/rs/7.8/references/rest-api/requests/cluster/services_configuration#put-cluster-services_config" >}}) endpoint +To turn off a service with the API, use the [`PUT /v1/services_configuration`](/content/operate/rs/7.8/references/rest-api/requests/cluster/services_configuration.md#put-cluster-services_config) endpoint with the name of the service and the operating mode (enabled/disabled) in JSON format. For example: diff --git a/content/operate/rs/7.8/clusters/optimize/wait.md b/content/operate/rs/7.8/clusters/optimize/wait.md index 813524fdf4..89c9e8c698 100644 --- a/content/operate/rs/7.8/clusters/optimize/wait.md +++ b/content/operate/rs/7.8/clusters/optimize/wait.md @@ -13,7 +13,7 @@ url: '/operate/rs/7.8/clusters/optimize/wait/' --- Redis Enterprise Software comes with the ability to replicate data to another replica for high availability and persist in-memory data on -disk permanently for durability. With the [`WAIT`]({{}}) command, you can +disk permanently for durability. With the [`WAIT`](/content/commands/wait.md) command, you can control the consistency and durability guarantees for the replicated and persisted database. @@ -36,7 +36,7 @@ acknowledged within the replica. These are steps 7 and 8. ## Blocking write operation on replication -With the [`WAIT`]({{}}) or [`WAITAOF`]({{}}) commands, applications can ask to wait for +With the [`WAIT`](/content/commands/wait.md) or [`WAITAOF`](/content/commands/waitaof.md) commands, applications can ask to wait for acknowledgments only after replication or persistence is confirmed on the replica. The flow of a write operation with `WAIT` or `WAITAOF` is: @@ -52,4 +52,4 @@ The application only gets the acknowledgment from the write after durability is The `WAIT` command always returns the number of replicas that acknowledged the write commands sent by the current client before the `WAIT` command, both in the case where the specified number of replicas are reached, or when the timeout is reached. In Redis Enterprise Software, the number of replicas is always 1 for databases with high availability enabled. -See the [`WAITAOF`]({{}}) command for details for enhanced data safety and durability capabilities introduced with Redis 7.2. +See the [`WAITAOF`](/content/commands/waitaof.md) command for details for enhanced data safety and durability capabilities introduced with Redis 7.2. diff --git a/content/operate/rs/7.8/clusters/remove-node.md b/content/operate/rs/7.8/clusters/remove-node.md index 0f4c1b5f6d..aee58e087b 100644 --- a/content/operate/rs/7.8/clusters/remove-node.md +++ b/content/operate/rs/7.8/clusters/remove-node.md @@ -16,12 +16,11 @@ You might want to remove a node from a Redis Enterprise cluster for one of the f - To [replace a faulty node](#replace-a-faulty-node) with a healthy node. - To [replace a healthy node](#replace-a-healthy-node) with a different node. -You can configure [email alerts from the cluster]({{< relref "/operate/rs/7.8/monitoring/v1_monitoring#cluster-alerts" >}}) to notify you of cluster changes, including when a node is removed. +You can configure [email alerts from the cluster](/content/operate/rs/7.8/monitoring/v1_monitoring.md#cluster-alerts) to notify you of cluster changes, including when a node is removed. -{{}} -Read through these explanations thoroughly before taking -any action. -{{}} +> [!WARNING] +> Read through these explanations thoroughly before taking +> any action. ## Permanently remove a node @@ -51,7 +50,7 @@ existence of a faulty node and automatically replaces the faulty node with the new node. For guidelines, refer to [Replacing a faulty -node]({{< relref "/operate/rs/7.8/clusters/replace-node.md" >}}). +node](/content/operate/rs/7.8/clusters/replace-node.md). ## Replace a healthy node @@ -60,15 +59,14 @@ must first add the new node to the cluster, migrate all the resources from the node you would like to remove, and only then remove the node. For further guidance, refer to [adding a new node to a -cluster]({{< relref "/operate/rs/7.8/clusters/add-node.md" >}}). +cluster](/content/operate/rs/7.8/clusters/add-node.md). You can migrate resources by using the `rladmin` command-line interface (CLI). For guidelines, refer to [`rladmin` command-line interface -(CLI)]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin" >}}). +(CLI)](/content/operate/rs/7.8/references/cli-utilities/rladmin/_index.md). -{{< note >}} -The [DNS records]({{< relref "/operate/rs/7.8/networking/cluster-dns" >}}) must be updated each time a node is added or replaced. -{{< /note >}} +> [!NOTE] +> The [DNS records](/content/operate/rs/7.8/networking/cluster-dns.md) must be updated each time a node is added or replaced. ## Remove a node @@ -90,15 +88,15 @@ To remove a node using the Cluster Manager UI: Redis Enterprise Software examines the node and the cluster, then takes the actions required to remove the node, such as migrating shards to other nodes. After the process finishes, the node is no longer shown in the UI. - {{}} -At any point, you can click the **Cancel removal** button to stop the process. When cancelled, the current internal action is completed, and then the process stops. - {{}} + > [!NOTE] + > At any point, you can click the **Cancel removal** button to stop the process. When cancelled, the current internal action is completed, and then the process stops. + > -To remove a node using the REST API, use [`POST /v1/nodes//actions/remove`]({{< relref "/operate/rs/7.8/references/rest-api/requests/nodes/actions#post-node-action" >}}). +To remove a node using the REST API, use [`POST /v1/nodes//actions/remove`](/content/operate/rs/7.8/references/rest-api/requests/nodes/actions.md#post-node-action). By default, the remove node action completes after all resources migrate off the removed node. Node removal does not wait for migrated shards' persistence files to be created on the new nodes. -To change node removal to wait for the creation of new persistence files for all migrated shards, set `wait_for_persistence` to `true` in the request body or [update the cluster policy]({{}}) `persistent_node_removal` to `true` to change the cluster's default behavior. +To change node removal to wait for the creation of new persistence files for all migrated shards, set `wait_for_persistence` to `true` in the request body or [update the cluster policy](/content/operate/rs/7.8/references/rest-api/requests/cluster/policy.md#put-cluster-policy) `persistent_node_removal` to `true` to change the cluster's default behavior. For example: @@ -109,8 +107,7 @@ POST https://:9443/v1/nodes//actions/remove } ``` -{{< note >}} -If you need to add a removed node back to the cluster, -you must [uninstall]({{< relref "/operate/rs/7.8/installing-upgrading/uninstalling.md" >}}) -and [reinstall]({{< relref "/operate/rs/7.8/installing-upgrading" >}}) the software on that node. -{{< /note >}} +> [!NOTE] +> If you need to add a removed node back to the cluster, +> you must [uninstall](/content/operate/rs/7.8/installing-upgrading/uninstalling.md) +> and [reinstall](/content/operate/rs/7.8/installing-upgrading/_index.md) the software on that node. diff --git a/content/operate/rs/7.8/clusters/replace-node.md b/content/operate/rs/7.8/clusters/replace-node.md index cc3160aee7..9056c6495b 100644 --- a/content/operate/rs/7.8/clusters/replace-node.md +++ b/content/operate/rs/7.8/clusters/replace-node.md @@ -17,13 +17,13 @@ To replace a failed node: 1. Prepare a new node identical to the old one. 1. Install and - configure Redis Enterprise Software on the node. See [Install and setup]({{< relref "/operate/rs/7.8/installing-upgrading" >}}) for more information. + configure Redis Enterprise Software on the node. See [Install and setup](/content/operate/rs/7.8/installing-upgrading/_index.md) for more information. - {{< note >}} -If you are using [Auto Tiering]({{< relref "/operate/rs/7.8/databases/auto-tiering/" >}}), make sure the required flash storage is set up on this new node. - {{< /note >}} + > [!NOTE] + > If you are using [Auto Tiering](/content/operate/rs/7.8/databases/auto-tiering/_index.md), make sure the required flash storage is set up on this new node. + > -1. [Add the node]({{< relref "/operate/rs/7.8/clusters/add-node" >}}) to the cluster. Make sure the new node has as much available memory as the faulty +1. [Add the node](/content/operate/rs/7.8/clusters/add-node.md) to the cluster. Make sure the new node has as much available memory as the faulty node. If the new node does not have enough memory, you will be prompted to add a node with enough memory. @@ -31,8 +31,8 @@ If you are using [Auto Tiering]({{< relref "/operate/rs/7.8/databases/auto-tieri 1. A message will appear informing you that the cluster has a faulty node and that the new node will replace the faulty node. - {{< note >}} -- If there is a faulty node in the cluster to which you are adding a node, Redis Enterprise Software will use the new node to replace the faulty one. -- Any existing [DNS records]({{< relref "/operate/rs/7.8/networking/cluster-dns" >}}) must be updated -each time a node is added or replaced. - {{< /note >}} + > [!NOTE] + > - If there is a faulty node in the cluster to which you are adding a node, Redis Enterprise Software will use the new node to replace the faulty one. + > - Any existing [DNS records](/content/operate/rs/7.8/networking/cluster-dns.md) must be updated + > each time a node is added or replaced. + > diff --git a/content/operate/rs/7.8/databases/_index.md b/content/operate/rs/7.8/databases/_index.md index 241291dc80..829d1ce295 100644 --- a/content/operate/rs/7.8/databases/_index.md +++ b/content/operate/rs/7.8/databases/_index.md @@ -16,7 +16,7 @@ url: '/operate/rs/7.8/databases/' You can manage your Redis Enterprise Software databases with several different tools: - Cluster Manager UI (the web-based user interface) -- Command-line tools ([`rladmin`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin" >}}), [`redis-cli`]({{< relref "/develop/tools/cli" >}}), [`crdb-cli`]({{< relref "/operate/rs/7.8/references/cli-utilities/crdb-cli" >}})) -- [REST API]({{< relref "/operate/rs/7.8/references/rest-api/_index.md" >}}) +- Command-line tools ([`rladmin`](/content/operate/rs/7.8/references/cli-utilities/rladmin/_index.md), [`redis-cli`](/content/develop/tools/cli.md), [`crdb-cli`](/content/operate/rs/7.8/references/cli-utilities/crdb-cli/_index.md)) +- [REST API](/content/operate/rs/7.8/references/rest-api/_index.md) diff --git a/content/operate/rs/7.8/databases/active-active/_index.md b/content/operate/rs/7.8/databases/active-active/_index.md index b91d4b491c..1311f7e103 100644 --- a/content/operate/rs/7.8/databases/active-active/_index.md +++ b/content/operate/rs/7.8/databases/active-active/_index.md @@ -22,9 +22,9 @@ Active-Active databases also provide disaster recovery and accelerated data read ## High availability -The [high availability]({{< relref "/operate/rs/7.8/databases/durability-ha/" >}}) that Active-Active replication provides is built upon a number of Redis Enterprise Software features (such as [clustering]({{< relref "/operate/rs/7.8/databases/durability-ha/clustering.md" >}}), [replication]({{< relref "/operate/rs/7.8/databases/durability-ha/replication.md" >}}), and [replica HA]({{< relref "/operate/rs/7.8/databases/configure/replica-ha.md" >}})) as well as some features unique to Active-Active ([multi-primary replication]({{}}), [automatic conflict resolution]({{}}), and [strong eventual consistency]({{}})). +The [high availability](/content/operate/rs/7.8/databases/durability-ha/_index.md) that Active-Active replication provides is built upon a number of Redis Enterprise Software features (such as [clustering](/content/operate/rs/7.8/databases/durability-ha/clustering.md), [replication](/content/operate/rs/7.8/databases/durability-ha/replication.md), and [replica HA](/content/operate/rs/7.8/databases/configure/replica-ha.md)) as well as some features unique to Active-Active ([multi-primary replication](#multi-primary-replication/), [automatic conflict resolution](#conflict-resolution/), and [strong eventual consistency](#strong-eventual-consistency/)). -Clustering and replication are used together in Active-Active databases to distribute multiple copies of the dataset across multiple nodes and multiple clusters. As a result, a node or cluster is less likely to become a single point of failure. If a primary node or primary shard fails, a replica is automatically promoted to primary. To avoid having one node hold all copies of certain data, the [replica HA]({{< relref "/operate/rs/7.8/databases/configure/replica-ha.md" >}}) feature (enabled by default) automatically migrates replica shards to available nodes. +Clustering and replication are used together in Active-Active databases to distribute multiple copies of the dataset across multiple nodes and multiple clusters. As a result, a node or cluster is less likely to become a single point of failure. If a primary node or primary shard fails, a replica is automatically promoted to primary. To avoid having one node hold all copies of certain data, the [replica HA](/content/operate/rs/7.8/databases/configure/replica-ha.md) feature (enabled by default) automatically migrates replica shards to available nodes. ## Multi-primary replication @@ -32,32 +32,31 @@ In Redis Enterprise Software, replication copies data from primary shards to rep Each participating cluster hosts an instance of your database, and each instance has its own primary node. Having multiple primary nodes means you can connect to the proxy in any of your participating clusters. Connecting to the closest cluster geographically enables near-local latency. Multi-primary replication (previously referred to as multi-master replication) also means that your users still have access to the database if one of the participating clusters fails. -{{< note >}} -Active-Active databases do not replicate the entire database, only the data. -Database configurations, LUA scripts, and other support info are not replicated. -{{< /note >}} +> [!NOTE] +> Active-Active databases do not replicate the entire database, only the data. +> Database configurations, LUA scripts, and other support info are not replicated. ## Syncer -Keeping multiple copies of the dataset consistent across multiple clusters is no small task. To achieve consistency between participating clusters, Redis Active-Active replication uses a process called the [syncer]({{< relref "/operate/rs/7.8/databases/active-active/syncer" >}}). +Keeping multiple copies of the dataset consistent across multiple clusters is no small task. To achieve consistency between participating clusters, Redis Active-Active replication uses a process called the [syncer](/content/operate/rs/7.8/databases/active-active/syncer.md). -The syncer keeps a [replication backlog]({{< relref "/operate/rs/7.8/databases/active-active/manage#replication-backlog/" >}}), which stores changes to the dataset that the syncer sends to other participating clusters. The syncer uses partial syncs to keep replicas up to date with changes, or a full sync in the event a replica or primary is lost. +The syncer keeps a [replication backlog](/content/operate/rs/7.8/databases/active-active/manage.md#replication-backlog/), which stores changes to the dataset that the syncer sends to other participating clusters. The syncer uses partial syncs to keep replicas up to date with changes, or a full sync in the event a replica or primary is lost. ## Conflict resolution Because you can connect to any participating cluster to perform a write operation, concurrent and conflicting writes are always possible. Conflict resolution is an important part of the Active-Active technology. Active-Active databases only use [conflict-free replicated data types (CRDTs)](https://en.wikipedia.org/wiki/Conflict-free_replicated_data_type). These data types provide a predictable conflict resolution and don't require any additional work from the application or client side. -When developing with CRDTs for Active-Active databases, you need to consider some important differences. See [Develop applications with Active-Active databases]({{< relref "/operate/rs/7.8/databases/active-active/develop/_index.md" >}}) for related information. +When developing with CRDTs for Active-Active databases, you need to consider some important differences. See [Develop applications with Active-Active databases](/content/operate/rs/7.8/databases/active-active/develop/_index.md) for related information. ## Strong eventual consistency Maintaining strong consistency for replicated databases comes with tradeoffs in scalability and availability. Redis Active-Active databases use a strong eventual consistency model, which means that local values may differ across replicas for short periods of time, but they all eventually converge to one consistent state. Redis uses vector clocks and the CRDT conflict resolution to strengthen consistency between replicas. You can also enable the causal consistency feature to preserve the order of operations as they are synchronized among replicas. -Other Redis Enterprise Software features can also be used to enhance the performance, scalability, or durability of your Active-Active database. These include [data persistence]({{< relref "/operate/rs/7.8/databases/configure/database-persistence.md" >}}), [multiple active proxies]({{< relref "/operate/rs/7.8/databases/configure/proxy-policy.md" >}}), [distributed synchronization]({{< relref "/operate/rs/7.8/databases/active-active/synchronization-mode.md" >}}), [OSS Cluster API]({{< relref "/operate/rs/7.8/databases/configure/oss-cluster-api.md" >}}), and [rack-zone awareness]({{< relref "/operate/rs/7.8/clusters/configure/rack-zone-awareness.md" >}}). +Other Redis Enterprise Software features can also be used to enhance the performance, scalability, or durability of your Active-Active database. These include [data persistence](/content/operate/rs/7.8/databases/configure/database-persistence.md), [multiple active proxies](/content/operate/rs/7.8/databases/configure/proxy-policy.md), [distributed synchronization](/content/operate/rs/7.8/databases/active-active/synchronization-mode.md), [OSS Cluster API](/content/operate/rs/7.8/databases/configure/oss-cluster-api.md), and [rack-zone awareness](/content/operate/rs/7.8/clusters/configure/rack-zone-awareness.md). ## Next steps -- [Plan your Active-Active deployment]({{< relref "/operate/rs/7.8/databases/active-active/planning.md" >}}) -- [Get started with Active-Active]({{< relref "/operate/rs/7.8/databases/active-active/get-started.md" >}}) -- [Create an Active-Active database]({{< relref "/operate/rs/7.8/databases/active-active/create.md" >}}) +- [Plan your Active-Active deployment](/content/operate/rs/7.8/databases/active-active/planning.md) +- [Get started with Active-Active](/content/operate/rs/7.8/databases/active-active/get-started.md) +- [Create an Active-Active database](/content/operate/rs/7.8/databases/active-active/create.md) diff --git a/content/operate/rs/7.8/databases/active-active/connect.md b/content/operate/rs/7.8/databases/active-active/connect.md index 4afc7c1285..4bff25a1cf 100644 --- a/content/operate/rs/7.8/databases/active-active/connect.md +++ b/content/operate/rs/7.8/databases/active-active/connect.md @@ -66,12 +66,11 @@ redis-cli is a simple command-line tool to interact with redis database. A simple python application running on the host machine can also connect to the database. -{{< note >}} -Before you continue, you must have python and -[redis-py](https://github.com/andymccurdy/redis-py#installation) -(python library for connecting to Redis) configured on the host machine -running the container. -{{< /note >}} +> [!NOTE] +> Before you continue, you must have python and +> [redis-py](https://github.com/andymccurdy/redis-py#installation) +> (python library for connecting to Redis) configured on the host machine +> running the container. 1. In the command-line terminal, create a new file called "redis_test.py" diff --git a/content/operate/rs/7.8/databases/active-active/create.md b/content/operate/rs/7.8/databases/active-active/create.md index c9e6212028..875b9a5478 100644 --- a/content/operate/rs/7.8/databases/active-active/create.md +++ b/content/operate/rs/7.8/databases/active-active/create.md @@ -11,11 +11,11 @@ linkTitle: Create weight: 25 url: '/operate/rs/7.8/databases/active-active/create/' --- -[Active-Active geo-replicated databases]({{< relref "/operate/rs/7.8/databases/active-active" >}}) (formerly known as CRDBs) give applications write access +[Active-Active geo-replicated databases](/content/operate/rs/7.8/databases/active-active/_index.md) (formerly known as CRDBs) give applications write access to replicas of the dataset in different geographical locations. The participating Redis Enterprise Software clusters that host the instances can be distributed in different geographic locations. -Every instance of an Active-Active database can receive write operations, and all operations are [synchronized]({{< relref "/operate/rs/7.8/databases/active-active/develop#example-of-synchronization" >}}) to all instances without conflict. +Every instance of an Active-Active database can receive write operations, and all operations are [synchronized](/content/operate/rs/7.8/databases/active-active/develop/_index.md#example-of-synchronization) to all instances without conflict. ## Steps to create an Active-Active database @@ -30,7 +30,7 @@ Every instance of an Active-Active database can receive write operations, and al - Two or more machines with the same version of Redis Enterprise Software installed - Network connectivity and cluster FQDN name resolution between all participating clusters -- [Network time service]({{< relref "/operate/rs/7.8/databases/active-active#network-time-service-ntp-or-chrony" >}}) listener (ntpd) configured and running on each node in all clusters +- [Network time service](/content/operate/rs/7.8/databases/active-active/_index.md#network-time-service-ntp-or-chrony) listener (ntpd) configured and running on each node in all clusters ## Create an Active-Active database @@ -87,15 +87,15 @@ Every instance of an Active-Active database can receive write operations, and al {{Add cluster panel.}} - {{}} -If an Active-Active database [runs on flash memory]({{}}), you cannot add participating clusters that run on RAM only. - {{}} + > [!NOTE] + > If an Active-Active database [runs on flash memory](/content/operate/rs/7.8/databases/auto-tiering/_index.md), you cannot add participating clusters that run on RAM only. + > 1. Click **Join cluster** to add the cluster to the list of participating clusters. 1. Enter a **Database name**. -1. If your cluster supports [Auto Tiering]({{< relref "/operate/rs/7.8/databases/auto-tiering/" >}}), in **Runs on** you can select **Flash** so that your database uses Flash memory. We recommend that you use AOF every 1 sec for the best performance during the initial Active-Active database sync of a new replica. +1. If your cluster supports [Auto Tiering](/content/operate/rs/7.8/databases/auto-tiering/_index.md), in **Runs on** you can select **Flash** so that your database uses Flash memory. We recommend that you use AOF every 1 sec for the best performance during the initial Active-Active database sync of a new replica. 1. To configure additional database settings, expand each relevant section to make changes. @@ -119,29 +119,29 @@ If an Active-Active database [runs on flash memory]({{}} -You cannot change the [port number]({{< relref "/operate/rs/7.8/networking/port-configurations.md" >}}) -after the database is created. - {{< /note >}} + > [!NOTE] + > You cannot change the [port number](/content/operate/rs/7.8/networking/port-configurations.md) + > after the database is created. + > -- **Memory limit** - [Database memory limits]({{< relref "/operate/rs/7.8/databases/memory-performance/memory-limit.md" >}}) include all database replicas and shards, including replica shards in database replication and database shards in database clustering. +- **Memory limit** - [Database memory limits](/content/operate/rs/7.8/databases/memory-performance/memory-limit.md) include all database replicas and shards, including replica shards in database replication and database shards in database clustering. If the total size of the database in the cluster reaches the memory limit, the data eviction policy for the database is enforced. - {{< note >}} -If you create a database with Auto Tiering enabled, you also need to set the RAM-to-Flash ratio -for this database. Minimum RAM is 10%. Maximum RAM is 50%. - {{< /note >}} + > [!NOTE] + > If you create a database with Auto Tiering enabled, you also need to set the RAM-to-Flash ratio + > for this database. Minimum RAM is 10%. Maximum RAM is 50%. + > -- **Memory eviction** - The default [eviction policy]({{}}) for Active-Active databases is `noeviction`. Redis Enterprise versions 6.0.20 and later support all eviction policies for Active-Active databases, unless [Auto Tiering]({{}}) is enabled. +- **Memory eviction** - The default [eviction policy](/content/operate/rs/7.8/databases/memory-performance/eviction-policy.md) for Active-Active databases is `noeviction`. Redis Enterprise versions 6.0.20 and later support all eviction policies for Active-Active databases, unless [Auto Tiering](/content/operate/rs/7.8/databases/auto-tiering/_index.md) is enabled. -- [**Capabilities**]({{< relref "/operate/oss_and_stack/stack-with-enterprise" >}}) (previously **Modules**) - When you create a new in-memory database, you can enable multiple Redis Stack capabilities in the database. For Auto Tiering databases, you can enable capabilities that support Auto Tiering. See [Redis Enterprise and Redis Stack feature compatibility -]({{< relref "/operate/oss_and_stack/stack-with-enterprise/enterprise-capabilities" >}}) for compatibility details. +- [**Capabilities**](/content/operate/oss_and_stack/stack-with-enterprise/_index.md) (previously **Modules**) - When you create a new in-memory database, you can enable multiple Redis Stack capabilities in the database. For Auto Tiering databases, you can enable capabilities that support Auto Tiering. See [Redis Enterprise and Redis Stack feature compatibility +](/content/operate/oss_and_stack/stack-with-enterprise/enterprise-capabilities.md) for compatibility details. - {{}} -To use Redis Stack capabilities, enable them when you create a new database. -You cannot enable them after database creation. - {{}} + > [!NOTE] + > To use Redis Stack capabilities, enable them when you create a new database. + > You cannot enable them after database creation. + > To add capabilities to the database: @@ -159,27 +159,27 @@ After you create the Active-Active database, you can set the TLS mode to **Requi ### High availability -- [**Replication**]({{< relref "/operate/rs/7.8/databases/durability-ha/replication" >}}) - We recommend that all Active-Active database use replication for best intercluster synchronization performance. +- [**Replication**](/content/operate/rs/7.8/databases/durability-ha/replication.md) - We recommend that all Active-Active database use replication for best intercluster synchronization performance. When replication is enabled, every Active-Active database master shard is replicated to a corresponding replica shard. The replica shards are then used to synchronize data between the instances, and the master shards are dedicated to handling client requests. -- [**Replica high availability**]({{< relref "/operate/rs/7.8/databases/configure/replica-ha" >}}) - We also recommend that you enable replica high availability to ensure replica shards are highly-available for this synchronization. +- [**Replica high availability**](/content/operate/rs/7.8/databases/configure/replica-ha.md) - We also recommend that you enable replica high availability to ensure replica shards are highly-available for this synchronization. ### Clustering -- In the [**Clustering**]({{}}) section, you can either: +- In the [**Clustering**](/content/operate/rs/7.8/databases/durability-ha/clustering.md) section, you can either: - - **Enable sharding** and select the number of shards you want to have in the database. When database clustering is enabled, databases have limitations for [multi-key operations]({{}}). + - **Enable sharding** and select the number of shards you want to have in the database. When database clustering is enabled, databases have limitations for [multi-key operations](/content/operate/rs/7.8/databases/durability-ha/clustering.md#multikey-operations). You can increase the number of shards in the database at any time. - - Clear the **Enable sharding** option to use only one shard, which allows you to use [multi-key operations]({{}}) without the limitations. + - Clear the **Enable sharding** option to use only one shard, which allows you to use [multi-key operations](/content/operate/rs/7.8/databases/durability-ha/clustering.md#multikey-operations) without the limitations. - {{}} -You cannot enable or turn off database clustering after the Active-Active database is created. - {{}} + > [!NOTE] + > You cannot enable or turn off database clustering after the Active-Active database is created. + > -- [**OSS Cluster API**]({{< relref "/operate/rs/7.8/databases/configure/oss-cluster-api.md" >}}) - The OSS Cluster API configuration allows access to multiple endpoints for increased throughput. The OSS Cluster API setting applies to all instances of the Active-Active database across participating clusters. +- [**OSS Cluster API**](/content/operate/rs/7.8/databases/configure/oss-cluster-api.md) - The OSS Cluster API configuration allows access to multiple endpoints for increased throughput. The OSS Cluster API setting applies to all instances of the Active-Active database across participating clusters. This configuration requires clients to connect to the primary node to retrieve the cluster topology before they can connect directly to proxies on each node. @@ -187,7 +187,7 @@ You cannot enable or turn off database clustering after the Active-Active databa ### Durability -To protect against loss of data stored in RAM, you can enable [**Persistence**]({{}}) to store a copy of the data on disk. +To protect against loss of data stored in RAM, you can enable [**Persistence**](/content/operate/rs/7.8/databases/configure/database-persistence.md) to store a copy of the data on disk. Active-Active databases support append-only file (AOF) persistence only. Snapshot persistence is not supported for Active-Active databases. @@ -195,13 +195,13 @@ Active-Active databases support append-only file (AOF) persistence only. Snapsho - **Unauthenticated access** - You can access the database as the default user without providing credentials. -- **Password-only authentication** - When you configure a password for your database's default user, all connections to the database must authenticate with the [AUTH command]({{< relref "/commands/auth" >}}). +- **Password-only authentication** - When you configure a password for your database's default user, all connections to the database must authenticate with the [AUTH command](/content/commands/auth.md). If you also configure an access control list, connections can specify other users for authentication, and requests are allowed according to the Redis ACLs specified for that user. Creating a database without ACLs enables a *default* user with full access to the database. You can secure default user access by requiring a password. -- **Access Control List** - You can specify the [user roles]({{< relref "/operate/rs/7.8/security/access-control/create-db-roles" >}}) that have access to the database and the [Redis ACLs]({{< relref "/operate/rs/7.8/security/access-control/redis-acl-overview" >}}) that apply to those connections. +- **Access Control List** - You can specify the [user roles](/content/operate/rs/7.8/security/access-control/create-db-roles.md) that have access to the database and the [Redis ACLs](/content/operate/rs/7.8/security/access-control/redis-acl-overview.md) that apply to those connections. You can only configure access control after the Active-Active database is created. In each participating cluster, add ACLs after database creation. @@ -209,19 +209,19 @@ Active-Active databases support append-only file (AOF) persistence only. Snapsho 1. In **Security > Access Control > Access Control List**, select **+ Add ACL**. - 1. Select a [role]({{< relref "/operate/rs/7.8/security/access-control/create-db-roles" >}}) to grant database access. + 1. Select a [role](/content/operate/rs/7.8/security/access-control/create-db-roles.md) to grant database access. - 1. Associate a [Redis ACL]({{< relref "/operate/rs/7.8/security/access-control/create-db-roles" >}}) with the role and database. + 1. Associate a [Redis ACL](/content/operate/rs/7.8/security/access-control/create-db-roles.md) with the role and database. 1. Select the check mark to add the ACL. ### Causal consistency -[**Causal consistency**]({{< relref "/operate/rs/7.8/databases/active-active/causal-consistency" >}}) in an Active-Active database guarantees that the order of operations on a specific key is maintained across all instances of an Active-Active database. +[**Causal consistency**](/content/operate/rs/7.8/databases/active-active/causal-consistency.md) in an Active-Active database guarantees that the order of operations on a specific key is maintained across all instances of an Active-Active database. To enable causal consistency for an existing Active-Active database, use the REST API. ## Test Active-Active database connections -With the Redis database created, you are ready to connect to your database. See [Connect to Active-Active databases]({{< relref "/operate/rs/7.8/databases/active-active/connect.md" >}}) for tutorials and examples of multiple connection methods. +With the Redis database created, you are ready to connect to your database. See [Connect to Active-Active databases](/content/operate/rs/7.8/databases/active-active/connect.md) for tutorials and examples of multiple connection methods. diff --git a/content/operate/rs/7.8/databases/active-active/delete.md b/content/operate/rs/7.8/databases/active-active/delete.md index 3daaac6e4b..3d27258e7d 100644 --- a/content/operate/rs/7.8/databases/active-active/delete.md +++ b/content/operate/rs/7.8/databases/active-active/delete.md @@ -14,9 +14,8 @@ url: '/operate/rs/7.8/databases/active-active/delete/' When you delete an Active-Active database (formerly known as CRDB), all instances of the Active-Active database are deleted from all participating clusters. -{{% warning %}} -This action is immediate, non-reversible, and has no rollback. -{{% /warning %}} +> [!WARNING] +> This action is immediate, non-reversible, and has no rollback. Because Active-Active databases are made up of instances on multiple participating clusters, to restore a deleted Active-Active database you must create the database again with all of its instances @@ -25,5 +24,5 @@ and then restore the data to the database from backup. We recommended that you: - Back up your data and test the restore on another database before you delete an Active-Active database. -- Consider [flushing the data]({{< relref "/operate/rs/7.8/databases/import-export/flush.md" >}}) from the database +- Consider [flushing the data](/content/operate/rs/7.8/databases/import-export/flush.md) from the database so that you can keep the Active-Active database configuration and restore the data to it if necessary. diff --git a/content/operate/rs/7.8/databases/active-active/develop/_index.md b/content/operate/rs/7.8/databases/active-active/develop/_index.md index 68c8ebc9c0..459aa8f016 100644 --- a/content/operate/rs/7.8/databases/active-active/develop/_index.md +++ b/content/operate/rs/7.8/databases/active-active/develop/_index.md @@ -65,4 +65,4 @@ in between. [Learn more about synchronization for -each supported data type]({{< relref "/operate/rs/7.8/databases/active-active/develop/data-types/" >}}) and [how to develop applications]({{< relref "/operate/rs/7.8/databases/active-active/develop/develop-for-aa.md" >}}) with them on Redis Enterprise Software. +each supported data type](/content/operate/rs/7.8/databases/active-active/develop/data-types/_index.md) and [how to develop applications](/content/operate/rs/7.8/databases/active-active/develop/develop-for-aa.md) with them on Redis Enterprise Software. diff --git a/content/operate/rs/7.8/databases/active-active/develop/app-failover-active-active.md b/content/operate/rs/7.8/databases/active-active/develop/app-failover-active-active.md index 10e9a0b7e7..8f121370fd 100644 --- a/content/operate/rs/7.8/databases/active-active/develop/app-failover-active-active.md +++ b/content/operate/rs/7.8/databases/active-active/develop/app-failover-active-active.md @@ -39,9 +39,8 @@ Replication failures are more difficult to detect reliably without causing false The most reliable method for health-checking replication is by using the Redis publish/subscribe (pub/sub) mechanism. -{{< note >}} -Note that this document does not suggest that Redis pub/sub is reliable in the common sense. Messages can get lost in certain conditions, but that is acceptable in this case because typically the application determines that replication is down only after not being able to deliver a number of messages over a period of time. -{{< /note >}} +> [!NOTE] +> Note that this document does not suggest that Redis pub/sub is reliable in the common sense. Messages can get lost in certain conditions, but that is acceptable in this case because typically the application determines that replication is down only after not being able to deliver a number of messages over a period of time. When you use the pub/sub data type to detect failures, the application: diff --git a/content/operate/rs/7.8/databases/active-active/develop/data-types/hyperloglog.md b/content/operate/rs/7.8/databases/active-active/develop/data-types/hyperloglog.md index 728004cec6..c6235f7510 100644 --- a/content/operate/rs/7.8/databases/active-active/develop/data-types/hyperloglog.md +++ b/content/operate/rs/7.8/databases/active-active/develop/data-types/hyperloglog.md @@ -19,7 +19,7 @@ Because it estimates the cardinality by probability, the HyperLogLog algorithm c ## HyperLogLog in Redis Redis Open Source implements [HyperLogLog](https://redislabs.com/redis-best-practices/counting/hyperloglog/) (HLL) as a native data structure. -It supports adding elements ([PFADD]({{< relref "/commands/pfadd" >}}) to an HLL, counting elements ([PFCOUNT]({{< relref "/commands/pfcount" >}}) of HLLs, and merging of ([PFMERGE]({{< relref "/commands/pfmerge" >}}) HLLs. +It supports adding elements ([PFADD](/content/commands/pfadd.md) to an HLL, counting elements ([PFCOUNT](/content/commands/pfcount.md) of HLLs, and merging of ([PFMERGE](/content/commands/pfmerge.md) HLLs. Here is an example of a simple write case: diff --git a/content/operate/rs/7.8/databases/active-active/develop/data-types/json.md b/content/operate/rs/7.8/databases/active-active/develop/data-types/json.md index 7d6c6a7f57..ec8f9da459 100644 --- a/content/operate/rs/7.8/databases/active-active/develop/data-types/json.md +++ b/content/operate/rs/7.8/databases/active-active/develop/data-types/json.md @@ -20,9 +20,9 @@ The design is based on [A Conflict-Free Replicated JSON Datatype](https://arxiv. To use JSON in an Active-Active database, you must enable JSON during database creation. -Active-Active Redis Cloud databases add JSON by default. See [Create an Active-Active subscription]({{< relref "/operate/rc/databases/active-active/create-active-active-database#select-capabilities" >}}) in the Redis Cloud documentation for details. +Active-Active Redis Cloud databases add JSON by default. See [Create an Active-Active subscription](/content/operate/rc/databases/active-active/create-active-active-database.md#select-capabilities) in the Redis Cloud documentation for details. -In Redis Enterprise Software, JSON is not enabled by default for Active-Active databases. See [Create an Active-Active JSON database]({{< relref "/operate/oss_and_stack/stack-with-enterprise/json/active-active#create-an-active-active-json-database" >}}) in the Redis Stack and Redis Enterprise documentation for instructions. +In Redis Enterprise Software, JSON is not enabled by default for Active-Active databases. See [Create an Active-Active JSON database](/content/operate/oss_and_stack/stack-with-enterprise/json/active-active.md#create-an-active-active-json-database) in the Redis Stack and Redis Enterprise documentation for instructions. {{}} diff --git a/content/operate/rs/7.8/databases/active-active/develop/data-types/sorted-sets.md b/content/operate/rs/7.8/databases/active-active/develop/data-types/sorted-sets.md index ef8f8e2ad0..be5559119a 100644 --- a/content/operate/rs/7.8/databases/active-active/develop/data-types/sorted-sets.md +++ b/content/operate/rs/7.8/databases/active-active/develop/data-types/sorted-sets.md @@ -11,9 +11,8 @@ linkTitle: Sorted sets weight: $weight url: '/operate/rs/7.8/databases/active-active/develop/data-types/sorted-sets/' --- -{{< note >}} -[Redis Geospatial (Geo)]({{< relref "/commands/GEOADD" >}}) is based on Sorted Sets, so the same Active-Active database development instructions apply to Geo. -{{< /note >}} +> [!NOTE] +> [Redis Geospatial (Geo)](/content/commands/geoadd.md) is based on Sorted Sets, so the same Active-Active database development instructions apply to Geo. Similar to Redis Sets, Redis Sorted Sets are non-repeating collections of Strings. The difference between the two is that every member of a diff --git a/content/operate/rs/7.8/databases/active-active/develop/data-types/streams.md b/content/operate/rs/7.8/databases/active-active/develop/data-types/streams.md index 8ed98941cc..b78af81dcf 100644 --- a/content/operate/rs/7.8/databases/active-active/develop/data-types/streams.md +++ b/content/operate/rs/7.8/databases/active-active/develop/data-types/streams.md @@ -11,7 +11,7 @@ linkTitle: Streams weight: $weight url: '/operate/rs/7.8/databases/active-active/develop/data-types/streams/' --- -A [Redis Stream]({{< relref "/develop/data-types/streams" >}}) is a data structure that acts like an append-only log. +A [Redis Stream](/content/develop/data-types/streams/_index.md) is a data structure that acts like an append-only log. Each stream entry consists of: - A unique, monotonically increasing ID @@ -64,11 +64,10 @@ In the example below, we write to a stream concurrently from two regions. Notice Notice also that the synchronized streams contain no duplicate IDs. As long as you allow the database to generate your stream IDs, you'll never have more than one stream entry with the same ID. -{{< note >}} -Redis Open Source uses one radix tree (referred to as `rax` in the code base) to implement each stream. However, Active-Active databases implement a single logical stream using one `rax` per region. -Each region adds entries only to its associated `rax` (but can remove entries from all `rax` trees). -This means that XREAD and XREADGROUP iterate simultaneously over all `rax` trees and return the appropriate entry by comparing the entry IDs from each `rax`. -{{< /note >}} +> [!NOTE] +> Redis Open Source uses one radix tree (referred to as `rax` in the code base) to implement each stream. However, Active-Active databases implement a single logical stream using one `rax` per region. +> Each region adds entries only to its associated `rax` (but can remove entries from all `rax` trees). +> This means that XREAD and XREADGROUP iterate simultaneously over all `rax` trees and return the appropriate entry by comparing the entry IDs from each `rax`. ### Conflict resolution @@ -146,9 +145,8 @@ Because Active-Active databases replicate asynchronously, providing your own IDs In this scenario, two entries with the ID `100-1` are added at _t1_. After syncing, the stream `x` contains two entries with the same ID. -{{< note >}} -Stream IDs in Redis Open Source consist of two integers separated by a dash ('-'). When the server generates the ID, the first integer is the current time in milliseconds, and the second integer is a sequence number. So, the format for stream IDs is MS-SEQ. -{{< /note >}} +> [!NOTE] +> Stream IDs in Redis Open Source consist of two integers separated by a dash ('-'). When the server generates the ID, the first integer is the current time in milliseconds, and the second integer is a sequence number. So, the format for stream IDs is MS-SEQ. To prevent duplicate IDs and to comply with the original Redis streams design, Active-Active databases provide three ID modes for XADD: @@ -158,9 +156,8 @@ To prevent duplicate IDs and to comply with the original Redis streams design, A The default and recommended mode is _strict_, which prevents duplicate IDs. -{{% warning %}} -Why do you want to prevent duplicate IDs? First, XDEL, XCLAIM, and other commands can affect more than one entry when duplicate IDs are present in a stream. Second, duplicate entries may be removed if a database is exported or renamed. -{{% /warning %}} +> [!WARNING] +> Why do you want to prevent duplicate IDs? First, XDEL, XCLAIM, and other commands can affect more than one entry when duplicate IDs are present in a stream. Second, duplicate entries may be removed if a database is exported or renamed. To change XADD's ID generation mode, use the `rladmin` command-line utility: @@ -210,15 +207,14 @@ Active-Active databases fully support consumer groups with Redis Streams. Here i | _t4_ | `XINFO GROUPS x`
    **→ [group1, group2]** | `XINFO GROUPS x`
    **→ [group1, group2]** | -{{< note >}} -Redis Open Source uses one radix tree (`rax`) to hold the global pending entries list and another `rax` for each consumer's PEL. -The global PEL is a unification of all consumer PELs, which are disjoint. - -An Active-Active database stream maintains a global PEL and a per-consumer PEL for each region. - -When given an ID different from the special ">" ID, XREADGROUP iterates simultaneously over all of the PELs for all consumers. -It returns the next entry by comparing entry IDs from the different PELs. -{{< /note >}} +> [!NOTE] +> Redis Open Source uses one radix tree (`rax`) to hold the global pending entries list and another `rax` for each consumer's PEL. +> The global PEL is a unification of all consumer PELs, which are disjoint. +> +> An Active-Active database stream maintains a global PEL and a per-consumer PEL for each region. +> +> When given an ID different from the special ">" ID, XREADGROUP iterates simultaneously over all of the PELs for all consumers. +> It returns the next entry by comparing entry IDs from the different PELs. ### Conflict resolution diff --git a/content/operate/rs/7.8/databases/active-active/develop/data-types/strings.md b/content/operate/rs/7.8/databases/active-active/develop/data-types/strings.md index 6529b652cd..65faf0d2e0 100644 --- a/content/operate/rs/7.8/databases/active-active/develop/data-types/strings.md +++ b/content/operate/rs/7.8/databases/active-active/develop/data-types/strings.md @@ -13,15 +13,14 @@ url: '/operate/rs/7.8/databases/active-active/develop/data-types/strings/' --- Active-Active databases support both strings and bitfields. -{{}} -Active-Active **bitfield** support was added in RS version 6.0.20. -{{}} +> [!NOTE] +> Active-Active **bitfield** support was added in RS version 6.0.20. Changes to both of these data structures will be replicated across Active-Active member databases. ## Replication semantics -Except in the case of [string counters]({{< relref "#string-counter-support" >}}) (see below), both strings and bitfields are replicated using a "last write wins" approach. The reason for this is that strings and bitfields are effectively binary objects. So, unlike with lists, sets, and hashes, the conflict resolution semantics of a given operation on a string or bitfield are undefined. +Except in the case of [string counters](#string-counter-support) (see below), both strings and bitfields are replicated using a "last write wins" approach. The reason for this is that strings and bitfields are effectively binary objects. So, unlike with lists, sets, and hashes, the conflict resolution semantics of a given operation on a string or bitfield are undefined. ### How "last write wins" works @@ -43,7 +42,7 @@ time (t2) wins over the update at t1. ### String counter support -When you're using a string as counter (for instance, with the [INCR]({{< relref "/commands/incr" >}}) or [INCRBY]({{< relref "/commands/incrby" >}}) commands), +When you're using a string as counter (for instance, with the [INCR](/content/commands/incr.md) or [INCRBY](/content/commands/incrby.md) commands), then conflicts will be resolved semantically. On conflicting writes, counters accumulate the total counter operations @@ -67,7 +66,6 @@ concurrent writes. | t8 | — Sync — | — Sync — | | t9 | GET counter
    13 | GET counter
    13 | -{{< note >}} -Active-Active databases support 59-bit counters. -This limitation is to protect from overflowing a counter in a concurrent operation. -{{< /note >}} +> [!NOTE] +> Active-Active databases support 59-bit counters. +> This limitation is to protect from overflowing a counter in a concurrent operation. diff --git a/content/operate/rs/7.8/databases/active-active/develop/develop-for-aa.md b/content/operate/rs/7.8/databases/active-active/develop/develop-for-aa.md index 9b4e4ff5f3..6ff01bbb12 100644 --- a/content/operate/rs/7.8/databases/active-active/develop/develop-for-aa.md +++ b/content/operate/rs/7.8/databases/active-active/develop/develop-for-aa.md @@ -98,8 +98,8 @@ execute them in script-replication mode. ## Eviction -The default policy for Active-Active databases is _noeviction_ mode. Redis Enterprise version 6.0.20 and later support all eviction policies for Active-Active databases, unless [Auto Tiering]({{< relref "/operate/rs/7.8/databases/auto-tiering" >}})(previously known as Redis on Flash) is enabled. -For details, see [eviction for Active-Active databases]({{< relref "/operate/rs/7.8/databases/memory-performance/eviction-policy#active-active-database-eviction" >}}). +The default policy for Active-Active databases is _noeviction_ mode. Redis Enterprise version 6.0.20 and later support all eviction policies for Active-Active databases, unless [Auto Tiering](/content/operate/rs/7.8/databases/auto-tiering/_index.md)(previously known as Redis on Flash) is enabled. +For details, see [eviction for Active-Active databases](/content/operate/rs/7.8/databases/memory-performance/eviction-policy.md#active-active-database-eviction). ## Expiration @@ -145,9 +145,9 @@ Furthermore, a replica that is NOT the "owner" of the expired value: - Expires it (sending a DEL) before making any modifications if a user attempts to access it in WRITE mode. - {{< note >}} -Expiration values are in the range of [0, 2^49] for Active-Active databases and [0, 2^64] for non Active-Active databases. - {{< /note >}} + > [!NOTE] + > Expiration values are in the range of [0, 2^49] for Active-Active databases and [0, 2^64] for non Active-Active databases. + > ## Out-of-Memory (OOM) {#outofmemory-oom} diff --git a/content/operate/rs/7.8/databases/active-active/get-started.md b/content/operate/rs/7.8/databases/active-active/get-started.md index 8c4700cad6..4f2cc33c61 100644 --- a/content/operate/rs/7.8/databases/active-active/get-started.md +++ b/content/operate/rs/7.8/databases/active-active/get-started.md @@ -22,13 +22,12 @@ clusters for test and development environments. Here are the steps: 1. Test connectivity to the Active-Active database. -To run an Active-Active database on installations from the [Redis Enterprise Software download package]({{< relref "/operate/rs/7.8/installing-upgrading/quickstarts/redis-enterprise-software-quickstart" >}}), +To run an Active-Active database on installations from the [Redis Enterprise Software download package](/content/operate/rs/7.8/installing-upgrading/quickstarts/redis-enterprise-software-quickstart.md), set up two Redis Enterprise Software installations and continue from Step 2. -{{}} -This getting started guide is for development or demonstration environments. -For production environments, see [Create an Active-Active geo-replicated database]({{< relref "/operate/rs/7.8/databases/active-active/create" >}}) for instructions. -{{}} +> [!NOTE] +> This getting started guide is for development or demonstration environments. +> For production environments, see [Create an Active-Active geo-replicated database](/content/operate/rs/7.8/databases/active-active/create.md) for instructions. ## Run two containers @@ -51,9 +50,9 @@ containers can be accessed from the host OS that is running the containers. 1. For cluster 1, go to `https://localhost:8443` in a browser on the host machine to access the Redis Enterprise Software Cluster Manager UI. - {{}} -Depending on your browser, you may see a certificate error. Continue to the website. - {{}} + > [!NOTE] + > Depending on your browser, you may see a certificate error. Continue to the website. + > 1. Click **Create new cluster**: @@ -87,9 +86,8 @@ Depending on your browser, you may see a certificate error. Continue to the webs Now you have two Redis Enterprise Software clusters with FQDNs `cluster1.local` and `cluster2.local`. -{{}} -Each Active-Active instance must have a unique fully-qualified domain name (FQDN). -{{}} +> [!NOTE] +> Each Active-Active instance must have a unique fully-qualified domain name (FQDN). ## Create an Active-Active database @@ -137,20 +135,20 @@ Each Active-Active instance must have a unique fully-qualified domain name (FQDN 1. In the **Clustering** section, either: - Make sure that **Sharding** is enabled and select the number of shards you want to have in the database. When database clustering is enabled, - databases are subject to limitations on [Multi-key commands]({{< relref "/operate/rs/7.8/databases/durability-ha/clustering" >}}). + databases are subject to limitations on [Multi-key commands](/content/operate/rs/7.8/databases/durability-ha/clustering.md). You can increase the number of shards in the database at any time. - - Turn off **Sharding** to use only one shard and avoid [Multi-key command]({{< relref "/operate/rs/7.8/databases/durability-ha/clustering" >}}) limitations. + - Turn off **Sharding** to use only one shard and avoid [Multi-key command](/content/operate/rs/7.8/databases/durability-ha/clustering.md) limitations. - {{< note >}} -You cannot enable or turn off database clustering after the Active-Active database is created. - {{< /note >}} + > [!NOTE] + > You cannot enable or turn off database clustering after the Active-Active database is created. + > 1. Click **Create**. - {{< note >}} -{{< embed-md "docker-memory-limitation.md" >}} - {{< /note >}} + > [!NOTE] + > {{< embed-md "docker-memory-limitation.md" >}} + > 1. After the Active-Active database is created, sign in to the Cluster Manager UIs for cluster 1 at `https://localhost:8443` and cluster 2 at `https://localhost:8445`. @@ -165,4 +163,4 @@ You cannot enable or turn off database clustering after the Active-Active databa ## Test connection With the Redis database created, you are ready to connect to your -database. See [Connect to Active-Active databases]({{< relref "/operate/rs/7.8/databases/active-active/connect" >}}) for tutorials and examples of multiple connection methods. +database. See [Connect to Active-Active databases](/content/operate/rs/7.8/databases/active-active/connect.md) for tutorials and examples of multiple connection methods. diff --git a/content/operate/rs/7.8/databases/active-active/manage.md b/content/operate/rs/7.8/databases/active-active/manage.md index eefa703aaa..383cf347b0 100644 --- a/content/operate/rs/7.8/databases/active-active/manage.md +++ b/content/operate/rs/7.8/databases/active-active/manage.md @@ -13,9 +13,9 @@ url: '/operate/rs/7.8/databases/active-active/manage/' You can configure and manage your Active-Active database from either the Cluster Manager UI or the command line. -To change the global configuration of the Active-Active database, use [`crdb-cli`]({{< relref "/operate/rs/7.8/references/cli-utilities/crdb-cli" >}}). +To change the global configuration of the Active-Active database, use [`crdb-cli`](/content/operate/rs/7.8/references/cli-utilities/crdb-cli/_index.md). -If you need to apply changes locally to one database instance, you use the Cluster Manager UI or [`rladmin`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin" >}}). +If you need to apply changes locally to one database instance, you use the Cluster Manager UI or [`rladmin`](/content/operate/rs/7.8/references/cli-utilities/rladmin/_index.md). ## Database settings @@ -24,7 +24,7 @@ Many Active-Active database settings can be changed after database creation. One ## Participating clusters You can add and remove participating clusters of an Active-Active database to change the topology. -To manage the changes to Active-Active topology, use [`crdb-cli`]({{< relref "/operate/rs/7.8/references/cli-utilities/crdb-cli/" >}}) or the participating clusters list in the Cluster Manager UI. +To manage the changes to Active-Active topology, use [`crdb-cli`](/content/operate/rs/7.8/references/cli-utilities/crdb-cli/_index.md) or the participating clusters list in the Cluster Manager UI. ### Add participating clusters @@ -35,9 +35,8 @@ After you add new participating clusters to an existing Active-Active database, the new database instance can accept connections and read operations. The new instance does not accept write operations until it is in the syncing state. -{{}} -If an Active-Active database [runs on flash memory]({{}}), you cannot add participating clusters that run on RAM only. -{{}} +> [!NOTE] +> If an Active-Active database [runs on flash memory](/content/operate/rs/7.8/databases/auto-tiering/_index.md), you cannot add participating clusters that run on RAM only. To add a new participating cluster to an existing Active-Active configuration using the Cluster Manager UI: @@ -81,13 +80,13 @@ To remove a participating cluster using the Cluster Manager UI: ## Replication backlog -Redis databases that use [replication for high availability]({{< relref "/operate/rs/7.8/databases/durability-ha/replication.md" >}}) maintain a replication backlog (per shard) to synchronize the primary and replica shards of a database. In addition to the database replication backlog, Active-Active databases maintain a backlog (per shard) to synchronize the database instances between clusters. +Redis databases that use [replication for high availability](/content/operate/rs/7.8/databases/durability-ha/replication.md) maintain a replication backlog (per shard) to synchronize the primary and replica shards of a database. In addition to the database replication backlog, Active-Active databases maintain a backlog (per shard) to synchronize the database instances between clusters. By default, both the database and Active-Active replication backlogs are set to one percent (1%) of the database size divided by the number of shards. This can range between 1MB to 250MB per shard for each backlog. ### Change the replication backlog size -Use the [`crdb-cli`]({{< relref "/operate/rs/7.8/references/cli-utilities/crdb-cli" >}}) utility to control the size of the replication backlogs. You can set it to `auto` or set a specific size. +Use the [`crdb-cli`](/content/operate/rs/7.8/references/cli-utilities/crdb-cli/_index.md) utility to control the size of the replication backlogs. You can set it to `auto` or set a specific size. Update the database replication backlog configuration with the `crdb-cli` command shown below. diff --git a/content/operate/rs/7.8/databases/active-active/planning.md b/content/operate/rs/7.8/databases/active-active/planning.md index cedb21daf8..877dc6f798 100644 --- a/content/operate/rs/7.8/databases/active-active/planning.md +++ b/content/operate/rs/7.8/databases/active-active/planning.md @@ -16,21 +16,20 @@ In Redis Enterprise, Active-Active geo-distribution is based on [conflict-free r Because of the complexities of Active-Active databases, there are special considerations to keep in mind while planning your Active-Active database. -See [Active-Active Redis]({{< relref "/operate/rs/7.8/databases/active-active/" >}}) for more information about geo-distributed replication. For more info on other high availability features, see [Durability and high availability]({{< relref "/operate/rs/7.8/databases/durability-ha/" >}}). +See [Active-Active Redis](/content/operate/rs/7.8/databases/active-active/_index.md) for more information about geo-distributed replication. For more info on other high availability features, see [Durability and high availability](/content/operate/rs/7.8/databases/durability-ha/_index.md). ## Participating clusters -You need at least [two participating clusters]({{< relref "/operate/rs/7.8/clusters/new-cluster-setup" >}}) for an Active-Active database. If your database requires more than ten participating clusters, contact Redis support. You can [add or remove participating clusters]({{< relref "/operate/rs/7.8/databases/active-active/manage#participating-clusters/" >}}) after database creation. +You need at least [two participating clusters](/content/operate/rs/7.8/clusters/new-cluster-setup.md) for an Active-Active database. If your database requires more than ten participating clusters, contact Redis support. You can [add or remove participating clusters](/content/operate/rs/7.8/databases/active-active/manage.md#participating-clusters/) after database creation. -{{}} -If an Active-Active database [runs on flash memory]({{}}), you cannot add participating clusters that run on RAM only. -{{}} +> [!NOTE] +> If an Active-Active database [runs on flash memory](/content/operate/rs/7.8/databases/auto-tiering/_index.md), you cannot add participating clusters that run on RAM only. Changes made from the Cluster Manager UI to an Active-Active database configuration only apply to the cluster you are editing. For global configuration changes across all clusters, use the `crdb-cli` command-line utility. ## Memory limits -Database memory limits define the maximum size of your database across all database replicas and [shards]({{< relref "/operate/rs/7.8/references/terminology.md#redis-instance-shard" >}}) on the cluster. Your memory limit also determines the number of shards. +Database memory limits define the maximum size of your database across all database replicas and [shards](/content/operate/rs/7.8/references/terminology.md#redis-instance-shard) on the cluster. Your memory limit also determines the number of shards. Besides your dataset, the memory limit must also account for replication, Active-Active metadata, and module overhead. These features can increase your database size, sometimes increasing it by two times or more. @@ -38,16 +37,16 @@ Factors to consider when sizing your database: - **dataset size**: you want your limit to be above your dataset size to leave room for overhead. - **database throughput**: high throughput needs more shards, leading to a higher memory limit. -- [**modules**]({{< relref "/operate/oss_and_stack/stack-with-enterprise" >}}): using modules with your database can consume more memory. -- [**database clustering**]({{< relref "/operate/rs/7.8/databases/durability-ha/clustering.md" >}}): enables you to spread your data into shards across multiple nodes (scale out). -- [**database replication**]({{< relref "/operate/rs/7.8/databases/durability-ha/replication.md" >}}): enabling replication doubles memory consumption -- [**Active-Active replication**]({{< relref "/operate/rs/7.8/databases/active-active/_index.md" >}}): enabling Active-Active replication requires double the memory of regular replication, which can be up to two times (2x) the original data size per instance. -- [**database replication backlog**]({{< relref "/operate/rs/7.8/databases/active-active/manage#replication-backlog/" >}}) for synchronization between shards. By default, this is set to 1% of the database size. -- [**Active-Active replication backlog**]({{< relref "/operate/rs/7.8/databases/active-active/manage.md" >}}) for synchronization between clusters. By default, this is set to 1% of the database size. +- [**modules**](/content/operate/oss_and_stack/stack-with-enterprise/_index.md): using modules with your database can consume more memory. +- [**database clustering**](/content/operate/rs/7.8/databases/durability-ha/clustering.md): enables you to spread your data into shards across multiple nodes (scale out). +- [**database replication**](/content/operate/rs/7.8/databases/durability-ha/replication.md): enabling replication doubles memory consumption +- [**Active-Active replication**](/content/operate/rs/7.8/databases/active-active/_index.md): enabling Active-Active replication requires double the memory of regular replication, which can be up to two times (2x) the original data size per instance. +- [**database replication backlog**](/content/operate/rs/7.8/databases/active-active/manage.md#replication-backlog/) for synchronization between shards. By default, this is set to 1% of the database size. +- [**Active-Active replication backlog**](/content/operate/rs/7.8/databases/active-active/manage.md) for synchronization between clusters. By default, this is set to 1% of the database size. It's also important to know Active-Active databases have a lower threshold for activating the eviction policy, because it requires propagation to all participating clusters. The eviction policy starts to evict keys when one of the Active-Active instances reaches 80% of its memory limit. -For more information on memory limits, see [Memory and performance]({{< relref "/operate/rs/7.8/databases/memory-performance/" >}}) or [Database memory limits]({{< relref "/operate/rs/7.8/databases/memory-performance/memory-limit.md" >}}). +For more information on memory limits, see [Memory and performance](/content/operate/rs/7.8/databases/memory-performance/_index.md) or [Database memory limits](/content/operate/rs/7.8/databases/memory-performance/memory-limit.md). ## Networking @@ -61,32 +60,31 @@ Networking between the clusters must be configured before creating an Active-Act ### Network ports -Every node must have access to the REST API ports of every other node as well as other ports for proxies, VPNs, and the Cluster Manager UI. See [Network port configurations]({{< relref "/operate/rs/7.8/networking/port-configurations.md" >}}) for more details. These ports should be allowed through firewalls that may be positioned between the clusters. +Every node must have access to the REST API ports of every other node as well as other ports for proxies, VPNs, and the Cluster Manager UI. See [Network port configurations](/content/operate/rs/7.8/networking/port-configurations.md) for more details. These ports should be allowed through firewalls that may be positioned between the clusters. ### Network Time Service {#network-time-service} Active-Active databases require a time service like NTP or Chrony to make sure the clocks on all cluster nodes are synchronized. This is critical to avoid problems with internal cluster communications that can impact your data integrity. -See [Synchronizing cluster node clocks]({{< relref "/operate/rs/7.8/clusters/configure/sync-clocks.md" >}}) for more information. +See [Synchronizing cluster node clocks](/content/operate/rs/7.8/clusters/configure/sync-clocks.md) for more information. ## Redis modules {#redis-modules} -Several Redis modules are compatible with Active-Active databases. Find the list of [compatible Redis modules]({{< relref "/operate/oss_and_stack/stack-with-enterprise/enterprise-capabilities" >}}). -{{< note >}} -Starting with v6.2.18, you can index, query, and perform full-text searches of nested JSON documents in Active-Active databases by combining RedisJSON and RediSearch. -{{< /note >}} +Several Redis modules are compatible with Active-Active databases. Find the list of [compatible Redis modules](/content/operate/oss_and_stack/stack-with-enterprise/enterprise-capabilities.md). +> [!NOTE] +> Starting with v6.2.18, you can index, query, and perform full-text searches of nested JSON documents in Active-Active databases by combining RedisJSON and RediSearch. ## Limitations Active-Active databases have the following limitations: -- An existing database can't be changed into an Active-Active database. To move data from an existing database to an Active-Active database, you must [create a new Active-Active database]({{< relref "/operate/rs/7.8/databases/active-active/create.md" >}}) and [migrate the data]({{< relref "/operate/rs/7.8/databases/import-export/migrate-to-active-active.md" >}}). -- [Discovery service]({{< relref "/operate/rs/7.8/databases/durability-ha/discovery-service.md" >}}) is not supported with Active-Active databases. Active-Active databases require FQDNs or [mDNS]({{< relref "/operate/rs/7.8/networking/mdns.md" >}}). +- An existing database can't be changed into an Active-Active database. To move data from an existing database to an Active-Active database, you must [create a new Active-Active database](/content/operate/rs/7.8/databases/active-active/create.md) and [migrate the data](/content/operate/rs/7.8/databases/import-export/migrate-to-active-active.md). +- [Discovery service](/content/operate/rs/7.8/databases/durability-ha/discovery-service.md) is not supported with Active-Active databases. Active-Active databases require FQDNs or [mDNS](/content/operate/rs/7.8/networking/mdns.md). - The `FLUSH` command is not supported from the CLI. To flush your database, use the API or Cluster Manager UI. - The `UNLINK` command is a blocking command for all types of keys. - Cross slot multi commands (such as `MSET`) are not supported with Active-Active databases. - The hashing policy can't be changed after database creation. -- If an Active-Active database [runs on flash memory]({{}}), you cannot add participating clusters that run on RAM only. +- If an Active-Active database [runs on flash memory](/content/operate/rs/7.8/databases/auto-tiering/_index.md), you cannot add participating clusters that run on RAM only. - Active-Active databases handle replication internally and do not support the `redis.set_repl()` function in Lua scripts. - If you enabled the default database password during the creation of an Active-Active database, you should not turn off the default database password because it could prevent the removal of participating database instances. diff --git a/content/operate/rs/7.8/databases/active-active/syncer.md b/content/operate/rs/7.8/databases/active-active/syncer.md index 7c7a9d172b..e559f401f5 100644 --- a/content/operate/rs/7.8/databases/active-active/syncer.md +++ b/content/operate/rs/7.8/databases/active-active/syncer.md @@ -21,7 +21,7 @@ The syncer process: 1. Reads data from that database instance 1. Writes the data to the local cluster's primary(master) shard -Some replication capabilities are also included in [Redis Open Source]({{< relref "/operate/oss_and_stack/management/replication" >}}). +Some replication capabilities are also included in [Redis Open Source](/content/operate/oss_and_stack/management/replication.md). The primary (also known as master) shard at the top of the primary-replica tree creates a replication ID. This replication ID is identical for all replicas in that tree. @@ -31,18 +31,17 @@ When a new primary is appointed, the replication ID changes, but a partial sync In a partial sync, the backlog of operations since the offset are transferred as raw operations. In a full sync, the data from the primary is transferred to the replica as an RDB file which is followed by a partial sync. -Partial synchronization requires a backlog large enough to store the data operations until connection is restored. See [replication backlog]({{< relref "/operate/rs/7.8/databases/active-active/manage#replication-backlog" >}}) for more info on changing the replication backlog size. +Partial synchronization requires a backlog large enough to store the data operations until connection is restored. See [replication backlog](/content/operate/rs/7.8/databases/active-active/manage.md#replication-backlog) for more info on changing the replication backlog size. ### Syncer in Active-Active replication In the case of an Active-Active database: - Multiple past replication IDs and offsets are stored to allow for multiple syncs -- The [Active-Active replication backlog]({{< relref "/operate/rs/7.8/databases/active-active/manage#replication-backlog" >}}) is also sent to the replica during a full sync. +- The [Active-Active replication backlog](/content/operate/rs/7.8/databases/active-active/manage.md#replication-backlog) is also sent to the replica during a full sync. -{{< warning >}} -Full sync triggers heavy data transfers between geo-replicated instances of an Active-Active database. -{{< /warning >}} +> [!WARNING] +> Full sync triggers heavy data transfers between geo-replicated instances of an Active-Active database. An Active-Active database uses partial synchronization in the following situations: @@ -52,6 +51,5 @@ An Active-Active database uses partial synchronization in the following situatio - Migrate primary shard to another node as a replica using failover and replica migration - Migrate primary shard and preserve roles using failover, replica migration, and second failover to return shard to primary -{{< note >}} -Synchronization of data from the primary shard to the replica shard is always a full synchronization. -{{< /note >}} +> [!NOTE] +> Synchronization of data from the primary shard to the replica shard is always a full synchronization. diff --git a/content/operate/rs/7.8/databases/active-active/synchronization-mode.md b/content/operate/rs/7.8/databases/active-active/synchronization-mode.md index ceec4f6315..5cc553d710 100644 --- a/content/operate/rs/7.8/databases/active-active/synchronization-mode.md +++ b/content/operate/rs/7.8/databases/active-active/synchronization-mode.md @@ -11,7 +11,7 @@ linktitle: Distributed synchronization weight: 80 url: '/operate/rs/7.8/databases/active-active/synchronization-mode/' --- -Replicated databases, such as [Replica Of]({{< relref "/operate/rs/7.8/databases/import-export/replica-of/" >}}) and [Active-Active]({{< relref "/operate/rs/7.8/databases/active-active" >}}) databases, +Replicated databases, such as [Replica Of](/content/operate/rs/7.8/databases/import-export/replica-of/_index.md) and [Active-Active](/content/operate/rs/7.8/databases/active-active/_index.md) databases, use proxy endpoints to synchronize database changes with the databases on other participating clusters. To improve the throughput and lower the latency for synchronization traffic, @@ -21,16 +21,15 @@ Every database by default has one proxy endpoint that manages client and synchro and that proxy endpoint is used for database synchronization. This is called centralized synchronization. -To prepare a database to use distributed synchronization you must first make sure that the database [proxy policy]({{< relref "/operate/rs/7.8/databases/configure/proxy-policy.md" >}}) +To prepare a database to use distributed synchronization you must first make sure that the database [proxy policy](/content/operate/rs/7.8/databases/configure/proxy-policy.md) is defined so that either each node has a proxy endpoint or each primary (master) shard has a proxy endpoint. After you have multiple proxies for the database, you can configure the database synchronization to use distributed synchronization. ## Configure distributed synchronization -{{< note >}} -You may use the database name in place of `db:` in the following `rladmin` commands. -{{< /note >}} +> [!NOTE] +> You may use the database name in place of `db:` in the following `rladmin` commands. To configure distributed synchronization: diff --git a/content/operate/rs/7.8/databases/auto-tiering/_index.md b/content/operate/rs/7.8/databases/auto-tiering/_index.md index 66003bc98e..3de037ada3 100644 --- a/content/operate/rs/7.8/databases/auto-tiering/_index.md +++ b/content/operate/rs/7.8/databases/auto-tiering/_index.md @@ -25,7 +25,7 @@ Redis Enterprise’s auto tiering is based on a high-performance storage engine Just like all-RAM databases, databases with Auto Tiering enabled are compatible with existing Redis applications. -Auto Tiering is also supported on [Redis Cloud]({{< relref "/operate/rc/" >}}) and [Redis Enterprise Software for Kubernetes]({{< relref "/operate/kubernetes/" >}}). +Auto Tiering is also supported on [Redis Cloud](/content/operate/rc/_index.md) and [Redis Enterprise Software for Kubernetes](/content/operate/kubernetes/_index.md). ## Use cases @@ -59,7 +59,8 @@ All data is accessed through RAM. If a value in flash memory is accessed, it bec Inactive or infrequently accessed data is referred to as "warm data" and stored in flash memory. When more space is needed in RAM, warm data is moved from RAM to flash storage. -{{}} When using Auto Tiering with RediSearch, it’s important to note that RediSearch indexes are also stored in RAM.{{}} +> [!NOTE] +> When using Auto Tiering with RediSearch, it’s important to note that RediSearch indexes are also stored in RAM. ## RAM to Flash ratio @@ -77,7 +78,8 @@ Implementing Auto Tiering requires pre planning around memory and sizing. Consid - For the best performance, the SSDs should be NVMe based, but SATA can also be used. - The available flash space must be greater than or equal to the total database size (RAM+Flash). The extra space accounts for write buffers and [write amplification](https://en.wikipedia.org/wiki/Write_amplification). -{{}} The Redis Enterprise Software database persistent and ephemeral storage should be on different disks, either local or attached. {{}} +> [!NOTE] +> The Redis Enterprise Software database persistent and ephemeral storage should be on different disks, either local or attached. Once these requirements are met, you can create and manage both databases with Auto Tiering enabled and all-RAM databases in the same cluster. @@ -92,8 +94,8 @@ When running in a cloud environment: - Flash memory is on the ephemeral SSDs of the cloud instance (for example the local NVMe of AWS i4i instances and Azure Lsv2 and Lsv3 series). - Persistent database storage needs to be network attached (for example, AWS EBS for AWS). -{{}} -We specifically recommend "[Storage Optimized I4i - High I/O Instances](https://aws.amazon.com/ec2/instance-types/#storage-optimized)" because of the performance of NVMe for flash memory. {{}} +> [!NOTE] +> We specifically recommend "[Storage Optimized I4i - High I/O Instances](https://aws.amazon.com/ec2/instance-types/#storage-optimized)" because of the performance of NVMe for flash memory. ### On-premises environments @@ -102,14 +104,16 @@ When you begin planning the deployment of Auto Tiering in production, we recomme On-premises environments support more deployment options than other environments such as: - Using Redis Stack features: - - [Search and query]({{< relref "/operate/oss_and_stack/stack-with-enterprise/search" >}}) - - [JSON]({{< relref "/operate/oss_and_stack/stack-with-enterprise/json" >}}) - - [Time series]({{< relref "/operate/oss_and_stack/stack-with-enterprise/timeseries" >}}) - - [Probabilistic data structures]({{< relref "/operate/oss_and_stack/stack-with-enterprise/bloom" >}}) + - [Search and query](/content/operate/oss_and_stack/stack-with-enterprise/search/_index.md) + - [JSON](/content/operate/oss_and_stack/stack-with-enterprise/json/_index.md) + - [Time series](/content/operate/oss_and_stack/stack-with-enterprise/timeseries/_index.md) + - [Probabilistic data structures](/content/operate/oss_and_stack/stack-with-enterprise/bloom/_index.md) -{{}} Enabling Auto Tiering for Active-Active distributed databases requires validating and getting the Redis technical team's approval first . {{}} +> [!NOTE] +> Enabling Auto Tiering for Active-Active distributed databases requires validating and getting the Redis technical team's approval first . -{{}} Auto Tiering is not supported running on network attached storage (NAS), storage area network (SAN), or with local HDD drives. {{}} +> [!WARNING] +> Auto Tiering is not supported running on network attached storage (NAS), storage area network (SAN), or with local HDD drives. ## Size limits for keys and values @@ -125,8 +129,8 @@ If oversized keys consume the shard's available RAM, the shard can return out-of ## Next steps -- [Auto Tiering metrics]({{< relref "/operate/rs/7.8/references/metrics/auto-tiering" >}}) -- [Auto Tiering quick start]({{< relref "/operate/rs/7.8/databases/auto-tiering/quickstart.md" >}}) +- [Auto Tiering metrics](/content/operate/rs/7.8/references/metrics/auto-tiering.md) +- [Auto Tiering quick start](/content/operate/rs/7.8/databases/auto-tiering/quickstart.md) -- [Ephemeral and persistent storage]({{< relref "/operate/rs/7.8/installing-upgrading/install/plan-deployment/persistent-ephemeral-storage" >}}) -- [Hardware requirements]({{< relref "/operate/rs/7.8/installing-upgrading/install/plan-deployment/hardware-requirements.md" >}}) +- [Ephemeral and persistent storage](/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/persistent-ephemeral-storage.md) +- [Hardware requirements](/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/hardware-requirements.md) diff --git a/content/operate/rs/7.8/databases/auto-tiering/quickstart.md b/content/operate/rs/7.8/databases/auto-tiering/quickstart.md index 80187423ac..cad243b63a 100644 --- a/content/operate/rs/7.8/databases/auto-tiering/quickstart.md +++ b/content/operate/rs/7.8/databases/auto-tiering/quickstart.md @@ -12,9 +12,9 @@ weight: 80 url: '/operate/rs/7.8/databases/auto-tiering/quickstart/' aliases: /operate/rs/7.8/databases/flash/quickstart/ --- -This page guides you through a quick setup of [Auto Tiering]({{< relref "/operate/rs/7.8/databases/auto-tiering/" >}}) with a single node for testing and demo purposes. +This page guides you through a quick setup of [Auto Tiering](/content/operate/rs/7.8/databases/auto-tiering/_index.md) with a single node for testing and demo purposes. -For production environments, you can find more detailed installation instructions in the [install and setup]({{< relref "/operate/rs/7.8/installing-upgrading" >}}) section. +For production environments, you can find more detailed installation instructions in the [install and setup](/content/operate/rs/7.8/installing-upgrading/_index.md) section. The steps to set up a Redis Enterprise Software cluster using Auto Tiering with a single node are: @@ -87,10 +87,10 @@ sudo lsblk 1. Direct your browser to `https://localhost:8443` on the host machine to see the Redis Enterprise Software Cluster Manager UI. - {{}} -Depending on your browser, you may see a certificate error. -Choose "continue to the website" to go to the setup screen. - {{}} + > [!NOTE] + > Depending on your browser, you may see a certificate error. + > Choose "continue to the website" to go to the setup screen. + > 1. Select **Create new cluster**. @@ -127,8 +127,8 @@ You now have a database with Auto Tiering enabled! ## Connect to your database -After you create the database, you can connect to it and store data. See [Test client connection]({{}}) for connection options and examples. +After you create the database, you can connect to it and store data. See [Test client connection](/content/operate/rs/7.8/databases/connect/test-client-connectivity.md) for connection options and examples. ## Next steps -To see the true performance and scale of Auto Tiering, you must tune your I/O path and set the flash path to the mounted path of SSD or NVMe flash memory as that is what it is designed to run on. For more information, see [Auto Tiering]({{< relref "/operate/rs/7.8/databases/auto-tiering/" >}}). +To see the true performance and scale of Auto Tiering, you must tune your I/O path and set the flash path to the mounted path of SSD or NVMe flash memory as that is what it is designed to run on. For more information, see [Auto Tiering](/content/operate/rs/7.8/databases/auto-tiering/_index.md). diff --git a/content/operate/rs/7.8/databases/auto-tiering/storage-engine.md b/content/operate/rs/7.8/databases/auto-tiering/storage-engine.md index 58acafd948..0201c241c1 100644 --- a/content/operate/rs/7.8/databases/auto-tiering/storage-engine.md +++ b/content/operate/rs/7.8/databases/auto-tiering/storage-engine.md @@ -20,7 +20,8 @@ Redis Enterprise Auto Tiering supports two storage engines: - [RocksDB](https://rocksdb.org/): Used up to Redis version 6.2. Deprecated for later Redis versions. -{{}}Switching between storage engines requires guidance by Redis Support or your Account Manager.{{}} +> [!WARNING] +> Switching between storage engines requires guidance by Redis Support or your Account Manager. ### Change the storage engine @@ -44,7 +45,8 @@ Redis Enterprise Auto Tiering supports two storage engines: rladmin restart db { db: | } ``` -{{}} We recommend restarting your database at times with low usage and avoiding peak hours. For databases without persistence enabled, we also recommend using export to backup your database first.{{}} +> [!NOTE] +> We recommend restarting your database at times with low usage and avoiding peak hours. For databases without persistence enabled, we also recommend using export to backup your database first. ## Monitor the storage engine @@ -66,4 +68,4 @@ Versions of Redis Enterprise 7.2 and later provide a metric called `bdb_bigstore bdb_bigstore_shard_count{bdb="1",cluster="mycluster.local",driver="speedb"} 2.0 ``` -For more about metrics for Redis Enterprise’s integration with Prometheus, see [Prometheus integration]({{< relref "/integrate/prometheus-with-redis-enterprise/prometheus-metrics-definitions" >}}). +For more about metrics for Redis Enterprise’s integration with Prometheus, see [Prometheus integration](/content/integrate/prometheus-with-redis-enterprise/prometheus-metrics-definitions.md). diff --git a/content/operate/rs/7.8/databases/configure/_index.md b/content/operate/rs/7.8/databases/configure/_index.md index 3efcfbf9c2..376312062e 100644 --- a/content/operate/rs/7.8/databases/configure/_index.md +++ b/content/operate/rs/7.8/databases/configure/_index.md @@ -19,13 +19,13 @@ You can manage your Redis Enterprise Software databases with several tools: - Command-line tools: - - [`rladmin`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin" >}}) for standalone database configuration + - [`rladmin`](/content/operate/rs/7.8/references/cli-utilities/rladmin/_index.md) for standalone database configuration - - [`crdb-cli`]({{< relref "/operate/rs/7.8/references/cli-utilities/crdb-cli" >}}) for Active-Active database configuration + - [`crdb-cli`](/content/operate/rs/7.8/references/cli-utilities/crdb-cli/_index.md) for Active-Active database configuration - - [`redis-cli`]({{< relref "/develop/tools/cli" >}}) for Redis Open Source configuration + - [`redis-cli`](/content/develop/tools/cli.md) for Redis Open Source configuration -- [REST API]({{< relref "/operate/rs/7.8/references/rest-api/_index.md" >}}) +- [REST API](/content/operate/rs/7.8/references/rest-api/_index.md) ## Edit database settings @@ -39,9 +39,9 @@ To edit the configuration of a database using the Cluster Manager UI: 1. Change any [configurable database settings](#config-settings). - {{< note >}} -For [Active-Active database instances]({{< relref "/operate/rs/7.8/databases/active-active" >}}), most database settings only apply to the instance that you are editing. - {{< /note >}} + > [!NOTE] + > For [Active-Active database instances](/content/operate/rs/7.8/databases/active-active/_index.md), most database settings only apply to the instance that you are editing. + > 1. Select **Save**. @@ -49,7 +49,7 @@ For [Active-Active database instances]({{< relref "/operate/rs/7.8/databases/act ### General -- [**Tags**]({{}}) - Add custom tags to categorize the database. +- [**Tags**](/content/operate/rs/7.8/databases/configure/db-tags.md) - Add custom tags to categorize the database. - **Database version** - Select the Redis version when you create a database. @@ -65,32 +65,31 @@ For [Active-Active database instances]({{< relref "/operate/rs/7.8/databases/act - **Endpoint port number** - You can define the port number that clients use to connect to the database. Otherwise, a port is randomly selected. - {{< note >}} -You cannot change the [port number]({{< relref "/operate/rs/7.8/networking/port-configurations.md" >}}) -after the database is created. - {{< /note >}} + > [!NOTE] + > You cannot change the [port number](/content/operate/rs/7.8/networking/port-configurations.md) + > after the database is created. + > ### Capacity -- **Memory limit** - [Database memory limits]({{< relref "/operate/rs/7.8/databases/memory-performance/memory-limit.md" >}}) include all database replicas and shards, including replica shards in database replication and database shards in database clustering. +- **Memory limit** - [Database memory limits](/content/operate/rs/7.8/databases/memory-performance/memory-limit.md) include all database replicas and shards, including replica shards in database replication and database shards in database clustering. If the total size of the database in the cluster reaches the memory limit, the memory eviction policy for the database is enforced. - **RAM limit** - If you create a database with Auto Tiering enabled, you also need to set the RAM-to-Flash ratio. Minimum RAM is 10%. Maximum RAM is 50%. -- [**Memory eviction**]({{}}) - By default, when the total size of the database reaches its memory limit, the database evicts keys according to the least recently used keys out of all keys with an "expire" field set to make room for new keys. You can select a different eviction policy. +- [**Memory eviction**](/content/operate/rs/7.8/databases/memory-performance/eviction-policy.md) - By default, when the total size of the database reaches its memory limit, the database evicts keys according to the least recently used keys out of all keys with an "expire" field set to make room for new keys. You can select a different eviction policy. ### Capabilities -When you create a new in-memory database, you can enable multiple Redis Stack [**Capabilities**]({{}}). +When you create a new in-memory database, you can enable multiple Redis Stack [**Capabilities**](/content/operate/oss_and_stack/stack-with-enterprise/_index.md). For Auto Tiering databases, you can enable capabilities that support Auto Tiering. See [Redis Enterprise and Redis Stack feature compatibility -]({{< relref "/operate/oss_and_stack/stack-with-enterprise/enterprise-capabilities" >}}) for compatibility details. +](/content/operate/oss_and_stack/stack-with-enterprise/enterprise-capabilities.md) for compatibility details. -{{}} -To use Redis Stack capabilities, enable them when you create a new database. -You cannot enable them after database creation. -{{}} +> [!NOTE] +> To use Redis Stack capabilities, enable them when you create a new database. +> You cannot enable them after database creation. To add capabilities to the database: @@ -108,93 +107,93 @@ To change capabilities' parameters for an existing database using the Cluster Ma ### High Availability -- [**Replication**]({{< relref "/operate/rs/7.8/databases/durability-ha/replication.md" >}}) - We recommend you use intra-cluster replication to create replica shards for each database for high availability. +- [**Replication**](/content/operate/rs/7.8/databases/durability-ha/replication.md) - We recommend you use intra-cluster replication to create replica shards for each database for high availability. - If the cluster is configured to support [rack-zone awareness]({{< relref "/operate/rs/7.8/clusters/configure/rack-zone-awareness.md" >}}), you can also enable rack-zone awareness for the database. + If the cluster is configured to support [rack-zone awareness](/content/operate/rs/7.8/clusters/configure/rack-zone-awareness.md), you can also enable rack-zone awareness for the database. -- [**Replica high availability**]({{< relref "/operate/rs/7.8/databases/configure/replica-ha" >}}) - Automatically migrates replica shards to an available node if a replica node fails or is promoted to primary. +- [**Replica high availability**](/content/operate/rs/7.8/databases/configure/replica-ha.md) - Automatically migrates replica shards to an available node if a replica node fails or is promoted to primary. ### Clustering - **Enable sharding** - You can either: - - Turn on sharding to enable [database clustering]({{< relref "/operate/rs/7.8/databases/durability-ha/clustering.md" >}}) and select the number of database shards. + - Turn on sharding to enable [database clustering](/content/operate/rs/7.8/databases/durability-ha/clustering.md) and select the number of database shards. - When database clustering is enabled, databases are subject to limitations on [Multi-key commands]({{< relref "/operate/rs/7.8/databases/durability-ha/clustering.md" >}}). + When database clustering is enabled, databases are subject to limitations on [Multi-key commands](/content/operate/rs/7.8/databases/durability-ha/clustering.md). You can increase the number of shards in the database at any time. - - Turn off sharding to use only one shard so that you can use [Multi-key commands]({{< relref "/operate/rs/7.8/databases/durability-ha/clustering.md" >}}) without the limitations. + - Turn off sharding to use only one shard so that you can use [Multi-key commands](/content/operate/rs/7.8/databases/durability-ha/clustering.md) without the limitations. -- [**Shards placement**]({{< relref "/operate/rs/7.8/databases/memory-performance/shard-placement-policy" >}}) - Determines how to distribute database shards across nodes in the cluster. +- [**Shards placement**](/content/operate/rs/7.8/databases/memory-performance/shard-placement-policy.md) - Determines how to distribute database shards across nodes in the cluster. - _Dense_ places shards on the smallest number of nodes. - _Sparse_ spreads shards across many nodes. -- [**OSS Cluster API**]({{< relref "/operate/rs/7.8/databases/configure/oss-cluster-api.md" >}}) - The OSS Cluster API configuration allows access to multiple endpoints for increased throughput. +- [**OSS Cluster API**](/content/operate/rs/7.8/databases/configure/oss-cluster-api.md) - The OSS Cluster API configuration allows access to multiple endpoints for increased throughput. This configuration requires clients to connect to the primary node to retrieve the cluster topology before they can connect directly to proxies on each node. When you enable the OSS Cluster API, shard placement changes to _Sparse_, and the database proxy policy changes to _All primary shards_ automatically. - {{}} -You must use a client that supports the cluster API to connect to a database that has the cluster API enabled. - {{}} + > [!NOTE] + > You must use a client that supports the cluster API to connect to a database that has the cluster API enabled. + > -- **Hashing policy** - You can accept the [standard hashing policy]({{}}), which is compatible with Redis Open Source, or define a [custom hashing policy]({{}}) to define where keys are located in the clustered database. +- **Hashing policy** - You can accept the [standard hashing policy](/content/operate/rs/7.8/databases/durability-ha/clustering.md#standard-hashing-policy), which is compatible with Redis Open Source, or define a [custom hashing policy](/content/operate/rs/7.8/databases/durability-ha/clustering.md#custom-hashing-policy) to define where keys are located in the clustered database. -- [**Database proxy**]({{< relref "/operate/rs/7.8/databases/configure/proxy-policy" >}}) - Determines the number and location of active proxies, which manage incoming database operation requests. +- [**Database proxy**](/content/operate/rs/7.8/databases/configure/proxy-policy.md) - Determines the number and location of active proxies, which manage incoming database operation requests. ### Durability -- [**Persistence**]({{}}) - To protect against loss of data stored in RAM, you can enable data persistence and store a copy of the data on disk with snapshots or an append-only file. +- [**Persistence**](/content/operate/rs/7.8/databases/configure/database-persistence.md) - To protect against loss of data stored in RAM, you can enable data persistence and store a copy of the data on disk with snapshots or an append-only file. -- **Scheduled backup** - You can configure [periodic backups]({{}}) of the database, including the interval and backup location parameters. +- **Scheduled backup** - You can configure [periodic backups](/content/operate/rs/7.8/databases/import-export/schedule-backups.md) of the database, including the interval and backup location parameters. ### TLS -You can require [**TLS**]({{< relref "/operate/rs/7.8/security/encryption/tls/" >}}) encryption and authentication for all communications, TLS encryption and authentication for Replica Of communication only, and TLS authentication for clients. +You can require [**TLS**](/content/operate/rs/7.8/security/encryption/tls/_index.md) encryption and authentication for all communications, TLS encryption and authentication for Replica Of communication only, and TLS authentication for clients. ### Access control - **Unauthenticated access** - You can access the database as the default user without providing credentials. -- **Password-only authentication** - When you configure a password for your database's default user, all connections to the database must authenticate with the [AUTH command]({{< relref "/commands/auth" >}}). +- **Password-only authentication** - When you configure a password for your database's default user, all connections to the database must authenticate with the [AUTH command](/content/commands/auth.md). If you also configure an access control list, connections can specify other users for authentication, and requests are allowed according to the Redis ACLs specified for that user. Creating a database without ACLs enables a *default* user with full access to the database. You can secure default user access by requiring a password. -- **Access Control List** - You can specify the [user roles]({{< relref "/operate/rs/7.8/security/access-control/create-db-roles" >}}) that have access to the database and the [Redis ACLs]({{< relref "/operate/rs/7.8/security/access-control/redis-acl-overview" >}}) that apply to those connections. +- **Access Control List** - You can specify the [user roles](/content/operate/rs/7.8/security/access-control/create-db-roles.md) that have access to the database and the [Redis ACLs](/content/operate/rs/7.8/security/access-control/redis-acl-overview.md) that apply to those connections. To define an access control list for a database: 1. In **Security > Access Control > Access Control List**, select **+ Add ACL**. - 1. Select a [role]({{< relref "/operate/rs/7.8/security/access-control/create-db-roles" >}}) to grant database access. + 1. Select a [role](/content/operate/rs/7.8/security/access-control/create-db-roles.md) to grant database access. - 1. Associate a [Redis ACL]({{< relref "/operate/rs/7.8/security/access-control/create-db-roles" >}}) with the role and database. + 1. Associate a [Redis ACL](/content/operate/rs/7.8/security/access-control/create-db-roles.md) with the role and database. 1. Select the check mark to add the ACL. ### Alerts -Select [alerts]({{}}) to show in the database status and configure their thresholds. +Select [alerts](/content/operate/rs/7.8/monitoring/v1_monitoring.md#database-alerts) to show in the database status and configure their thresholds. -You can also choose to [send alerts by email]({{}}) to relevant users. +You can also choose to [send alerts by email](/content/operate/rs/7.8/monitoring/v1_monitoring.md#send-alerts-by-email) to relevant users. ### Replica Of -With [**Replica Of**]({{}}), you can make the database a repository for keys from other databases. +With [**Replica Of**](/content/operate/rs/7.8/databases/import-export/replica-of/create.md), you can make the database a repository for keys from other databases. ### RESP3 support -[RESP]({{}}) (Redis Serialization Protocol) is the protocol clients use to communicate with Redis databases. If you enable RESP3 support, the database will support the RESP3 protocol in addition to RESP2. +[RESP](/content/develop/reference/protocol-spec.md) (Redis Serialization Protocol) is the protocol clients use to communicate with Redis databases. If you enable RESP3 support, the database will support the RESP3 protocol in addition to RESP2. -For more information about Redis Software's compatibility with RESP3, see [RESP compatibility with Redis Enterprise]({{}}). +For more information about Redis Software's compatibility with RESP3, see [RESP compatibility with Redis Enterprise](/content/operate/rs/7.8/references/compatibility/resp.md). ### Internode encryption -Enable **Internode encryption** to encrypt data in transit between nodes for this database. See [Internode encryption]({{< relref "/operate/rs/7.8/security/encryption/internode-encryption" >}}) for more information. +Enable **Internode encryption** to encrypt data in transit between nodes for this database. See [Internode encryption](/content/operate/rs/7.8/security/encryption/internode-encryption.md) for more information. diff --git a/content/operate/rs/7.8/databases/configure/database-persistence.md b/content/operate/rs/7.8/databases/configure/database-persistence.md index a247fa002a..6bbd1a3429 100644 --- a/content/operate/rs/7.8/databases/configure/database-persistence.md +++ b/content/operate/rs/7.8/databases/configure/database-persistence.md @@ -12,13 +12,13 @@ weight: 30 url: '/operate/rs/7.8/databases/configure/database-persistence/' --- -Data is stored in RAM or a combination of RAM and flash memory ([Auto Tiering]({{< relref "/operate/rs/7.8/databases/auto-tiering/" >}})), which risks data loss during process or server failures. Redis Enterprise Software supports multiple methods to persist data to disk on a per-database basis to ensure data durability. +Data is stored in RAM or a combination of RAM and flash memory ([Auto Tiering](/content/operate/rs/7.8/databases/auto-tiering/_index.md)), which risks data loss during process or server failures. Redis Enterprise Software supports multiple methods to persist data to disk on a per-database basis to ensure data durability. You can configure [persistence](https://redis.com/redis-enterprise/technology/durable-redis/) during database creation or by editing an existing database. Although the persistence model can be changed dynamically, the switch can take time depending on the database size and the models being switched. ## Configure database persistence -You can configure persistence when you [create a database]({{< relref "/operate/rs/7.8/databases/create" >}}), or you can edit an existing database's configuration: +You can configure persistence when you [create a database](/content/operate/rs/7.8/databases/create.md), or you can edit an existing database's configuration: 1. From the **Databases** list, select the database, then select **Configuration**. @@ -61,9 +61,8 @@ Append-only file (AOF) - fsync every write - Redis Enterprise sets the Redis dir Append-only file (AOF) - fsync every 1 sec - Redis will fsync any newly written data every second. This policy balances performance and durability and should be used when minimal data loss is acceptable in the event of a failure. This is the default Redis policy. This policy could result in between 1 and 2 seconds worth of data loss but on average this will be closer to one second. -{{< note >}} -If you use AOF for persistence, enable replication to improve performance. When both features are enabled for a database, the replica handles persistence, which prevents any performance impact on the master. -{{< /note >}} +> [!NOTE] +> If you use AOF for persistence, enable replication to improve performance. When both features are enabled for a database, the replica handles persistence, which prevents any performance impact on the master. **For use cases where data loss is tolerable or recoverable for extended periods of time:** diff --git a/content/operate/rs/7.8/databases/configure/db-defaults.md b/content/operate/rs/7.8/databases/configure/db-defaults.md index ae6977598c..12a8e1cba2 100644 --- a/content/operate/rs/7.8/databases/configure/db-defaults.md +++ b/content/operate/rs/7.8/databases/configure/db-defaults.md @@ -44,9 +44,9 @@ You can choose a predefined endpoint configuration to use the recommended databa ### Database proxy -Redis Enterprise Software uses [proxies]({{< relref "/operate/rs/7.8/references/terminology#proxy" >}}) to manage and optimize access to database shards. Each node in the cluster runs a single proxy process, which can be active (receives incoming traffic) or passive (waits for failovers). +Redis Enterprise Software uses [proxies](/content/operate/rs/7.8/references/terminology.md#proxy) to manage and optimize access to database shards. Each node in the cluster runs a single proxy process, which can be active (receives incoming traffic) or passive (waits for failovers). -You can configure default [proxy policies]({{< relref "/operate/rs/7.8/databases/configure/proxy-policy" >}}) to determine which nodes' proxies are active and bound to new databases by default. +You can configure default [proxy policies](/content/operate/rs/7.8/databases/configure/proxy-policy.md) to determine which nodes' proxies are active and bound to new databases by default. To configure the default database proxy policy using the Cluster Manager UI: @@ -60,13 +60,13 @@ To configure the default database proxy policy using the Cluster Manager UI: To configure the default proxy policy for non-sharded databases, use one of the following methods: -- [rladmin tune cluster]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/tune#tune-cluster" >}}): +- [rladmin tune cluster](/content/operate/rs/7.8/references/cli-utilities/rladmin/tune.md#tune-cluster): ```sh rladmin tune cluster default_non_sharded_proxy_policy { single | all-master-shards | all-nodes } ``` -- [Update cluster policy]({{< relref "/operate/rs/7.8/references/rest-api/requests/cluster/policy#put-cluster-policy" >}}) REST API request: +- [Update cluster policy](/content/operate/rs/7.8/references/rest-api/requests/cluster/policy.md#put-cluster-policy) REST API request: ```sh PUT /v1/cluster/policy @@ -77,13 +77,13 @@ To configure the default proxy policy for non-sharded databases, use one of the To configure the default proxy policy for sharded databases, use one of the following methods: -- [rladmin tune cluster]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/tune#tune-cluster" >}}): +- [rladmin tune cluster](/content/operate/rs/7.8/references/cli-utilities/rladmin/tune.md#tune-cluster): ```sh rladmin tune cluster default_sharded_proxy_policy { single | all-master-shards | all-nodes } ``` -- [Update cluster policy]({{< relref "/operate/rs/7.8/references/rest-api/requests/cluster/policy#put-cluster-policy" >}}) REST API request: +- [Update cluster policy](/content/operate/rs/7.8/references/rest-api/requests/cluster/policy.md#put-cluster-policy) REST API request: ```sh PUT /v1/cluster/policy @@ -92,7 +92,7 @@ To configure the default proxy policy for sharded databases, use one of the foll ### Shards placement -The default [shard placement policy]({{< relref "/operate/rs/7.8/databases/memory-performance/shard-placement-policy" >}}) determines the distribution of database shards across nodes in the cluster. +The default [shard placement policy](/content/operate/rs/7.8/databases/memory-performance/shard-placement-policy.md) determines the distribution of database shards across nodes in the cluster. Shard placement policies include: @@ -110,13 +110,13 @@ To configure default shard placement, use one of the following methods: {{The Database defaults panel lets you select Database proxy and Shards placement if Endpoint Configuration is set to Custom.}} -- [rladmin tune cluster]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/tune#tune-cluster" >}}): +- [rladmin tune cluster](/content/operate/rs/7.8/references/cli-utilities/rladmin/tune.md#tune-cluster): ```sh rladmin tune cluster default_shards_placement { dense | sparse } ``` -- [Update cluster policy]({{< relref "/operate/rs/7.8/references/rest-api/requests/cluster/policy#put-cluster-policy" >}}) REST API request: +- [Update cluster policy](/content/operate/rs/7.8/references/rest-api/requests/cluster/policy.md#put-cluster-policy) REST API request: ```sh PUT /v1/cluster/policy @@ -125,20 +125,20 @@ To configure default shard placement, use one of the following methods: ### Database version -New databases use the default Redis database version unless you select a different **Database version** when you [create a database]({{}}) in the Cluster Manager UI or specify the `redis_version` in a [create database REST API request]({{< relref "/operate/rs/7.8/references/rest-api/requests/bdbs" >}}). +New databases use the default Redis database version unless you select a different **Database version** when you [create a database](/content/operate/rs/7.8/databases/create.md) in the Cluster Manager UI or specify the `redis_version` in a [create database REST API request](/content/operate/rs/7.8/references/rest-api/requests/bdbs/_index.md). To configure the Redis database version, use one of the following methods: - Cluster Manager UI: Edit **Database version** in [**Database defaults**](#edit-database-defaults) -- [rladmin tune cluster]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/tune#tune-cluster" >}}): +- [rladmin tune cluster](/content/operate/rs/7.8/references/cli-utilities/rladmin/tune.md#tune-cluster): ```sh rladmin tune cluster default_redis_version ``` -- [Update cluster policy]({{< relref "/operate/rs/7.8/references/rest-api/requests/cluster/policy#put-cluster-policy" >}}) REST API request: +- [Update cluster policy](/content/operate/rs/7.8/references/rest-api/requests/cluster/policy.md#put-cluster-policy) REST API request: ```sh PUT /v1/cluster/policy @@ -147,19 +147,19 @@ To configure the Redis database version, use one of the following methods: ### Internode encryption -Enable [internode encryption]({{< relref "/operate/rs/7.8/security/encryption/internode-encryption" >}}) to encrypt data in transit between nodes for new databases by default. +Enable [internode encryption](/content/operate/rs/7.8/security/encryption/internode-encryption.md) to encrypt data in transit between nodes for new databases by default. To enable or turn off internode encryption by default, use one of the following methods: - Cluster Manager UI: Edit **Internode Encryption** in [**Database defaults**](#edit-database-defaults) -- [rladmin tune cluster]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/tune#tune-cluster" >}}): +- [rladmin tune cluster](/content/operate/rs/7.8/references/cli-utilities/rladmin/tune.md#tune-cluster): ```sh rladmin tune cluster data_internode_encryption { enabled | disabled } ``` -- [Update cluster policy]({{< relref "/operate/rs/7.8/references/rest-api/requests/cluster/policy#put-cluster-policy" >}}) REST API request: +- [Update cluster policy](/content/operate/rs/7.8/references/rest-api/requests/cluster/policy.md#put-cluster-policy) REST API request: ```sh PUT /v1/cluster/policy diff --git a/content/operate/rs/7.8/databases/configure/db-tags.md b/content/operate/rs/7.8/databases/configure/db-tags.md index 8b84658dc0..4e7596e58c 100644 --- a/content/operate/rs/7.8/databases/configure/db-tags.md +++ b/content/operate/rs/7.8/databases/configure/db-tags.md @@ -20,7 +20,7 @@ The **Databases** screen shows tags for each database in the list. ## Add database tags -You can add tags when you [create a database]({{}}) or [edit an existing database's configuration]({{}}). +You can add tags when you [create a database](/content/operate/rs/7.8/databases/create.md) or [edit an existing database's configuration](/content/operate/rs/7.8/databases/configure/_index.md#edit-database-settings). To add tags to a database using the Cluster Manager UI: diff --git a/content/operate/rs/7.8/databases/configure/db-upgrade.md b/content/operate/rs/7.8/databases/configure/db-upgrade.md index f5f98c5f18..deca9f1288 100644 --- a/content/operate/rs/7.8/databases/configure/db-upgrade.md +++ b/content/operate/rs/7.8/databases/configure/db-upgrade.md @@ -34,13 +34,13 @@ To change the number of shards upgraded in parallel during database upgrades, us - Cluster Manager UI – Edit **Database shard parallel upgrade** in [**Upgrade configuration**](#edit-upgrade-configuration) -- [rladmin tune cluster]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/tune#tune-cluster" >}}): +- [rladmin tune cluster](/content/operate/rs/7.8/references/cli-utilities/rladmin/tune.md#tune-cluster): ```sh rladmin tune cluster parallel_shards_upgrade { all | } ``` -- [Update cluster policy]({{< relref "/operate/rs/7.8/references/rest-api/requests/cluster/policy#put-cluster-policy" >}}) REST API request: +- [Update cluster policy](/content/operate/rs/7.8/references/rest-api/requests/cluster/policy.md#put-cluster-policy) REST API request: ```sh PUT /v1/cluster/policy @@ -55,13 +55,13 @@ To change `resp3_default` to `disabled`, use one of the following methods: - Cluster Manager UI – Edit **RESP3 support** in [**Upgrade configuration**](#edit-upgrade-configuration) -- [rladmin tune cluster]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/tune#tune-cluster" >}}): +- [rladmin tune cluster](/content/operate/rs/7.8/references/cli-utilities/rladmin/tune.md#tune-cluster): ```sh rladmin tune cluster resp3_default { enabled | disabled } ``` -- [Update cluster policy]({{< relref "/operate/rs/7.8/references/rest-api/requests/cluster/policy#put-cluster-policy" >}}) REST API request: +- [Update cluster policy](/content/operate/rs/7.8/references/rest-api/requests/cluster/policy.md#put-cluster-policy) REST API request: ```sh PUT /v1/cluster/policy diff --git a/content/operate/rs/7.8/databases/configure/oss-cluster-api.md b/content/operate/rs/7.8/databases/configure/oss-cluster-api.md index 6ed12ac328..b52153191a 100644 --- a/content/operate/rs/7.8/databases/configure/oss-cluster-api.md +++ b/content/operate/rs/7.8/databases/configure/oss-cluster-api.md @@ -11,7 +11,7 @@ weight: 20 url: '/operate/rs/7.8/databases/configure/oss-cluster-api/' --- -Review [OSS Cluster API]({{< relref "/operate/rs/7.8/clusters/optimize/oss-cluster-api" >}}) to determine if you should enable this feature for your database. +Review [OSS Cluster API](/content/operate/rs/7.8/clusters/optimize/oss-cluster-api.md) to determine if you should enable this feature for your database. ## Prerequisites @@ -19,13 +19,13 @@ The OSS Cluster API is supported only when a database meets specific criteria. The database must: -- Use the standard [hashing policy]({{< relref "/operate/rs/7.8/databases/durability-ha/clustering#supported-hashing-policies" >}}). -- Have the [proxy policy]({{< relref "/operate/rs/7.8/databases/configure/proxy-policy" >}}) set to either _All primary shards_ or _All nodes_. +- Use the standard [hashing policy](/content/operate/rs/7.8/databases/durability-ha/clustering.md#supported-hashing-policies). +- Have the [proxy policy](/content/operate/rs/7.8/databases/configure/proxy-policy.md) set to either _All primary shards_ or _All nodes_. In addition, the database must _not_: - Use node `include` or `exclude` in the proxy policy. -- Use [RediSearch]({{< relref "/operate/oss_and_stack/stack-with-enterprise/search" >}}), [RedisTimeSeries]({{< relref "/operate/oss_and_stack/stack-with-enterprise/timeseries" >}}), or [RedisGears]({{< relref "/operate/oss_and_stack/stack-with-enterprise/deprecated-features/gears-v1" >}}) modules. +- Use [RediSearch](/content/operate/oss_and_stack/stack-with-enterprise/search/_index.md), [RedisTimeSeries](/content/operate/oss_and_stack/stack-with-enterprise/timeseries/_index.md), or [RedisGears](/content/operate/oss_and_stack/stack-with-enterprise/deprecated-features/gears-v1/_index.md) modules. The OSS Cluster API setting applies to individual databases instead of the entire cluster. @@ -37,7 +37,7 @@ When you enable OSS Cluster API support for an existing database, the change app ### Cluster Manager UI method -When you use the Cluster Manager UI to enable the OSS Cluster API, it automatically configures the [prerequisites]({{< relref "/operate/rs/7.8/databases/configure/oss-cluster-api#prerequisites" >}}). +When you use the Cluster Manager UI to enable the OSS Cluster API, it automatically configures the [prerequisites](/content/operate/rs/7.8/databases/configure/oss-cluster-api.md#prerequisites). To enable the OSS Cluster API for an existing database in the Cluster Manager UI: @@ -57,11 +57,11 @@ You can also use the Cluster Manager UI to enable the setting when creating a ne ### Command-line method -You can use the [`rladmin` utility]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/" >}}) to enable the OSS Cluster API for Redis Enterprise Software databases, including Replica Of databases. +You can use the [`rladmin` utility](/content/operate/rs/7.8/references/cli-utilities/rladmin/_index.md) to enable the OSS Cluster API for Redis Enterprise Software databases, including Replica Of databases. For Active-Active (CRDB) databases, [use the crdb-cli utility](#active-active-databases). -Ensure the [prerequisites]({{< relref "/operate/rs/7.8/databases/configure/oss-cluster-api#prerequisites" >}}) have been configured. Then, enable the OSS Cluster API for a Redis database from the command line: +Ensure the [prerequisites](/content/operate/rs/7.8/databases/configure/oss-cluster-api.md#prerequisites) have been configured. Then, enable the OSS Cluster API for a Redis database from the command line: ```sh $ rladmin tune db oss_cluster enabled @@ -78,7 +78,7 @@ The OSS Cluster API setting applies to the specified database only; it does not ### REST API method -You can enable the OSS Cluster API when you [create a database]({{}}) using the REST API: +You can enable the OSS Cluster API when you [create a database](/content/operate/rs/7.8/references/rest-api/requests/bdbs/_index.md#post-bdbs-v1) using the REST API: ```sh POST /v1/bdbs @@ -88,7 +88,7 @@ POST /v1/bdbs } ``` -To enable the OSS Cluster API for an existing database, you can use an [update database configuration]({{}}) REST API request: +To enable the OSS Cluster API for an existing database, you can use an [update database configuration](/content/operate/rs/7.8/references/rest-api/requests/bdbs/_index.md#put-bdbs) REST API request: ```sh PUT /v1/bdbs/ @@ -97,7 +97,7 @@ PUT /v1/bdbs/ ### Active-Active databases -The OSS Cluster API setting applies to all instances of the Active-Active database across participating clusters. To enable the OSS Cluster API for Active-Active databases, use the [Cluster Manager UI](#cluster-manager-ui) or the [`crdb-cli`]({{}}) utility. +The OSS Cluster API setting applies to all instances of the Active-Active database across participating clusters. To enable the OSS Cluster API for Active-Active databases, use the [Cluster Manager UI](#cluster-manager-ui) or the [`crdb-cli`](/content/operate/rs/7.8/references/cli-utilities/crdb-cli/_index.md) utility. To create an Active-Active database and enable the OSS Cluster API with `crdb-cli`: @@ -111,7 +111,7 @@ $ crdb-cli crdb create --name \ --instance fqdn=,username=,password= ``` -See the [`crdb-cli crdb create`]({{}}) reference for more options. +See the [`crdb-cli crdb create`](/content/operate/rs/7.8/references/cli-utilities/crdb-cli/crdb/create.md) reference for more options. To enable the OSS Cluster API for an existing Active-Active database with `crdb-cli`: @@ -132,9 +132,9 @@ To enable the OSS Cluster API for an existing Active-Active database with `crdb- ## Change preferred IP type -By default, using [`CLUSTER SLOTS`]({{}}) and [`CLUSTER SHARDS`]({{}}) in a Redis Enterprise Software cluster exposes the internal IP addresses for databases with the OSS Cluster API enabled. +By default, using [`CLUSTER SLOTS`](/content/commands/cluster-slots.md) and [`CLUSTER SHARDS`](/content/commands/cluster-shards.md) in a Redis Enterprise Software cluster exposes the internal IP addresses for databases with the OSS Cluster API enabled. -To use external IP addresses instead of internal IP addresses, run the following [`rladmin tune db`]({{}}) command for each affected database: +To use external IP addresses instead of internal IP addresses, run the following [`rladmin tune db`](/content/operate/rs/references/cli-utilities/rladmin/tune.md#tune-db) command for each affected database: ```sh $ rladmin tune db db: oss_cluster_api_preferred_ip_type external @@ -166,6 +166,6 @@ When you turn off OSS Cluster API support for an existing database, the change a ## Multi-key command support When you enable the OSS Cluster API for a database, -[multi-key commands]({{< relref "/operate/rc/databases/configuration/clustering#multikey-operations" >}}) are only allowed when all keys are mapped to the same slot. +[multi-key commands](/content/operate/rc/databases/configuration/clustering.md#multikey-operations) are only allowed when all keys are mapped to the same slot. -To verify that your database meets this requirement, make sure that the `CLUSTER KEYSLOT` reply is the same for all keys affected by the multi-key command. To learn more, see [multi-key operations]({{< relref "/operate/rs/7.8/databases/durability-ha/clustering#multikey-operations" >}}). +To verify that your database meets this requirement, make sure that the `CLUSTER KEYSLOT` reply is the same for all keys affected by the multi-key command. To learn more, see [multi-key operations](/content/operate/rs/7.8/databases/durability-ha/clustering.md#multikey-operations). diff --git a/content/operate/rs/7.8/databases/configure/proxy-policy.md b/content/operate/rs/7.8/databases/configure/proxy-policy.md index be3a5bc748..fee1cacd66 100644 --- a/content/operate/rs/7.8/databases/configure/proxy-policy.md +++ b/content/operate/rs/7.8/databases/configure/proxy-policy.md @@ -23,14 +23,14 @@ A database can have one of the following proxy policies: | Proxy policy | Description | Recommended use cases | Advantages | Disadvantages | |--------------|-------------|-----------------------|-----------|-----------------| | Single | Only a single proxy is bound to the database. This is the default database configuration. | Most use cases without high traffic or load | Lower resource usage, fewer application-to-cluster connections | Higher latency, more network hops | -| All primary shards | Multiple proxies are bound to the database, one on each node that hosts a database primary shard. | Most use cases that require multiple endpoints, such as when using the [OSS Cluster API]({{}}) | Lower latency, fewer network hops, higher throughput | Higher resource usage, more application-to-proxy connections | -| All nodes | Multiple proxies are bound to the database, one on each node in the cluster, regardless of whether or not there is a shard from this database on the node. | When using [load balancers]({{}}) for environments without DNS | Higher throughput | Highest resource usage | +| All primary shards | Multiple proxies are bound to the database, one on each node that hosts a database primary shard. | Most use cases that require multiple endpoints, such as when using the [OSS Cluster API](/content/operate/rs/7.8/clusters/optimize/oss-cluster-api.md) | Lower latency, fewer network hops, higher throughput | Higher resource usage, more application-to-proxy connections | +| All nodes | Multiple proxies are bound to the database, one on each node in the cluster, regardless of whether or not there is a shard from this database on the node. | When using [load balancers](/content/operate/rs/7.8/networking/cluster-lba-setup.md) for environments without DNS | Higher throughput | Highest resource usage | ## View proxy policy -You can use the Cluster Manager UI, [`rladmin`]({{}}), or the [REST API]({{}}) to view proxy configuration settings. +You can use the Cluster Manager UI, [`rladmin`](/content/operate/rs/7.8/references/cli-utilities/rladmin/_index.md), or the [REST API](/content/operate/rs/7.8/references/rest-api/_index.md) to view proxy configuration settings. -The [`rladmin info cluster`]({{}}) command returns the current proxy policy for sharded and non-sharded (single shard) databases. +The [`rladmin info cluster`](/content/operate/rs/7.8/references/cli-utilities/rladmin/info.md#info-cluster) command returns the current proxy policy for sharded and non-sharded (single shard) databases. ```sh $ rladmin info cluster @@ -45,13 +45,12 @@ cluster configuration: You can use the [Cluster Manager UI](#cluster-manager-ui-method), the [REST API](#rest-api-method), or [`rladmin`](#command-line-method) to configure a database's proxy policy. -{{}} -Any configuration update that unbinds existing proxies can disconnect existing client connections. -{{}} +> [!WARNING] +> Any configuration update that unbinds existing proxies can disconnect existing client connections. ### Cluster Manager UI method -You can change a database's proxy policy when you [create]({{}}) or [edit]({{}}) a database using the Cluster Manager UI: +You can change a database's proxy policy when you [create](/content/operate/rs/7.8/databases/create.md) or [edit](/content/operate/rs/7.8/databases/configure/_index.md#edit-database-settings) a database using the Cluster Manager UI: 1. While in edit mode on the database's configuration screen, expand the **Clustering** section. @@ -61,7 +60,7 @@ You can change a database's proxy policy when you [create]({{}}) using the REST API: +You can specify a proxy policy when you [create a database](/content/operate/rs/7.8/references/rest-api/requests/bdbs/_index.md#post-bdbs-v1) using the REST API: ```sh POST /v1/bdbs @@ -71,7 +70,7 @@ POST /v1/bdbs } ``` -To change the proxy policy of an existing database and endpoint, you can use an [update database configuration]({{}}) REST API request: +To change the proxy policy of an existing database and endpoint, you can use an [update database configuration](/content/operate/rs/7.8/references/rest-api/requests/bdbs/_index.md#put-bdbs) REST API request: ```sh PUT /v1/bdbs/ @@ -83,7 +82,7 @@ PUT /v1/bdbs/ ### Command-line method -You can configure a database's proxy policy using [`rladmin bind`]({{}}). +You can configure a database's proxy policy using [`rladmin bind`](/content/operate/rs/7.8/references/cli-utilities/rladmin/bind.md). The following example changes the bind policy for a database named "db1" with an endpoint ID "1:1" to "All primary shards" proxy policy: @@ -97,10 +96,9 @@ The next command performs the same task using the database ID instead of the nam rladmin bind db db:1 endpoint 1:1 policy all-master-shards ``` -{{< note >}} -You can find the endpoint ID for the endpoint argument by running `rladmin status`. Look for the endpoint ID information under -the `ENDPOINT` section of the output. -{{< /note >}} +> [!NOTE] +> You can find the endpoint ID for the endpoint argument by running `rladmin status`. Look for the endpoint ID information under +> the `ENDPOINT` section of the output. ### Reapply policies after topology changes @@ -142,8 +140,7 @@ operations, configuring multiple active proxies may cause additional latency in operations as the shards and proxies are spread across multiple nodes in the cluster. -{{< note >}} -When the network on a single active proxy becomes the bottleneck, consider enabling multiple NIC support in Redis Software. With nodes that have multiple physical NICs (Network Interface Cards), you can configure Redis Software to separate internal and external traffic onto independent physical NICs. For more details, refer to [Multi-IP & IPv6]({{< relref "/operate/rs/7.8/networking/multi-ip-ipv6.md" >}}). -{{< /note >}} +> [!NOTE] +> When the network on a single active proxy becomes the bottleneck, consider enabling multiple NIC support in Redis Software. With nodes that have multiple physical NICs (Network Interface Cards), you can configure Redis Software to separate internal and external traffic onto independent physical NICs. For more details, refer to [Multi-IP & IPv6](/content/operate/rs/7.8/networking/multi-ip-ipv6.md). Having multiple proxies for a database can improve Redis Software's ability for fast failover in case of proxy or node failure. With multiple proxies for a database, a client doesn't need to wait for the cluster to spin up another proxy and a DNS change in most cases. Instead, the client uses the next IP address in the list to connect to another proxy. diff --git a/content/operate/rs/7.8/databases/configure/replica-ha.md b/content/operate/rs/7.8/databases/configure/replica-ha.md index 1f779d411c..34152f8104 100644 --- a/content/operate/rs/7.8/databases/configure/replica-ha.md +++ b/content/operate/rs/7.8/databases/configure/replica-ha.md @@ -12,7 +12,7 @@ weight: 50 url: '/operate/rs/7.8/databases/configure/replica-ha/' --- -When you enable [database replication]({{< relref "/operate/rs/7.8/databases/durability-ha/replication.md" >}}), +When you enable [database replication](/content/operate/rs/7.8/databases/durability-ha/replication.md), Redis Enterprise Software creates a replica of each primary shard. The replica shard will always be located on a different node than the primary shard to make your data highly available. If the primary shard fails or if the node hosting the primary shard fails, then the replica is promoted to primary. @@ -26,7 +26,7 @@ the former replica shard which has been promoted to primary and a new replica sh An available node: -1. Meets replica migration requirements, such as [rack-awareness]({{< relref "/operate/rs/7.8/clusters/configure/rack-zone-awareness.md" >}}). +1. Meets replica migration requirements, such as [rack-awareness](/content/operate/rs/7.8/clusters/configure/rack-zone-awareness.md). 1. Has enough available RAM to store the replica shard. 1. Does not also contain the primary shard. @@ -43,10 +43,9 @@ For example: 1. If replica HA is enabled, a new replica shard is created on an available node. 1. The data from the primary shard is replicated to the new replica shard. -{{< note >}} -- Replica HA follows all prerequisites of replica migration, such as [rack-awareness]({{< relref "/operate/rs/7.8/clusters/configure/rack-zone-awareness.md" >}}). -- Replica HA migrates as many shards as possible based on available DRAM in the target node. When no DRAM is available, replica HA stops migrating replica shards to that node. -{{< /note >}} +> [!NOTE] +> - Replica HA follows all prerequisites of replica migration, such as [rack-awareness](/content/operate/rs/7.8/clusters/configure/rack-zone-awareness.md). +> - Replica HA migrates as many shards as possible based on available DRAM in the target node. When no DRAM is available, replica HA stops migrating replica shards to that node. ## Configure high availability for replica shards @@ -65,21 +64,20 @@ To use replication without replication high availability, clear the **Replica hi You can also enable or turn off replica high availability for a database using `rladmin` or the REST API. -{{< note >}} -For Active-Active databases, replica HA is enabled for the database by default to make sure that replica shards are available for Active-Active replication. -{{< /note >}} +> [!NOTE] +> For Active-Active databases, replica HA is enabled for the database by default to make sure that replica shards are available for Active-Active replication. ### Configure cluster policy for replica HA To enable or turn off replica high availability by default for the entire cluster, use one of the following methods: -- [rladmin tune cluster]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/tune#tune-cluster" >}}): +- [rladmin tune cluster](/content/operate/rs/7.8/references/cli-utilities/rladmin/tune.md#tune-cluster): ```sh rladmin tune cluster slave_ha { enabled | disabled } ``` -- [Update cluster policy]({{< relref "/operate/rs/7.8/references/rest-api/requests/cluster/policy#put-cluster-policy" >}}) REST API request: +- [Update cluster policy](/content/operate/rs/7.8/references/rest-api/requests/cluster/policy.md#put-cluster-policy) REST API request: ```sh PUT /v1/cluster/policy @@ -109,7 +107,8 @@ rladmin info cluster By default, replica HA has a 10-minute grace period after node failure and before new replica shards are created. -{{}}The default grace period is 30 minutes for containerized applications using [Redis Enterprise Software for Kubernetes]({{< relref "/operate/kubernetes/" >}}).{{}} +> [!NOTE] +> The default grace period is 30 minutes for containerized applications using [Redis Enterprise Software for Kubernetes](/content/operate/kubernetes/_index.md). To configure this grace period from rladmin, run: @@ -147,7 +146,7 @@ database in the cluster until the cooldown period ends. The default is one hour. After a database is migrated with replica HA, it cannot go through another migration due to another node failure until the cooldown period for the database (`slave_ha_bdb_cooldown_period`) ends. The default is two hours. -To configure cooldown periods, use [`rladmin tune cluster`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/tune#tune-cluster" >}}): +To configure cooldown periods, use [`rladmin tune cluster`](/content/operate/rs/7.8/references/cli-utilities/rladmin/tune.md#tune-cluster): - For the cluster: diff --git a/content/operate/rs/7.8/databases/configure/shard-placement.md b/content/operate/rs/7.8/databases/configure/shard-placement.md index 05fe8d8d13..fe88b63d3e 100644 --- a/content/operate/rs/7.8/databases/configure/shard-placement.md +++ b/content/operate/rs/7.8/databases/configure/shard-placement.md @@ -12,7 +12,7 @@ url: '/operate/rs/7.8/databases/configure/shard-placement/' --- In Redis Enterprise Software , the location of master and replica shards on the cluster nodes can impact the database and node performance. Master shards and their corresponding replica shards are always placed on separate nodes for data resiliency. -The [shard placement policy]({{< relref "/operate/rs/7.8/databases/memory-performance/shard-placement-policy.md" >}}) helps to maintain optimal performance and resiliency. +The [shard placement policy](/content/operate/rs/7.8/databases/memory-performance/shard-placement-policy.md) helps to maintain optimal performance and resiliency. {{< embed-md "shard-placement-intro.md" >}} diff --git a/content/operate/rs/7.8/databases/connect/_index.md b/content/operate/rs/7.8/databases/connect/_index.md index bbe659ee2a..99e50c2cc5 100644 --- a/content/operate/rs/7.8/databases/connect/_index.md +++ b/content/operate/rs/7.8/databases/connect/_index.md @@ -12,27 +12,27 @@ weight: 20 url: '/operate/rs/7.8/databases/connect/' --- -After you [set up a cluster]({{< relref "/operate/rs/7.8/clusters/new-cluster-setup" >}}) and [create a Redis database]({{< relref "/operate/rs/7.8/databases/create" >}}), you can connect to your database. +After you [set up a cluster](/content/operate/rs/7.8/clusters/new-cluster-setup.md) and [create a Redis database](/content/operate/rs/7.8/databases/create.md), you can connect to your database. To connect to your database, you need the database endpoint, which includes the cluster name (FQDN) and the database port. To view and copy public and private endpoints for a database in the cluster, see the database’s **Configuration > General** section in the Cluster Manager UI. {{View public and private endpoints from the General section of the database's Configuration screen.}} -If you try to connect with the FQDN, and the database does not respond, try connecting with the IP address. If this succeeds, DNS is not properly configured. To set up DNS, see [Configure cluster DNS]({{< relref "/operate/rs/7.8/networking/cluster-dns" >}}). +If you try to connect with the FQDN, and the database does not respond, try connecting with the IP address. If this succeeds, DNS is not properly configured. To set up DNS, see [Configure cluster DNS](/content/operate/rs/7.8/networking/cluster-dns.md). -If you want to secure your connection, set up [TLS]({{< relref "/operate/rs/7.8/security/encryption/tls/" >}}). +If you want to secure your connection, set up [TLS](/content/operate/rs/7.8/security/encryption/tls/_index.md). ## Connect to a database Use one of the following connection methods to connect to your database: -- [`redis-cli`]({{< relref "/operate/rs/7.8/references/cli-utilities/redis-cli/" >}}) utility +- [`redis-cli`](/content/operate/rs/7.8/references/cli-utilities/redis-cli/_index.md) utility - [Redis Insight](https://redis.com/redis-enterprise/redis-insight/) -- [Redis client]({{< relref "/develop/clients" >}}) for your preferred programming language +- [Redis client](/content/develop/clients/_index.md) for your preferred programming language -For examples, see [Test client connection]({{< relref "/operate/rs/7.8/databases/connect/test-client-connectivity" >}}). +For examples, see [Test client connection](/content/operate/rs/7.8/databases/connect/test-client-connectivity.md). ## Continue learning with Redis University diff --git a/content/operate/rs/7.8/databases/connect/supported-clients-browsers.md b/content/operate/rs/7.8/databases/connect/supported-clients-browsers.md index aa5235ec2e..3c49762ecb 100644 --- a/content/operate/rs/7.8/databases/connect/supported-clients-browsers.md +++ b/content/operate/rs/7.8/databases/connect/supported-clients-browsers.md @@ -13,27 +13,27 @@ You can connect to Redis Enterprise Software databases programmatically using cl ## Redis client libraries -To connect an application to a Redis database hosted by Redis Enterprise Software, use a [client library]({{< relref "/develop/clients" >}}) appropriate for your programming language. +To connect an application to a Redis database hosted by Redis Enterprise Software, use a [client library](/content/develop/clients/_index.md) appropriate for your programming language. You can also use the `redis-cli` utility to connect to a database from the command line. -For examples of each approach, see the [Redis Enterprise Software quickstart]({{< relref "/operate/rs/7.8/installing-upgrading/quickstarts/redis-enterprise-software-quickstart" >}}). +For examples of each approach, see the [Redis Enterprise Software quickstart](/content/operate/rs/7.8/installing-upgrading/quickstarts/redis-enterprise-software-quickstart.md). Note: You cannot use client libraries to configure Redis Enterprise Software. Instead, use: -- The Redis Enterprise Software [Cluster Manager UI]({{< relref "/operate/rs/7.8/installing-upgrading/quickstarts/redis-enterprise-software-quickstart" >}}) -- The [REST API]({{< relref "/operate/rs/7.8/references/rest-api" >}}) -- Command-line utilities, such as [`rladmin`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin" >}}) +- The Redis Enterprise Software [Cluster Manager UI](/content/operate/rs/7.8/installing-upgrading/quickstarts/redis-enterprise-software-quickstart.md) +- The [REST API](/content/operate/rs/7.8/references/rest-api/_index.md) +- Command-line utilities, such as [`rladmin`](/content/operate/rs/7.8/references/cli-utilities/rladmin/_index.md) ### Discovery service -We recommend the following clients when using a [discovery service]({{< relref "/operate/rs/7.8/databases/durability-ha/discovery-service.md" >}}) based on the Redis Sentinel API: +We recommend the following clients when using a [discovery service](/content/operate/rs/7.8/databases/durability-ha/discovery-service.md) based on the Redis Sentinel API: -- [redis-py]({{< relref "/develop/clients/redis-py" >}}) (Python client) -- [StackExchange.Redis]({{< relref "/develop/clients/dotnet" >}}) (.NET client) -- [Jedis]({{< relref "/develop/clients/jedis" >}}) (synchronous Java client) -- [Lettuce]({{< relref "/develop/clients/lettuce" >}}) (asynchronous Java client) -- [go-redis]({{< relref "/develop/clients/go" >}}) (Go client) +- [redis-py](/content/develop/clients/redis-py/_index.md) (Python client) +- [StackExchange.Redis](/content/develop/clients/dotnet/_index.md) (.NET client) +- [Jedis](/content/develop/clients/jedis/_index.md) (synchronous Java client) +- [Lettuce](/content/develop/clients/lettuce/_index.md) (asynchronous Java client) +- [go-redis](/content/develop/clients/go/_index.md) (Go client) - [Hiredis](https://github.com/redis/hiredis) (C client) If you need to use another client, you can use [Sentinel Tunnel](https://github.com/RedisLabs/sentinel_tunnel) diff --git a/content/operate/rs/7.8/databases/connect/test-client-connectivity.md b/content/operate/rs/7.8/databases/connect/test-client-connectivity.md index f79489c045..97a515ea18 100644 --- a/content/operate/rs/7.8/databases/connect/test-client-connectivity.md +++ b/content/operate/rs/7.8/databases/connect/test-client-connectivity.md @@ -16,7 +16,7 @@ database. To test client connectivity: -1. After you [create a Redis database]({{< relref "/operate/rs/7.8/databases/create" >}}), copy the database endpoint, which contains the cluster name (FQDN). +1. After you [create a Redis database](/content/operate/rs/7.8/databases/create.md), copy the database endpoint, which contains the cluster name (FQDN). To view and copy endpoints for a database in the cluster, see the database’s **Configuration > General** section in the Cluster Manager UI: @@ -29,7 +29,7 @@ To test client connectivity: endpoint using the IP address rather than the FQDN. If you succeed, then DNS is not properly configured. For additional details, see - [Configure cluster DNS]({{< relref "/operate/rs/7.8/networking/cluster-dns" >}}). + [Configure cluster DNS](/content/operate/rs/7.8/networking/cluster-dns.md). If any issues occur when testing database connections, [contact support](https://redis.com/company/support/). @@ -39,11 +39,11 @@ support](https://redis.com/company/support/). After you create a Redis database, you can connect to your database and store data using one of the following methods: -- [`redis-cli`]({{< relref "/operate/rs/7.8/references/cli-utilities/redis-cli" >}}), the built-in command-line tool +- [`redis-cli`](/content/operate/rs/7.8/references/cli-utilities/redis-cli/_index.md), the built-in command-line tool - [Redis Insight](https://redis.com/redis-enterprise/redis-insight/), a free Redis GUI that is available for macOS, Windows, and Linux -- An application using a Redis client library, such as [`redis-py`](https://github.com/redis/redis-py) for Python. See the [client list]({{< relref "/develop/clients" >}}) to view all Redis clients by language. +- An application using a Redis client library, such as [`redis-py`](https://github.com/redis/redis-py) for Python. See the [client list](/content/develop/clients/_index.md) to view all Redis clients by language. ### Connect with redis-cli @@ -57,23 +57,23 @@ OK "123" ``` -For more `redis-cli` connection examples, see the [`redis-cli` reference]({{< relref "/operate/rs/7.8/references/cli-utilities/redis-cli" >}}). +For more `redis-cli` connection examples, see the [`redis-cli` reference](/content/operate/rs/7.8/references/cli-utilities/redis-cli/_index.md). ### Connect with Redis Insight Redis Insight is a free Redis GUI that is available for macOS, Windows, and Linux. -1. [Install Redis Insight]({{< relref "/develop/tools/insight" >}}). +1. [Install Redis Insight](/content/develop/tools/insight/_index.md). 1. Open Redis Insight and select **Add Redis Database**. 1. Enter the host and port in the **Host** and **Port** fields. -1. Select **Use TLS** if [TLS]({{< relref "/operate/rs/7.8/security/encryption/tls" >}}) is set up. +1. Select **Use TLS** if [TLS](/content/operate/rs/7.8/security/encryption/tls/_index.md) is set up. 1. Select **Add Redis Database** to connect to the database. -See the [Redis Insight documentation]({{< relref "/develop/tools/insight" >}}) for more information. +See the [Redis Insight documentation](/content/develop/tools/insight/_index.md) for more information. ### Connect with Python diff --git a/content/operate/rs/7.8/databases/connect/troubleshooting-guide.md b/content/operate/rs/7.8/databases/connect/troubleshooting-guide.md index 3afcfb065b..73d284b3b2 100644 --- a/content/operate/rs/7.8/databases/connect/troubleshooting-guide.md +++ b/content/operate/rs/7.8/databases/connect/troubleshooting-guide.md @@ -93,7 +93,7 @@ Verify that time is synchronized with the time server using one of the following #### Review system logs -Review system logs including the syslog or journal for any error messages, warnings, or critical events. See [Logging]({{< relref "/operate/rs/7.8/clusters/logging" >}}) for more information. +Review system logs including the syslog or journal for any error messages, warnings, or critical events. See [Logging](/content/operate/rs/7.8/clusters/logging/_index.md) for more information. ## Identify issues caused by security hardening @@ -137,7 +137,7 @@ Review system logs including the syslog or journal for any error messages, warni rlcheck ``` -- Run [`rladmin status issues_only`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/status" >}}) and verify that no issues appear: +- Run [`rladmin status issues_only`](/content/operate/rs/7.8/references/cli-utilities/rladmin/status.md) and verify that no issues appear: ```sh $ rladmin status issues_only @@ -155,7 +155,7 @@ Review system logs including the syslog or journal for any error messages, warni ``` -- Run [`rladmin status shards`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/status#status-shards" >}}). For each shard, `USED_MEMORY` should be less than 25 GB. +- Run [`rladmin status shards`](/content/operate/rs/7.8/references/cli-utilities/rladmin/status.md#status-shards). For each shard, `USED_MEMORY` should be less than 25 GB. ```sh $ rladmin status shards @@ -164,7 +164,7 @@ Review system logs including the syslog or journal for any error messages, warni db:1 db1 redis:1 node:1 master 0-16383 2.13MB OK ``` -- Run [`rladmin cluster running_actions`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/cluster/running_actions" >}}) and confirm that no tasks are currently running (active): +- Run [`rladmin cluster running_actions`](/content/operate/rs/7.8/references/cli-utilities/rladmin/cluster/running_actions.md) and confirm that no tasks are currently running (active): ```sh $ rladmin cluster running_actions @@ -193,15 +193,15 @@ Review system logs including the syslog or journal for any error messages, warni #### Client application issues -1. To identify possible client application issues, test connectivity from the client machine to the database using [`redis-cli`]({{< relref "/operate/rs/7.8/references/cli-utilities/redis-cli" >}}): +1. To identify possible client application issues, test connectivity from the client machine to the database using [`redis-cli`](/content/operate/rs/7.8/references/cli-utilities/redis-cli/_index.md): - [`INFO`]({{< relref "/commands/info" >}}): + [`INFO`](/content/commands/info.md): ```sh redis-cli -h -p -a INFO ``` - [`PING`]({{< relref "/commands/ping" >}}): + [`PING`](/content/commands/ping.md): ```sh redis-cli -h -p -a PING @@ -249,7 +249,7 @@ Review system logs including the syslog or journal for any error messages, warni #### Server-side latency -- Make sure the database's used memory does not reach the configured database max memory limit. For more details, see [Database memory limits]({{< relref "/operate/rs/7.8/databases/memory-performance/memory-limit" >}}). +- Make sure the database's used memory does not reach the configured database max memory limit. For more details, see [Database memory limits](/content/operate/rs/7.8/databases/memory-performance/memory-limit.md). - Try to correlate the time of the latency with any surge in the following metrics: @@ -261,15 +261,15 @@ Review system logs including the syslog or journal for any error messages, warni - Expired keys -- Run [`SLOWLOG GET`]({{< relref "/commands/slowlog-get" >}}) using [`redis-cli`]({{< relref "/operate/rs/7.8/references/cli-utilities/redis-cli" >}}) to identify slow commands such as [`KEYS`]({{< relref "/commands/keys" >}}) or [`HGETALL`]({{< relref "/commands/hgetall" >}}: +- Run [`SLOWLOG GET`](/content/commands/slowlog-get.md) using [`redis-cli`](/content/operate/rs/7.8/references/cli-utilities/redis-cli/_index.md) to identify slow commands such as [`KEYS`](/content/commands/keys.md) or [`HGETALL`](/content/commands/hgetall.md): ```sh redis-cli -h -p -a SLOWLOG GET ``` - Consider using alternative commands such as [`SCAN`]({{< relref "/commands/scan" >}}), [`SSCAN`]({{< relref "/commands/sscan" >}}), [`HSCAN`]({{< relref "/commands/hscan" >}}) and [`ZSCAN`]({{< relref "/commands/zscan" >}}) + Consider using alternative commands such as [`SCAN`](/content/commands/scan.md), [`SSCAN`](/content/commands/sscan.md), [`HSCAN`](/content/commands/hscan.md) and [`ZSCAN`](/content/commands/zscan.md) -- Keys with large memory footprints can cause latency. To identify such keys, compare the keys returned by [`SLOWLOG GET`]({{< relref "/commands/slowlog-get" >}}) with the output of the following commands: +- Keys with large memory footprints can cause latency. To identify such keys, compare the keys returned by [`SLOWLOG GET`](/content/commands/slowlog-get.md) with the output of the following commands: ```sh redis-cli -h -p -a --memkeys @@ -281,9 +281,9 @@ Review system logs including the syslog or journal for any error messages, warni - For additional diagnostics, see: - - [Diagnosing latency issues]({{< relref "/operate/oss_and_stack/management/optimization/latency" >}}) + - [Diagnosing latency issues](/content/operate/oss_and_stack/management/optimization/latency.md) - - [View Redis slow log]({{< relref "/operate/rs/7.8/clusters/logging/redis-slow-log" >}}) + - [View Redis slow log](/content/operate/rs/7.8/clusters/logging/redis-slow-log.md) #### Client-side latency diff --git a/content/operate/rs/7.8/databases/create.md b/content/operate/rs/7.8/databases/create.md index 295070fe0c..c93a7f56d0 100644 --- a/content/operate/rs/7.8/databases/create.md +++ b/content/operate/rs/7.8/databases/create.md @@ -26,13 +26,12 @@ To create a new database: 1. If you did not specify a port number for the database, you can find the port number in the **Endpoint** field in the **Databases > Configuration > General** section. -1. [Test client connectivity]({{< relref "/operate/rs/7.8/databases/connect/test-client-connectivity" >}}). +1. [Test client connectivity](/content/operate/rs/7.8/databases/connect/test-client-connectivity.md). -{{< note >}} -For databases with Active-Active replication for geo-distributed locations, -see [Create an Active-Active database]({{< relref "/operate/rs/7.8/databases/active-active/create.md" >}}). To create and manage Active-Active databases, use the legacy UI. -{{< /note >}} +> [!NOTE] +> For databases with Active-Active replication for geo-distributed locations, +> see [Create an Active-Active database](/content/operate/rs/7.8/databases/active-active/create.md). To create and manage Active-Active databases, use the legacy UI. ## Quick database @@ -54,7 +53,7 @@ To quickly create a database and skip additional configuration options during in - Capabilities (previously modules) to enable -1. Optionally select **Full options** to configure [additional settings]({{< relref "/operate/rs/7.8/databases/configure#config-settings" >}}). +1. Optionally select **Full options** to configure [additional settings](/content/operate/rs/7.8/databases/configure/_index.md#config-settings). 1. Select **Create**. @@ -76,11 +75,11 @@ To create a new database and configure additional settings: - **Single Region** - - **Active-Active database** - Multiple participating Redis Enterprise clusters can host instances of the same [Active-Active database]({{< relref "/operate/rs/7.8/databases/active-active" >}}) in different geographic locations. Every instance can receive write operations, which are synchronized across all instances without conflict. + - **Active-Active database** - Multiple participating Redis Enterprise clusters can host instances of the same [Active-Active database](/content/operate/rs/7.8/databases/active-active/_index.md) in different geographic locations. Every instance can receive write operations, which are synchronized across all instances without conflict. - {{}} -For Active-Active databases, see [Create an Active-Active geo-replicated database]({{< relref "/operate/rs/7.8/databases/active-active/create" >}}). - {{}} + > [!NOTE] + > For Active-Active databases, see [Create an Active-Active geo-replicated database](/content/operate/rs/7.8/databases/active-active/create.md). + > 1. Select a Redis version from the **Database version** list. @@ -96,7 +95,7 @@ For Active-Active databases, see [Create an Active-Active geo-replicated databas 1. To configure additional database settings, expand each relevant section to make changes. - See [Configuration settings]({{< relref "/operate/rs/7.8/databases/configure#config-settings" >}}) for more information about each setting. + See [Configuration settings](/content/operate/rs/7.8/databases/configure/_index.md#config-settings) for more information about each setting. 1. Select **Create**. diff --git a/content/operate/rs/7.8/databases/durability-ha/_index.md b/content/operate/rs/7.8/databases/durability-ha/_index.md index b23440299e..3d4fe6c616 100644 --- a/content/operate/rs/7.8/databases/durability-ha/_index.md +++ b/content/operate/rs/7.8/databases/durability-ha/_index.md @@ -16,24 +16,24 @@ Redis Enterprise Software comes with several features that make your data more d ## Replication -When you [replicate your database]({{}}), each database instance (primary shard) is copied to a replica shard. When a primary shard fails, the cluster automatically promotes a replica shard to primary. +When you [replicate your database](/content/operate/rs/7.8/databases/durability-ha/replication.md), each database instance (primary shard) is copied to a replica shard. When a primary shard fails, the cluster automatically promotes a replica shard to primary. ## Clustering -[Clustering]({{}}) (or sharding) breaks your database into individual instances (shards) and spreads them across several nodes. Clustering lets you add resources to your cluster to scale your database and prevents node failures from causing availability loss. +[Clustering](/content/operate/rs/7.8/databases/durability-ha/clustering.md) (or sharding) breaks your database into individual instances (shards) and spreads them across several nodes. Clustering lets you add resources to your cluster to scale your database and prevents node failures from causing availability loss. ## Database persistence -[Database persistence]({{}}) gives your database durability against process or server failures by saving data to disk at set intervals. +[Database persistence](/content/operate/rs/7.8/databases/configure/database-persistence.md) gives your database durability against process or server failures by saving data to disk at set intervals. ## Active-Active geo-distributed replication -[Active-Active Redis Enterprise databases]({{}}) allow reading and writing to the same dataset from multiple clusters in different geographic locations. This increases the durability of your database by reducing the likelihood of data or availability loss. It also reduces data access latency by serving requests from the nearest cluster. +[Active-Active Redis Enterprise databases](/content/operate/rs/7.8/databases/active-active/_index.md) allow reading and writing to the same dataset from multiple clusters in different geographic locations. This increases the durability of your database by reducing the likelihood of data or availability loss. It also reduces data access latency by serving requests from the nearest cluster. ## Rack-zone awareness -[Rack-zone awareness]({{}}) maps each node in your Redis Enterprise cluster to a physical rack or logical zone. The cluster uses this information to distribute primary shards and their replica shards in different racks or zones. This ensures data availability if a rack or zone fails. +[Rack-zone awareness](/content/operate/rs/7.8/clusters/configure/rack-zone-awareness.md) maps each node in your Redis Enterprise cluster to a physical rack or logical zone. The cluster uses this information to distribute primary shards and their replica shards in different racks or zones. This ensures data availability if a rack or zone fails. ## Discovery service -The [discovery service]({{}}) provides an IP-based connection management service used when connecting to Redis Enterprise Software databases. It lets your application discover which node hosts the database endpoint. The discovery service API complies with the [Redis Sentinel API]({{< relref "/operate/oss_and_stack/management/sentinel" >}}#sentinel-api). +The [discovery service](/content/operate/rs/7.8/databases/durability-ha/discovery-service.md) provides an IP-based connection management service used when connecting to Redis Enterprise Software databases. It lets your application discover which node hosts the database endpoint. The discovery service API complies with the [Redis Sentinel API](/content/operate/oss_and_stack/management/sentinel.md#sentinel-api). diff --git a/content/operate/rs/7.8/databases/durability-ha/clustering.md b/content/operate/rs/7.8/databases/durability-ha/clustering.md index 2e7bce7053..cc95ee1668 100644 --- a/content/operate/rs/7.8/databases/durability-ha/clustering.md +++ b/content/operate/rs/7.8/databases/durability-ha/clustering.md @@ -62,7 +62,7 @@ is 3, you can increase the number of shards to 6, 9, or 12. ### Standard hashing policy -When using the standard hashing policy, a clustered Redis Enterprise database behaves similarly to a standard [Redis Open Source cluster]({{< relref "/operate/oss_and_stack/reference/cluster-spec" >}}#hash-tags), except when using multiple hash tags in a key's name. We recommend using only a single hash tag in a key name for hashing in Redis Enterprise. +When using the standard hashing policy, a clustered Redis Enterprise database behaves similarly to a standard [Redis Open Source cluster](/content/operate/oss_and_stack/reference/cluster-spec.md#hash-tags), except when using multiple hash tags in a key's name. We recommend using only a single hash tag in a key name for hashing in Redis Enterprise. - **Keys with a hash tag**: a key's hash tag is any substring between `{` and `}` in the key's name. When a key's name @@ -135,11 +135,10 @@ Examples of such changes include: - Adding new rules in the custom hashing policy. - Deleting rules from the custom hashing policy. -{{< note >}} -The recommended workaround for updates that are not enabled, -or require flushing the database, -is to back up the database and import the data to a newly configured database. -{{< /note >}} +> [!NOTE] +> The recommended workaround for updates that are not enabled, +> or require flushing the database, +> is to back up the database and import the data to a newly configured database. ## Multi-key operations {#multikey-operations} @@ -156,14 +155,14 @@ the following limitations: Commands that affect all keys or keys that match a specified pattern are allowed in a clustered database, for example: FLUSHDB, FLUSHALL, KEYS - {{< note >}} -When using these commands in a sharded setup, -the command is distributed across multiple shards -and the responses from all shards are combined into a single response. - {{< /note >}} + > [!NOTE] + > When using these commands in a sharded setup, + > the command is distributed across multiple shards + > and the responses from all shards are combined into a single response. + > -- **Geo commands**: For the [GEORADIUS]({{< relref "/commands/georadius" >}}) and - [GEORADIUSBYMEMBER]({{< relref "/commands/georadiusbymember" >}}) commands, the +- **Geo commands**: For the [GEORADIUS](/content/commands/georadius.md) and + [GEORADIUSBYMEMBER](/content/commands/georadiusbymember.md) commands, the STORE and STOREDIST options can only be used when all affected keys reside in the same slot. - **Transactions**: All operations within a WATCH / MULTI / EXEC block diff --git a/content/operate/rs/7.8/databases/durability-ha/consistency.md b/content/operate/rs/7.8/databases/durability-ha/consistency.md index 9129ec69ec..eb54095701 100644 --- a/content/operate/rs/7.8/databases/durability-ha/consistency.md +++ b/content/operate/rs/7.8/databases/durability-ha/consistency.md @@ -12,7 +12,7 @@ url: '/operate/rs/7.8/databases/durability-ha/consistency/' --- Redis Enterprise Software comes with the ability to replicate data to another database instance for high availability and persist in-memory data on -disk permanently for durability. With the [`WAIT`]({{}}) command, you can +disk permanently for durability. With the [`WAIT`](/content/commands/wait.md) command, you can control the consistency and durability guarantees for the replicated and persisted database. @@ -33,7 +33,7 @@ Any updates that are issued to the database are typically performed with the fol ## Blocking write operation on replication -With the [`WAIT`]({{}}) or [`WAITAOF`]({{}}) commands, applications can ask to wait for +With the [`WAIT`](/content/commands/wait.md) or [`WAITAOF`](/content/commands/waitaof.md) commands, applications can ask to wait for acknowledgments only after replication or persistence is confirmed on the replica. The flow of a write operation with `WAIT` or `WAITAOF` is: @@ -49,4 +49,4 @@ The application only gets the acknowledgment from the write after durability is The `WAIT` command always returns the number of replicas that acknowledged the write commands sent by the current client before the `WAIT` command, both in the case where the specified number of replicas are reached, or when the timeout is reached. In Redis Enterprise Software, the number of replicas for HA enabled databases is always 1. -See the [`WAITAOF`]({{}}) command for details for enhanced data safety and durability capabilities introduced with Redis 7.2. +See the [`WAITAOF`](/content/commands/waitaof.md) command for details for enhanced data safety and durability capabilities introduced with Redis 7.2. diff --git a/content/operate/rs/7.8/databases/durability-ha/discovery-service.md b/content/operate/rs/7.8/databases/durability-ha/discovery-service.md index 8c59c57d58..b86166b8f1 100644 --- a/content/operate/rs/7.8/databases/durability-ha/discovery-service.md +++ b/content/operate/rs/7.8/databases/durability-ha/discovery-service.md @@ -31,7 +31,7 @@ connecting to databases. The Discovery Service is available for querying on each node of the cluster, listening on port 8001. To employ it, your application utilizes a [Redis Sentinel enabled client -library]({{< relref "/operate/rs/7.8/databases/connect/supported-clients-browsers.md" >}}) +library](/content/operate/rs/7.8/databases/connect/supported-clients-browsers.md) to connect to the Discovery Service and request the endpoint for the given database. The Discovery Service replies with the database's endpoint for that database. In case of a node failure, the Discovery @@ -82,26 +82,24 @@ $ ./redis-cli -p 8001 It is important to note that, the Discovery Service is not a full implementation of the [Redis Sentinel -protocol]({{< relref "/operate/oss_and_stack/management/sentinel" >}}). There are aspects of the +protocol](/content/operate/oss_and_stack/management/sentinel.md). There are aspects of the protocol that are not applicable or would be duplication with existing technology in Redis Enterprise Software. The Discovery Service implements only the parts required to provide applications with easy High Availability, be compatible with the protocol, and not rely on DNS to derive which node in the cluster to communicate with. -{{< note >}} -To use Redis Sentinel, every database name must be unique across the cluster. -{{< /note >}} +> [!NOTE] +> To use Redis Sentinel, every database name must be unique across the cluster. ## Redis client support -We recommend these clients that are tested for use with the [Discovery Service]({{< relref "/operate/rs/7.8/databases/durability-ha/discovery-service.md" >}}) that uses the Redis Sentinel API: +We recommend these clients that are tested for use with the [Discovery Service](/content/operate/rs/7.8/databases/durability-ha/discovery-service.md) that uses the Redis Sentinel API: {{< embed-md "discovery-clients.md" >}} -{{< note >}} -Redis Sentinel API can return endpoints for both master and replica -endpoints. -Discovery Service only supports master endpoints and does not -support returning replica endpoints for a database. -{{< /note >}} +> [!NOTE] +> Redis Sentinel API can return endpoints for both master and replica +> endpoints. +> Discovery Service only supports master endpoints and does not +> support returning replica endpoints for a database. diff --git a/content/operate/rs/7.8/databases/durability-ha/replication.md b/content/operate/rs/7.8/databases/durability-ha/replication.md index 5bc0698c1b..d014c91c11 100644 --- a/content/operate/rs/7.8/databases/durability-ha/replication.md +++ b/content/operate/rs/7.8/databases/durability-ha/replication.md @@ -22,14 +22,13 @@ guarantees that data is served with minimal interruption. You can tune your high availability configuration with: - [Rack/Zone -Awareness]({{< relref "/operate/rs/7.8/clusters/configure/rack-zone-awareness.md" >}}) - When rack-zone awareness is used additional logic ensures that master and replica shards never share the same rack, thus ensuring availability even under loss of an entire rack. -- [High Availability for Replica Shards]({{< relref "/operate/rs/7.8/databases/configure/replica-ha.md" >}}) - When high availability +Awareness](/content/operate/rs/7.8/clusters/configure/rack-zone-awareness.md) - When rack-zone awareness is used additional logic ensures that master and replica shards never share the same rack, thus ensuring availability even under loss of an entire rack. +- [High Availability for Replica Shards](/content/operate/rs/7.8/databases/configure/replica-ha.md) - When high availability for replica shards is used, the replica shard is automatically migrated on node failover to maintain high availability. -{{< warning >}} -Enabling replication has implications for the total database size, -as explained in [Database memory limits]({{< relref "/operate/rs/7.8/databases/memory-performance/memory-limit.md" >}}). -{{< /warning >}} +> [!WARNING] +> Enabling replication has implications for the total database size, +> as explained in [Database memory limits](/content/operate/rs/7.8/databases/memory-performance/memory-limit.md). ## Auto Tiering replication considerations @@ -54,16 +53,15 @@ The recommended sequential replication configuration is two, i.e.: rladmin tune cluster max_redis_forks 1 max_slave_full_syncs 1 ``` -{{< note >}} -This means that at any given time, -only one primary and one replica can be part of a full sync replication process. -{{< /note >}} +> [!NOTE] +> This means that at any given time, +> only one primary and one replica can be part of a full sync replication process. ## Database replication backlog -Redis databases that use [replication for high availability]({{< relref "/operate/rs/7.8/databases/durability-ha/replication.md" >}}) maintain a replication backlog (per shard) to synchronize the primary and replica shards of a database. +Redis databases that use [replication for high availability](/content/operate/rs/7.8/databases/durability-ha/replication.md) maintain a replication backlog (per shard) to synchronize the primary and replica shards of a database. By default, the replication backlog is set to one percent (1%) of the database size divided by the database number of shards and ranges between 1MB to 250MB per shard. -Use the [`rladmin`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin" >}}) and the [`crdb-cli`]({{< relref "/operate/rs/7.8/references/cli-utilities/crdb-cli" >}}) utilities to control the size of the replication backlog. You can set it to `auto` or set a specific size. +Use the [`rladmin`](/content/operate/rs/7.8/references/cli-utilities/rladmin/_index.md) and the [`crdb-cli`](/content/operate/rs/7.8/references/cli-utilities/crdb-cli/_index.md) utilities to control the size of the replication backlog. You can set it to `auto` or set a specific size. The syntax varies between regular and Active-Active databases. @@ -81,7 +79,7 @@ crdb-cli crdb update --crdb-guid --default-db-config "{\"repl_backlo In addition to the database replication backlog, Active-Active databases maintain a backlog (per shard) to synchronize the database instances between clusters. By default, the Active-Active replication backlog is set to one percent (1%) of the database size divided by the database number of shards, and ranges between 1MB to 250MB per shard. -Use the [`crdb-cli`]({{< relref "/operate/rs/7.8/references/cli-utilities/crdb-cli" >}}) utility to control the size of the CRDT replication backlog. You can set it to `auto` or set a specific size: +Use the [`crdb-cli`](/content/operate/rs/7.8/references/cli-utilities/crdb-cli/_index.md) utility to control the size of the CRDT replication backlog. You can set it to `auto` or set a specific size: ```text crdb-cli crdb update --crdb-guid --default-db-config "{\"crdt_repl_backlog_size\": }" @@ -89,7 +87,7 @@ crdb-cli crdb update --crdb-guid --default-db-config "{\"crdt_repl_b **For Redis Software versions earlier than 6.0.20:** The replication backlog and the CRDT replication backlog defaults are set to 1MB and cannot be set dynamically with 'auto' mode. -To control the size of the replication log, use [`rladmin`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin" >}}) to tune the local database instance in each cluster. +To control the size of the replication log, use [`rladmin`](/content/operate/rs/7.8/references/cli-utilities/rladmin/_index.md) to tune the local database instance in each cluster. ```text rladmin tune db repl_backlog ``` diff --git a/content/operate/rs/7.8/databases/import-export/export-data.md b/content/operate/rs/7.8/databases/import-export/export-data.md index c91a9e7ffa..7b15253fc8 100644 --- a/content/operate/rs/7.8/databases/import-export/export-data.md +++ b/content/operate/rs/7.8/databases/import-export/export-data.md @@ -51,7 +51,7 @@ To export data from a database using the Cluster Manager UI: Data can be exported to a local mount point, transferred to [a URI](https://en.wikipedia.org/wiki/Uniform_Resource_Identifier) using FTP/SFTP, or stored on cloud provider storage. -When saved to a local mount point or a cloud provider, export locations need to be available to [the group and user]({{< relref "/operate/rs/7.8/installing-upgrading/install/customize-user-and-group.md" >}}) running Redis Enterprise Software, `redislabs:redislabs` by default. +When saved to a local mount point or a cloud provider, export locations need to be available to [the group and user](/content/operate/rs/7.8/installing-upgrading/install/customize-user-and-group.md) running Redis Enterprise Software, `redislabs:redislabs` by default. Redis Enterprise Software needs the ability to view permissions and update objects in the storage location. Implementation details vary according to the provider and your configuration. To learn more, consult the provider's documentation. @@ -165,7 +165,7 @@ You can also connect to a storage service that uses the S3 protocol but is not h To connect to an S3-compatible storage location: -1. Configure the S3 URL with [`rladmin cluster config`]({{}}): +1. Configure the S3 URL with [`rladmin cluster config`](/content/operate/rs/7.8/references/cli-utilities/rladmin/cluster/config.md): ```sh rladmin cluster config s3_url diff --git a/content/operate/rs/7.8/databases/import-export/flush.md b/content/operate/rs/7.8/databases/import-export/flush.md index a9801e13bf..bbcf78f542 100644 --- a/content/operate/rs/7.8/databases/import-export/flush.md +++ b/content/operate/rs/7.8/databases/import-export/flush.md @@ -17,10 +17,9 @@ you can flush the data from the database. You can use the Cluster Manager UI to flush data from Active-Active databases. -{{< warning title="Data Loss Warning" >}} -The flush command deletes ALL in-memory and persistence data in the database. -We recommend that you [back up your database]({{< relref "/operate/rs/7.8/databases/import-export/schedule-backups.md" >}}) before you flush the data. -{{< /warning >}} +> [!WARNING] Data Loss Warning +> The flush command deletes ALL in-memory and persistence data in the database. +> We recommend that you [back up your database](/content/operate/rs/7.8/databases/import-export/schedule-backups.md) before you flush the data. ## Flush data from a database @@ -38,18 +37,16 @@ Example: redis-cli -h redis-12345.cluster.local -p 9443 -a xyz flushall ``` -{{< note >}} -Port 9443 is the default [port configuration]({{< relref "/operate/rs/7.8/networking/port-configurations#https://docs.redis.com/latest/rs/networking/port-configurations#ports-and-port-ranges-used-by-redis-enterprise-software" >}}). -{{< /note >}} +> [!NOTE] +> Port 9443 is the default [port configuration](/content/operate/rs/7.8/networking/port-configurations.md#https://docs.redis.com/latest/rs/networking/port-configurations#ports-and-port-ranges-used-by-redis-enterprise-software). ## Flush data from an Active-Active database When you flush an Active-Active database (formerly known as CRDB), all of the replicas flush their data at the same time. -{{< note >}} -Run flush from only one participating cluster. The flush operation propagates to all other clusters automatically. -{{< /note >}} +> [!NOTE] +> Run flush from only one participating cluster. The flush operation propagates to all other clusters automatically. To flush data from an Active-Active database, use one of the following methods: @@ -114,13 +111,13 @@ To flush data from an Active-Active database, use one of the following methods: - REST API - 1. To find the ID of the Active-Active database, use [`GET /v1/crdbs`]({{< relref "/operate/rs/7.8/references/rest-api/requests/crdbs#get-all-crdbs" >}}): + 1. To find the ID of the Active-Active database, use [`GET /v1/crdbs`](/content/operate/rs/7.8/references/rest-api/requests/crdbs/_index.md#get-all-crdbs): ```sh GET https://[host][:port]/v1/crdbs ``` - 1. To flush the Active-Active database, use [`PUT /v1/crdbs/{guid}/flush`]({{< relref "/operate/rs/7.8/references/rest-api/requests/crdbs/flush#put-crdbs-flush" >}}): + 1. To flush the Active-Active database, use [`PUT /v1/crdbs/{guid}/flush`](/content/operate/rs/7.8/references/rest-api/requests/crdbs/flush.md#put-crdbs-flush): ```sh PUT https://[host][:port]/v1/crdbs//flush @@ -128,7 +125,7 @@ To flush data from an Active-Active database, use one of the following methods: The command output contains the task ID of the flush task. - 1. To check the status of the flush task, use [`GET /v1/crdb_tasks`]({{< relref "/operate/rs/7.8/references/rest-api/requests/crdb_tasks#get-crdb_task" >}}): + 1. To check the status of the flush task, use [`GET /v1/crdb_tasks`](/content/operate/rs/7.8/references/rest-api/requests/crdb_tasks/_index.md#get-crdb_task): ```sh GET https://[host][:port]/v1/crdb_tasks/ diff --git a/content/operate/rs/7.8/databases/import-export/import-data.md b/content/operate/rs/7.8/databases/import-export/import-data.md index 4d667b8441..c8b61a1994 100644 --- a/content/operate/rs/7.8/databases/import-export/import-data.md +++ b/content/operate/rs/7.8/databases/import-export/import-data.md @@ -12,15 +12,14 @@ linktitle: Import data weight: 10 url: '/operate/rs/7.8/databases/import-export/import-data/' --- -You can import, [export]({{< relref "/operate/rs/7.8/databases/import-export/export-data" >}}), -or [backup]({{< relref "/operate/rs/7.8/databases/import-export/schedule-backups" >}}) +You can import, [export](/content/operate/rs/7.8/databases/import-export/export-data.md), +or [backup](/content/operate/rs/7.8/databases/import-export/schedule-backups.md) files of a specific Redis Enterprise Software database to restore data. You can either import from a single file or from multiple files, such as when you want to import from a backup of a clustered database. -{{< warning >}} -Importing data erases all existing content in the database. -{{< /warning >}} +> [!WARNING] +> Importing data erases all existing content in the database. ## Import data into a database @@ -38,7 +37,7 @@ To import data into a database using the Cluster Manager UI: Data can be imported from a local mount point, transferred to [a URI](https://en.wikipedia.org/wiki/Uniform_Resource_Identifier) using FTP/SFTP, or stored on cloud provider storage. -When importing from a local mount point or a cloud provider, import locations need to be available to [the group and user]({{< relref "/operate/rs/7.8/installing-upgrading/install/customize-user-and-group.md" >}}) running Redis Enterprise Software, `redislabs:redislabs` by default. +When importing from a local mount point or a cloud provider, import locations need to be available to [the group and user](/content/operate/rs/7.8/installing-upgrading/install/customize-user-and-group.md) running Redis Enterprise Software, `redislabs:redislabs` by default. Redis Enterprise Software needs the ability to view objects in the storage location. Implementation details vary according to the provider and your configuration. To learn more, consult the provider's documentation. @@ -160,7 +159,7 @@ You can also connect to a storage service that uses the S3 protocol but is not h To connect to an S3-compatible storage location: -1. Configure the S3 URL with [`rladmin cluster config`]({{}}): +1. Configure the S3 URL with [`rladmin cluster config`](/content/operate/rs/7.8/references/cli-utilities/rladmin/cluster/config.md): ```sh rladmin cluster config s3_url @@ -225,7 +224,7 @@ In the Redis Enterprise Software Cluster Manager UI, when you enter the import l When importing data into an Active-Active database, there are two options: -- [Flush all data]({{< relref "/operate/rs/7.8/databases/import-export/flush#flush-data-from-an-active-active-database" >}}) from the Active-Active database, then import the data into the database. +- [Flush all data](/content/operate/rs/7.8/databases/import-export/flush.md#flush-data-from-an-active-active-database) from the Active-Active database, then import the data into the database. - Import data but merge it into the existing database. Because Active-Active databases have a numeric counter data type, diff --git a/content/operate/rs/7.8/databases/import-export/migrate-to-active-active.md b/content/operate/rs/7.8/databases/import-export/migrate-to-active-active.md index 57813acadf..8f40149f11 100644 --- a/content/operate/rs/7.8/databases/import-export/migrate-to-active-active.md +++ b/content/operate/rs/7.8/databases/import-export/migrate-to-active-active.md @@ -11,8 +11,8 @@ weight: $weight url: '/operate/rs/7.8/databases/import-export/migrate-to-active-active/' --- -If you have data in a single-region Redis Enterprise Software database that you want to migrate to an [Active-Active database]({{< relref "/operate/rs/7.8/databases/active-active" >}}), -you'll need to create a new Active-Active database and migrate the data into the new database as a [Replica Of]({{< relref "/operate/rs/7.8/databases/import-export/replica-of/" >}}) the existing database. +If you have data in a single-region Redis Enterprise Software database that you want to migrate to an [Active-Active database](/content/operate/rs/7.8/databases/active-active/_index.md), +you'll need to create a new Active-Active database and migrate the data into the new database as a [Replica Of](/content/operate/rs/7.8/databases/import-export/replica-of/_index.md) the existing database. This process will gradually populate the data in the Active-Active database. Before data migration starts, all data is flushed from the Active-Active database. @@ -27,7 +27,7 @@ When data migration is finished, turn off migration and connect your application - During the migration, any applications that connect to the Active-Active database must be **read-only** to ensure the dataset is identical to the source database during the migration process. However, you can continue to write to the source database during the migration process. - If you used the mDNS protocol for the cluster name (FQDN), -the [client mDNS prerequisites]({{< relref "/operate/rs/7.8/networking/mdns" >}}) must be met in order to communicate with other clusters. +the [client mDNS prerequisites](/content/operate/rs/7.8/networking/mdns.md) must be met in order to communicate with other clusters. ## Migrate from a Redis Enterprise cluster @@ -37,7 +37,7 @@ You can migrate a Redis Enterprise database from the [same cluster](#migrate-fro To migrate a database to Active-Active in the same Redis Enterprise cluster: -1. Create a new Active-Active database. For prerequisites and detailed instructions, see [Create an Active-Active geo-replicated database]({{< relref "/operate/rs/7.8/databases/active-active/create" >}}). +1. Create a new Active-Active database. For prerequisites and detailed instructions, see [Create an Active-Active geo-replicated database](/content/operate/rs/7.8/databases/active-active/create.md). 1. After the Active-Active database is active, click **Edit** on the **Configuration** screen. @@ -59,10 +59,9 @@ To migrate a database to Active-Active in the same Redis Enterprise cluster: ### Migrate from a different cluster -{{< note >}} -For a source database on a different Redis Enterprise Software cluster, -you can [compress the replication data]({{< relref "/operate/rs/7.8/databases/import-export/replica-of#data-compression-for-replica-of" >}}) to save bandwidth. -{{< /note >}} +> [!NOTE] +> For a source database on a different Redis Enterprise Software cluster, +> you can [compress the replication data](/content/operate/rs/7.8/databases/import-export/replica-of/_index.md#data-compression-for-replica-of) to save bandwidth. To migrate a database to Active-Active in different Redis Enterprise clusters: @@ -82,7 +81,7 @@ To migrate a database to Active-Active in different Redis Enterprise clusters: 1. Sign in to the Cluster Manager UI of the destination database’s cluster. -1. Create a new Active-Active database. For prerequisites and detailed instructions, see [Create an Active-Active geo-replicated database]({{< relref "/operate/rs/7.8/databases/active-active/create" >}}). +1. Create a new Active-Active database. For prerequisites and detailed instructions, see [Create an Active-Active geo-replicated database](/content/operate/rs/7.8/databases/active-active/create.md). 1. After the Active-Active database is active, click **Edit** on the **Configuration** screen. @@ -106,7 +105,7 @@ To migrate a database to Active-Active in different Redis Enterprise clusters: To migrate a Redis Open Source database to Active-Active: -1. Create a new Active-Active database. For prerequisites and detailed instructions, see [Create an Active-Active geo-replicated database]({{< relref "/operate/rs/7.8/databases/active-active/create" >}}). +1. Create a new Active-Active database. For prerequisites and detailed instructions, see [Create an Active-Active geo-replicated database](/content/operate/rs/7.8/databases/active-active/create.md). 1. After the Active-Active database is active, click **Edit** on the **Configuration** screen. @@ -144,9 +143,9 @@ To migrate a Redis Open Source database to Active-Active: 1. Wait until the migration is complete, indicated by the **Status** _Synced_. - {{}} -Migration can take minutes to hours to complete depending on the dataset size and network quality. - {{}} + > [!NOTE] + > Migration can take minutes to hours to complete depending on the dataset size and network quality. + > 1. On the Active-Active database's **Configuration** screen, click **Edit**. diff --git a/content/operate/rs/7.8/databases/import-export/replica-of/_index.md b/content/operate/rs/7.8/databases/import-export/replica-of/_index.md index 8a4ef334a8..d564f44092 100644 --- a/content/operate/rs/7.8/databases/import-export/replica-of/_index.md +++ b/content/operate/rs/7.8/databases/import-export/replica-of/_index.md @@ -21,15 +21,14 @@ all write commands are synchronized from the sources to the destination. Replica Of lets you distribute the read load of your application across multiple databases or synchronize the database, either within Redis Enterprise or external to Redis Enterprise, to another database. -You can [create Active-Passive]({{< relref "/operate/rs/7.8/databases/import-export/replica-of/create.md" >}}) databases on Redis Enterprise Software or Redis Cloud. +You can [create Active-Passive](/content/operate/rs/7.8/databases/import-export/replica-of/create.md) databases on Redis Enterprise Software or Redis Cloud. -[Active-Active Geo-Distribution (CRDB)]({{< relref "/operate/rs/7.8/databases/active-active" >}}) +[Active-Active Geo-Distribution (CRDB)](/content/operate/rs/7.8/databases/active-active/_index.md) provides these benefits and also provides write access to all of the database replicas. -{{< warning >}} -Configuring a database as a replica of the database that it replicates -creates a cyclical replication and is not supported. -{{< /warning >}} +> [!WARNING] +> Configuring a database as a replica of the database that it replicates +> creates a cyclical replication and is not supported. The Replica Of is defined in the context of the destination database by specifying the source databases. @@ -45,13 +44,12 @@ result, commands that were executed in a certain order when compared across source databases might be executed in a different order on the destination database. -{{< note >}} -The Replica Of feature should not be confused with the -in-memory [Database -replication]({{< relref "/operate/rs/7.8/databases/durability-ha/replication.md" >}}) -feature, which is used for creating a master / replica configuration that -enables ensuring database high-availability. -{{< /note >}} +> [!NOTE] +> The Replica Of feature should not be confused with the +> in-memory [Database +> replication](/content/operate/rs/7.8/databases/durability-ha/replication.md) +> feature, which is used for creating a master / replica configuration that +> enables ensuring database high-availability. ## Replication process @@ -100,11 +98,10 @@ the source was executed on the destination. The system also displays the destination database status as an aggregate of the statuses of all the sources. -{{< note >}} -If you encounter issues with the Replica Of process, refer -to the troubleshooting section [Replica Of repeatedly -fails]({{< relref "/operate/rs/7.8/databases/import-export/replica-of/replicaof-repeatedly-fails.md" >}}). -{{< /note >}} +> [!NOTE] +> If you encounter issues with the Replica Of process, refer +> to the troubleshooting section [Replica Of repeatedly +> fails](/content/operate/rs/7.8/databases/import-export/replica-of/replicaof-repeatedly-fails.md). ### Synchronization errors @@ -200,27 +197,25 @@ For example, if the database updates for the destination databases that are stored by the destination database in a synchronization backlog exceed their allocated memory, the source database starts a full sync. -{{% warning %}} -When you failover to the destination database for write operations, -make sure that you disable **Replica Of** before you direct clients to the destination database. -This avoids a full sync that can overwrite your data. -{{% /warning %}} +> [!WARNING] +> When you failover to the destination database for write operations, +> make sure that you disable **Replica Of** before you direct clients to the destination database. +> This avoids a full sync that can overwrite your data. ## Upgrade order -When you [upgrade]({{< relref "/operate/rs/7.8/installing-upgrading/upgrading/upgrade-database" >}}) a Replica Of database, upgrade the destination database before the source database to avoid possible replication failures. +When you [upgrade](/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-database.md) a Replica Of database, upgrade the destination database before the source database to avoid possible replication failures. ## Active-Passive replication backlog -In addition to the [database replication backlog]({{< relref "/operate/rs/7.8/databases/durability-ha/replication#database-replication-backlog" >}}), active-passive databases maintain a replication backlog (per shard) to synchronize the database instances between clusters. +In addition to the [database replication backlog](/content/operate/rs/7.8/databases/durability-ha/replication.md#database-replication-backlog), active-passive databases maintain a replication backlog (per shard) to synchronize the database instances between clusters. By default, the replication backlog is set to one percent (1%) of the database size divided by the database number of shards and ranges between 1MB to 250MB per shard. -Use the [`rladmin`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin" >}}) utility to control the size of the replication backlog. You can set it to `auto` or set a specific size. +Use the [`rladmin`](/content/operate/rs/7.8/references/cli-utilities/rladmin/_index.md) utility to control the size of the replication backlog. You can set it to `auto` or set a specific size. For an Active-Passive database: ```text rladmin tune db repl_backlog ``` -{{}} -On an Active-Passive database, the replication backlog configuration applies to both the replication backlog for shards synchronization and for synchronization of database instances between clusters. -{{}} +> [!NOTE] +> On an Active-Passive database, the replication backlog configuration applies to both the replication backlog for shards synchronization and for synchronization of database instances between clusters. diff --git a/content/operate/rs/7.8/databases/import-export/replica-of/create.md b/content/operate/rs/7.8/databases/import-export/replica-of/create.md index d4c43d512a..13d61576e2 100644 --- a/content/operate/rs/7.8/databases/import-export/replica-of/create.md +++ b/content/operate/rs/7.8/databases/import-export/replica-of/create.md @@ -42,17 +42,16 @@ You can configure a database as a Replica Of, where the source database is in on The order of the multiple Replica Of sources has no material impact on replication. -For best results when using the [Multicast DNS](https://en.wikipedia.org/wiki/Multicast_DNS) (mDNS) protocol to resolve the fully-qualified domain name (FQDN) of the cluster, verify that your client connections meet the [client mDNS prerequisites]({{< relref "/operate/rs/7.8/networking/mdns.md" >}}). +For best results when using the [Multicast DNS](https://en.wikipedia.org/wiki/Multicast_DNS) (mDNS) protocol to resolve the fully-qualified domain name (FQDN) of the cluster, verify that your client connections meet the [client mDNS prerequisites](/content/operate/rs/7.8/networking/mdns.md). -{{< note >}} -As long as Replica Of is enabled, data in the target database will not expire and will not be evicted regardless of the set [data eviction policy]({{< relref "/operate/rs/7.8/databases/memory-performance/eviction-policy.md" >}}). -{{< /note >}} +> [!NOTE] +> As long as Replica Of is enabled, data in the target database will not expire and will not be evicted regardless of the set [data eviction policy](/content/operate/rs/7.8/databases/memory-performance/eviction-policy.md). ### Same Redis Enterprise cluster {#same-cluster} To configure a Replica Of database in the same Redis Enterprise cluster as the source database: -1. [Create a new database]({{< relref "/operate/rs/7.8/databases/create" >}}) or select an existing database from the **Databases** screen. +1. [Create a new database](/content/operate/rs/7.8/databases/create.md) or select an existing database from the **Databases** screen. 1. For an existing database, select **Edit** from the **Configuration** tab. @@ -74,9 +73,9 @@ To configure a Replica Of database in a different Redis Enterprise cluster from 1. Ensure the source database's port is allowed through firewalls between the clusters and can be accessed by the destination cluster's nodes. - {{}} -Ports 10000-19999 are reserved for database traffic. See [Network port configurations]({{}}) for more information about ports. - {{}} + > [!NOTE] + > Ports 10000-19999 are reserved for database traffic. See [Network port configurations](/content/operate/rs/7.8/networking/port-configurations.md) for more information about ports. + > 1. Sign in to the Cluster Manager UI of the cluster hosting the source database. @@ -94,7 +93,7 @@ Ports 10000-19999 are reserved for database traffic. See [Network port configura 1. Sign in to the Cluster Manager UI of the destination database's cluster. -1. [Create a new database]({{< relref "/operate/rs/7.8/databases/create" >}}) or select an existing database from the **Databases** screen. +1. [Create a new database](/content/operate/rs/7.8/databases/create.md) or select an existing database from the **Databases** screen. 1. For an existing database, select **Edit** from the **Configuration** tab. @@ -110,13 +109,13 @@ Ports 10000-19999 are reserved for database traffic. See [Network port configura 1. Select **Save**. -For source databases on different clusters, you can [compress replication data]({{< relref "/operate/rs/7.8/databases/import-export/replica-of/#data-compression-for-replica-of" >}}) to save bandwidth. +For source databases on different clusters, you can [compress replication data](/content/operate/rs/7.8/databases/import-export/replica-of/_index.md#data-compression-for-replica-of) to save bandwidth. ### Redis Open Source cluster {#source-available-cluster} To use a database from a Redis Open Source cluster as a Replica Of source: -1. [Create a new database]({{< relref "/operate/rs/7.8/databases/create" >}}) or select an existing database from the **Databases** screen. +1. [Create a new database](/content/operate/rs/7.8/databases/create.md) or select an existing database from the **Databases** screen. 1. For an existing database, select **Edit** from the **Configuration** tab. diff --git a/content/operate/rs/7.8/databases/import-export/schedule-backups.md b/content/operate/rs/7.8/databases/import-export/schedule-backups.md index 880da7c524..b3e06b1c30 100644 --- a/content/operate/rs/7.8/databases/import-export/schedule-backups.md +++ b/content/operate/rs/7.8/databases/import-export/schedule-backups.md @@ -15,7 +15,7 @@ Periodic backups provide a way to restore data with minimal data loss. With Red As of v6.2.8, you can specify the start time in UTC for 24-hour or 12-hour backups. -To make an on-demand backup, [export your data]({{< relref "/operate/rs/7.8/databases/import-export/export-data.md" >}}). +To make an on-demand backup, [export your data](/content/operate/rs/7.8/databases/import-export/export-data.md). You can schedule backups to a variety of locations, including: @@ -26,19 +26,16 @@ You can schedule backups to a variety of locations, including: - Azure Blob Storage - Google Cloud Storage -The backup process creates compressed (.gz) RDB files that you can [import into a database]({{< relref "/operate/rs/7.8/databases/import-export/import-data.md" >}}). If the database name is longer than 30 characters, only the first 30 are used in backup file names. +The backup process creates compressed (.gz) RDB files that you can [import into a database](/content/operate/rs/7.8/databases/import-export/import-data.md). If the database name is longer than 30 characters, only the first 30 are used in backup file names. When you back up a database configured for database clustering, Redis Enterprise Software creates a backup file for each shard in the configuration. All backup files are copied to the storage location. -{{< note >}} - -- Make sure that you have enough space available in your storage location. - If there is not enough space in the backup location, the backup fails. -- The backup configuration only applies to the database it is configured on. -- To limit the parallel backup for shards, set both [`tune cluster max_simultaneous_backups`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/tune#tune-cluster" >}}) and [`tune node max_redis_forks`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/tune#tune-node" >}}). `max_simultaneous_backups` is set to 4 by default. - -{{< /note >}} +> [!NOTE] +> - Make sure that you have enough space available in your storage location. +> If there is not enough space in the backup location, the backup fails. +> - The backup configuration only applies to the database it is configured on. +> - To limit the parallel backup for shards, set both [`tune cluster max_simultaneous_backups`](/content/operate/rs/7.8/references/cli-utilities/rladmin/tune.md#tune-cluster) and [`tune node max_redis_forks`](/content/operate/rs/7.8/references/cli-utilities/rladmin/tune.md#tune-node). `max_simultaneous_backups` is set to 4 by default. ## Schedule periodic backups @@ -104,7 +101,7 @@ For help with specific backup issues, [contact support](https://redis.com/compan Database backups can be saved to a local mount point, transferred to [a URI](https://en.wikipedia.org/wiki/Uniform_Resource_Identifier) using FTP/SFTP, or stored on cloud provider storage. -When saved to a local mount point or a cloud provider, backup locations need to be available to [the group and user]({{< relref "/operate/rs/7.8/installing-upgrading/install/customize-user-and-group.md" >}}) running Redis Enterprise Software, `redislabs:redislabs` by default. +When saved to a local mount point or a cloud provider, backup locations need to be available to [the group and user](/content/operate/rs/7.8/installing-upgrading/install/customize-user-and-group.md) running Redis Enterprise Software, `redislabs:redislabs` by default. Redis Enterprise Software needs the ability to view permissions and update objects in the storage location. Implementation details vary according to the provider and your configuration. To learn more, consult the provider's documentation. @@ -214,7 +211,7 @@ You can also connect to a storage service that uses the S3 protocol but is not h To connect to an S3-compatible storage location: -1. Configure the S3 URL with [`rladmin cluster config`]({{}}): +1. Configure the S3 URL with [`rladmin cluster config`](/content/operate/rs/7.8/references/cli-utilities/rladmin/cluster/config.md): ```sh rladmin cluster config s3_url diff --git a/content/operate/rs/7.8/databases/memory-performance/_index.md b/content/operate/rs/7.8/databases/memory-performance/_index.md index 82f40e9009..ea86cafaf7 100644 --- a/content/operate/rs/7.8/databases/memory-performance/_index.md +++ b/content/operate/rs/7.8/databases/memory-performance/_index.md @@ -17,11 +17,11 @@ architecture to help optimize storage and performance. ## Memory limits -Database memory limits define the maximum size your database can reach across all database replicas and [shards]({{< relref "/glossary#letter-s" >}}) on the cluster. Your memory limit will also determine the number of shards you'll need. +Database memory limits define the maximum size your database can reach across all database replicas and [shards](/content/glossary/_index.md#letter-s) on the cluster. Your memory limit will also determine the number of shards you'll need. Besides your dataset, the memory limit must also account for replication, Active-Active overhead, and module overhead, and a number of other factors. These can significantly increase your database size, sometimes increasing it by four times or more. -For more information on memory limits, see [Database memory limits]({{< relref "/operate/rs/7.8/databases/memory-performance/memory-limit.md" >}}). +For more information on memory limits, see [Database memory limits](/content/operate/rs/7.8/databases/memory-performance/memory-limit.md). ## Eviction policies @@ -29,7 +29,7 @@ When a database exceeds its memory limit, eviction policies determine which data The default eviction policy for databases is `volatile-lru` which evicts the least recently used keys out of all keys with the `expire` field set. The default for Active-Active databases is `noeviction`. -For more information, see [eviction policies]({{< relref "/operate/rs/7.8/databases/memory-performance/eviction-policy.md" >}}). +For more information, see [eviction policies](/content/operate/rs/7.8/databases/memory-performance/eviction-policy.md). ## Database persistence @@ -41,13 +41,13 @@ Append-only files (AoF) keep a record of data changes and writes each change to Snapshots capture all the data as it exists in one moment in time and writes it to disk, allowing you to recover the entire dataset as it existed at that moment in time. -For more info on data persistence see [Database persistence with Redis Enterprise Software]({{< relref "/operate/rs/7.8/databases/configure/database-persistence.md" >}}) or [Durable Redis](https://redis.com/redis-enterprise/technology/durable-redis/). +For more info on data persistence see [Database persistence with Redis Enterprise Software](/content/operate/rs/7.8/databases/configure/database-persistence.md) or [Durable Redis](https://redis.com/redis-enterprise/technology/durable-redis/). ## Auto Tiering -By default, Redis Enterprise Software stores your data entirely in [RAM](https://en.wikipedia.org/wiki/Random-access_memory) for improved performance. The [Auto Tiering]({{< relref "/operate/rs/7.8/databases/auto-tiering/" >}}) feature enables your data to span both RAM and [SSD](https://en.wikipedia.org/wiki/Solid-state_drive) storage ([flash memory](https://en.wikipedia.org/wiki/Flash_memory)). Keys are always stored in RAM, but Auto Tiering manages the location of their values. Frequently used (hot) values are stored on RAM, but infrequently used (warm) values are moved to flash memory. This saves on expensive RAM space, which give you comparable performance at a lower cost for large datasets. +By default, Redis Enterprise Software stores your data entirely in [RAM](https://en.wikipedia.org/wiki/Random-access_memory) for improved performance. The [Auto Tiering](/content/operate/rs/7.8/databases/auto-tiering/_index.md) feature enables your data to span both RAM and [SSD](https://en.wikipedia.org/wiki/Solid-state_drive) storage ([flash memory](https://en.wikipedia.org/wiki/Flash_memory)). Keys are always stored in RAM, but Auto Tiering manages the location of their values. Frequently used (hot) values are stored on RAM, but infrequently used (warm) values are moved to flash memory. This saves on expensive RAM space, which give you comparable performance at a lower cost for large datasets. -For more info, see [Auto Tiering]({{< relref "/operate/rs/7.8/databases/auto-tiering/" >}}). +For more info, see [Auto Tiering](/content/operate/rs/7.8/databases/auto-tiering/_index.md). ## Shard placement @@ -60,7 +60,7 @@ Redis Enterprise Software has two shard placement policies available: - **dense**: puts as many shards as possible on the smallest number of nodes - **sparse**: spread the shards across as many nodes as possible -For more info about the shard placement policy, see [Shard placement policy]({{< relref "/operate/rs/7.8/databases/memory-performance/shard-placement-policy.md" >}}) +For more info about the shard placement policy, see [Shard placement policy](/content/operate/rs/7.8/databases/memory-performance/shard-placement-policy.md) ## Metrics @@ -68,7 +68,7 @@ From the Redis Enterprise Software Cluster Manager UI, you can monitor the perfo With the Redis Enterprise Software API, you can also integrate Redis Enterprise metrics into other monitoring environments, such as Prometheus. -For more info about monitoring with Redis Enterprise Software, see [Monitoring with metrics and alerts]({{< relref "/operate/rs/7.8/monitoring" >}}), and [Memory statistics]({{< relref "/operate/rs/7.8/databases/memory-performance/memory-limit#memory-metrics" >}}). +For more info about monitoring with Redis Enterprise Software, see [Monitoring with metrics and alerts](/content/operate/rs/7.8/monitoring/_index.md), and [Memory statistics](/content/operate/rs/7.8/databases/memory-performance/memory-limit.md#memory-metrics). ## Scaling databases @@ -109,6 +109,6 @@ accesses to the same value is fast, once the value is in RAM. ## Client-side caching -Client-side caching allows Redis clients to store a subset of data in a local cache and avoid sending repeated requests to the Redis database. When used to cache frequently accessed data, this technique can improve performance by decreasing network traffic, latency, and load on the database. For more information about client-side caching, see the [client-side caching introduction]({{}}). +Client-side caching allows Redis clients to store a subset of data in a local cache and avoid sending repeated requests to the Redis database. When used to cache frequently accessed data, this technique can improve performance by decreasing network traffic, latency, and load on the database. For more information about client-side caching, see the [client-side caching introduction](/content/develop/clients/client-side-caching.md). -Redis Software supports client-side caching for databases with Redis versions 7.4 and later. See [Client-side caching compatibility with Redis Software]({{}}) for more information about compatibility and configuration options. +Redis Software supports client-side caching for databases with Redis versions 7.4 and later. See [Client-side caching compatibility with Redis Software](/content/operate/rs/7.8/references/compatibility/client-side-caching.md) for more information about compatibility and configuration options. diff --git a/content/operate/rs/7.8/databases/memory-performance/eviction-policy.md b/content/operate/rs/7.8/databases/memory-performance/eviction-policy.md index bb60308a64..d112ad833d 100644 --- a/content/operate/rs/7.8/databases/memory-performance/eviction-policy.md +++ b/content/operate/rs/7.8/databases/memory-performance/eviction-policy.md @@ -34,7 +34,7 @@ To prevent this from happening, make sure your database is large enough to hold `volatile-lru` is the default eviction policy for most databases. -The default policy for [Active-Active databases]({{< relref "/operate/rs/7.8/databases/active-active" >}}) is _noeviction_ policy. +The default policy for [Active-Active databases](/content/operate/rs/7.8/databases/active-active/_index.md) is _noeviction_ policy. ## Active-Active database eviction @@ -45,15 +45,14 @@ To prevent over eviction, internal heuristics might prevent keys from being evic In case of network issues between Active-Active instances, memory can be freed only when all instances are in sync. If there is no communication between participating clusters, it can result in eviction of all keys and the instance reaching an Out-of-Memory state. -{{< note >}} -Data eviction policies are not supported for Active-Active databases with Auto Tiering . -{{< /note >}} +> [!NOTE] +> Data eviction policies are not supported for Active-Active databases with Auto Tiering . ## Avoid data eviction To avoid data eviction, make sure your database is large enough to hold required values. -For larger databases, consider using [Auto Tiering ]({{< relref "/operate/rs/7.8/databases/auto-tiering/" >}}). +For larger databases, consider using [Auto Tiering ](/content/operate/rs/7.8/databases/auto-tiering/_index.md). Auto Tiering stores actively-used data (also known as _hot data_) in RAM and the remaining data in flash memory (SSD). This lets you retain more data while ensuring the fastest access to the most critical data. diff --git a/content/operate/rs/7.8/databases/memory-performance/memory-limit.md b/content/operate/rs/7.8/databases/memory-performance/memory-limit.md index 2279356f0b..56f31dcdb2 100644 --- a/content/operate/rs/7.8/databases/memory-performance/memory-limit.md +++ b/content/operate/rs/7.8/databases/memory-performance/memory-limit.md @@ -26,15 +26,15 @@ Factors to consider when sizing your database: - **dataset size**: you want your limit to be above your dataset size to leave room for overhead. - **database throughput**: high throughput needs more shards, leading to a higher memory limit. -- [**modules**]({{< relref "/operate/oss_and_stack/stack-with-enterprise" >}}): using modules with your database consumes more memory. -- [**database clustering**]({{< relref "/operate/rs/7.8/databases/durability-ha/clustering.md" >}}): enables you to spread your data into shards across multiple nodes. -- [**database replication**]({{< relref "/operate/rs/7.8/databases/durability-ha/replication.md" >}}): enabling replication doubles memory consumption. +- [**modules**](/content/operate/oss_and_stack/stack-with-enterprise/_index.md): using modules with your database consumes more memory. +- [**database clustering**](/content/operate/rs/7.8/databases/durability-ha/clustering.md): enables you to spread your data into shards across multiple nodes. +- [**database replication**](/content/operate/rs/7.8/databases/durability-ha/replication.md): enabling replication doubles memory consumption. Additional factors for Active-Active databases: -- [**Active-Active replication**]({{< relref "/operate/rs/7.8/databases/active-active/_index.md" >}}): enabling Active-Active replication requires double the memory of regular replication, which can be up to two times (2x) the original data size per instance. -- [**database replication backlog**]({{< relref "/operate/rs/7.8/databases/active-active/manage#replication-backlog/" >}}) for synchronization between shards. By default, this is set to 1% of the database size. -- [**Active-Active replication backlog**]({{< relref "/operate/rs/7.8/databases/active-active/manage.md" >}}) for synchronization between clusters. By default, this is set to 1% of the database size. +- [**Active-Active replication**](/content/operate/rs/7.8/databases/active-active/_index.md): enabling Active-Active replication requires double the memory of regular replication, which can be up to two times (2x) the original data size per instance. +- [**database replication backlog**](/content/operate/rs/7.8/databases/active-active/manage.md#replication-backlog/) for synchronization between shards. By default, this is set to 1% of the database size. +- [**Active-Active replication backlog**](/content/operate/rs/7.8/databases/active-active/manage.md) for synchronization between clusters. By default, this is set to 1% of the database size. It's also important to know Active-Active databases have a lower threshold for activating the eviction policy, because it requires propagation to all participating clusters. The eviction policy starts to evict keys when one of the Active-Active instances reaches 80% of its memory limit. @@ -42,7 +42,7 @@ Additional factors for databases with Auto Tiering enabled: - The available flash space must be greater than or equal to the total database size (RAM+Flash). The extra space accounts for write buffers and [write amplification](https://en.wikipedia.org/wiki/Write_amplification). -- [**database persistence**]({{< relref "/operate/rs/7.8/databases/configure/database-persistence.md" >}}): Auto Tiering uses dual database persistence where both the primary and replica shards persist to disk. This may add some processor and network overhead, especially in cloud configurations with network attached storage. +- [**database persistence**](/content/operate/rs/7.8/databases/configure/database-persistence.md): Auto Tiering uses dual database persistence where both the primary and replica shards persist to disk. This may add some processor and network overhead, especially in cloud configurations with network attached storage. ## What happens when Redis Enterprise Software is low on RAM? @@ -50,9 +50,9 @@ Redis Enterprise Software manages node memory so that data is entirely in RAM ( Redis Enterprise Software protects the existing data and prevents the database from being able to store data into the shards. -You can configure the cluster to move the data to another node, or even discard it according to the [eviction policy]({{< relref "/operate/rs/7.8/databases/memory-performance/eviction-policy.md" >}}) set on each database by the administrator. +You can configure the cluster to move the data to another node, or even discard it according to the [eviction policy](/content/operate/rs/7.8/databases/memory-performance/eviction-policy.md) set on each database by the administrator. -[Auto Tiering]({{< relref "/operate/rs/7.8/databases/auto-tiering/" >}}) +[Auto Tiering](/content/operate/rs/7.8/databases/auto-tiering/_index.md) manages memory so that you can also use flash memory (SSD) to store data. ### Order of events for low RAM @@ -65,7 +65,7 @@ out of memory (OOM) messages. 4. If shards can't free memory, Redis Enterprise relies on the OS processes to stop replicas, but tries to avoid stopping primary shards. -We recommend that you have a [monitoring platform]({{< relref "/operate/rs/7.8/monitoring/" >}}) that alerts you before a system gets low on RAM. +We recommend that you have a [monitoring platform](/content/operate/rs/7.8/monitoring/_index.md) that alerts you before a system gets low on RAM. You must maintain sufficient free memory to make sure that you have a healthy Redis Enterprise installation. ## Memory metrics @@ -78,13 +78,13 @@ The Cluster Manager UI provides metrics that can help you evaluate your memory u - Memory usage - Memory limit -See [console metrics]({{< relref "/operate/rs/7.8/references/metrics" >}}) for more detailed information. +See [console metrics](/content/operate/rs/7.8/references/metrics/_index.md) for more detailed information. ## Related info -- [Memory and performance]({{< relref "/operate/rs/7.8/databases/memory-performance" >}}) -- [Disk sizing for heavy write scenarios]({{< relref "/operate/rs/7.8/clusters/optimize/disk-sizing-heavy-write-scenarios.md" >}}) -- [Turn off services to free system memory]({{< relref "/operate/rs/7.8/clusters/optimize/turn-off-services.md" >}}) -- [Eviction policy]({{< relref "/operate/rs/7.8/databases/memory-performance/eviction-policy.md" >}}) -- [Shard placement policy]({{< relref "/operate/rs/7.8/databases/memory-performance/shard-placement-policy.md" >}}) -- [Database persistence]({{< relref "/operate/rs/7.8/databases/configure/database-persistence.md" >}}) +- [Memory and performance](/content/operate/rs/7.8/databases/memory-performance/_index.md) +- [Disk sizing for heavy write scenarios](/content/operate/rs/7.8/clusters/optimize/disk-sizing-heavy-write-scenarios.md) +- [Turn off services to free system memory](/content/operate/rs/7.8/clusters/optimize/turn-off-services.md) +- [Eviction policy](/content/operate/rs/7.8/databases/memory-performance/eviction-policy.md) +- [Shard placement policy](/content/operate/rs/7.8/databases/memory-performance/shard-placement-policy.md) +- [Database persistence](/content/operate/rs/7.8/databases/configure/database-persistence.md) diff --git a/content/operate/rs/7.8/databases/memory-performance/shard-placement-policy.md b/content/operate/rs/7.8/databases/memory-performance/shard-placement-policy.md index b56c3d252a..102d1c2685 100644 --- a/content/operate/rs/7.8/databases/memory-performance/shard-placement-policy.md +++ b/content/operate/rs/7.8/databases/memory-performance/shard-placement-policy.md @@ -52,4 +52,4 @@ For Redis on RAM databases with OSS cluster API enabled and for databases with A ## Related articles -You can [configure the shard placement policy]({{< relref "/operate/rs/7.8/databases/configure/shard-placement.md" >}}) for each database. +You can [configure the shard placement policy](/content/operate/rs/7.8/databases/configure/shard-placement.md) for each database. diff --git a/content/operate/rs/7.8/databases/migrate-shards.md b/content/operate/rs/7.8/databases/migrate-shards.md index 246d35aa54..9a9a702157 100644 --- a/content/operate/rs/7.8/databases/migrate-shards.md +++ b/content/operate/rs/7.8/databases/migrate-shards.md @@ -13,7 +13,7 @@ weight: 32 url: '/operate/rs/7.8/databases/migrate-shards/' --- -To migrate database shards to other nodes in the cluster, you can use the [`rladmin migrate`]({{}}) command or [REST API requests]({{}}). +To migrate database shards to other nodes in the cluster, you can use the [`rladmin migrate`](/content/operate/rs/7.8/references/cli-utilities/rladmin/migrate.md) command or [REST API requests](/content/operate/rs/7.8/references/rest-api/requests/shards/actions/migrate.md). ## Use cases for shard migration @@ -43,15 +43,15 @@ If too many primary shards are placed on the same node, it can impact database p To migrate a specific database shard, use one of the following methods: -- [`rladmin migrate shard`]({{}}): +- [`rladmin migrate shard`](/content/operate/rs/7.8/references/cli-utilities/rladmin/migrate.md#migrate-shard): ```sh rladmin migrate shard target_node ``` -- [Migrate shard]({{}}) REST API request: +- [Migrate shard](/content/operate/rs/7.8/references/rest-api/requests/shards/actions/migrate.md#post-shard) REST API request: - Specify the ID of the shard to migrate in the request path and the destination node's ID as the `target_node_uid` in the request body. See the [request reference]({{}}) for more options. + Specify the ID of the shard to migrate in the request path and the destination node's ID as the `target_node_uid` in the request body. See the [request reference](/content/operate/rs/7.8/references/rest-api/requests/shards/actions/migrate.md#post-request-body) for more options. ```sh POST /v1/shards//actions/migrate @@ -69,21 +69,21 @@ To migrate a specific database shard, use one of the following methods: } ``` - You can track the action's progress with a [`GET /v1/actions/`]({{}}) request. + You can track the action's progress with a [`GET /v1/actions/`](/content/operate/rs/7.8/references/rest-api/requests/actions/_index.md#get-action) request. ## Migrate multiple shards To migrate multiple database shards, use one of the following methods: -- [`rladmin migrate shard`]({{}}): +- [`rladmin migrate shard`](/content/operate/rs/7.8/references/cli-utilities/rladmin/migrate.md#migrate-shard): ```sh rladmin migrate shard target_node ``` -- [Migrate multiple shards]({{}}) REST API request: +- [Migrate multiple shards](/content/operate/rs/7.8/references/rest-api/requests/shards/actions/migrate.md#post-multi-shards) REST API request: - Specify the IDs of the shards to migrate in the `shard_uids` list and the destination node's ID as the `target_node_uid` in the request body. See the [request reference]({{}}) for more options. + Specify the IDs of the shards to migrate in the `shard_uids` list and the destination node's ID as the `target_node_uid` in the request body. See the [request reference](/content/operate/rs/7.8/references/rest-api/requests/shards/actions/migrate.md#post-multi-request-body) for more options. ```sh POST /v1/shards/actions/migrate @@ -102,11 +102,11 @@ To migrate multiple database shards, use one of the following methods: } ``` - You can track the action's progress with a [`GET /v1/actions/`]({{}}) request. + You can track the action's progress with a [`GET /v1/actions/`](/content/operate/rs/7.8/references/rest-api/requests/actions/_index.md#get-action) request. ## Migrate all shards from a node -To migrate all shards from a specific node to another node, run [`rladmin migrate all_shards`]({{}}): +To migrate all shards from a specific node to another node, run [`rladmin migrate all_shards`](/content/operate/rs/7.8/references/cli-utilities/rladmin/migrate.md#migrate-all_shards): ```sh rladmin migrate node all_shards target_node @@ -114,7 +114,7 @@ rladmin migrate node all_shards target_node ## Migrate primary shards -You can use the [`rladmin migrate all_master_shards`]({{}}) command to migrate all primary shards for a specific database or node to another node in the cluster. +You can use the [`rladmin migrate all_master_shards`](/content/operate/rs/7.8/references/cli-utilities/rladmin/migrate.md#migrate-all_master_shards) command to migrate all primary shards for a specific database or node to another node in the cluster. To migrate a specific database's primary shards: @@ -130,7 +130,7 @@ rladmin migrate node all_master_shards target_node ## Migrate replica shards -You can use the [`rladmin migrate all_slave_shards`]({{}}) command to migrate all replica shards for a specific database or node to another node in the cluster. +You can use the [`rladmin migrate all_slave_shards`](/content/operate/rs/7.8/references/cli-utilities/rladmin/migrate.md#migrate-all_slave_shards) command to migrate all replica shards for a specific database or node to another node in the cluster. To migrate a specific database's replica shards: diff --git a/content/operate/rs/7.8/databases/recover.md b/content/operate/rs/7.8/databases/recover.md index d2eb6ebe2d..2ddbc2f023 100644 --- a/content/operate/rs/7.8/databases/recover.md +++ b/content/operate/rs/7.8/databases/recover.md @@ -13,16 +13,16 @@ url: '/operate/rs/7.8/databases/recover/' --- When a cluster fails or a database is corrupted, you must: -1. [Restore the cluster configuration]({{< relref "/operate/rs/7.8/clusters/cluster-recovery.md" >}}) from the CCS files +1. [Restore the cluster configuration](/content/operate/rs/7.8/clusters/cluster-recovery.md) from the CCS files 1. Recover the databases with their previous configuration and data To restore data to databases in the new cluster, you must restore the database persistence files (backup, AOF, or snapshot files) to the databases. -These files are stored in the [persistence storage location]({{< relref "/operate/rs/7.8/installing-upgrading/install/plan-deployment/persistent-ephemeral-storage" >}}). +These files are stored in the [persistence storage location](/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/persistent-ephemeral-storage.md). The database recovery process includes: -1. If the cluster failed, [recover the cluster]({{< relref "/operate/rs/7.8/clusters/cluster-recovery.md" >}}). +1. If the cluster failed, [recover the cluster](/content/operate/rs/7.8/clusters/cluster-recovery.md). 1. Identify recoverable databases. 1. Verify the module versions used by any databases are installed on the cluster. 1. Restore the database data. @@ -32,7 +32,7 @@ The database recovery process includes: - Before you start database recovery, make sure that the cluster that hosts the database is healthy. In the case of a cluster failure, - you must [recover the cluster]({{< relref "/operate/rs/7.8/clusters/cluster-recovery.md" >}}) before you recover the databases. + you must [recover the cluster](/content/operate/rs/7.8/clusters/cluster-recovery.md) before you recover the databases. - We recommend that you allocate new persistent storage drives for the new cluster nodes. If you use the original storage drives, @@ -41,7 +41,7 @@ The database recovery process includes: ## Recover databases After you prepare the cluster that hosts the database, -you can run the recovery process from the [`rladmin`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin" >}}) +you can run the recovery process from the [`rladmin`](/content/operate/rs/7.8/references/cli-utilities/rladmin/_index.md) command-line interface (CLI). To recover the database: @@ -49,14 +49,14 @@ To recover the database: 1. Mount the persistent storage drives with the recovery files to the new nodes. These drives must contain the cluster configuration backup files and database persistence files. - {{< note >}} -Make sure that the user `redislabs` has permissions to access the storage location -of the configuration and persistence files on each of the nodes. - {{< /note >}} + > [!NOTE] + > Make sure that the user `redislabs` has permissions to access the storage location + > of the configuration and persistence files on each of the nodes. + > If you use local persistent storage, place all of the recovery files on each of the cluster nodes. -1. To see which databases are recoverable, run [`rladmin recover list`]({{}}): +1. To see which databases are recoverable, run [`rladmin recover list`](/content/operate/rs/7.8/references/cli-utilities/rladmin/recover.md#recover-list): ```sh rladmin recover list @@ -85,7 +85,7 @@ In the Cluster Manager UI, go to **Cluster > Modules**. -tab-sep- -Run [`rladmin status modules`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/status#status-modules" >}}): +Run [`rladmin status modules`](/content/operate/rs/7.8/references/cli-utilities/rladmin/status.md#status-modules): ```sh rladmin status modules @@ -93,7 +93,7 @@ rladmin status modules -tab-sep- -Send a [`GET /v1/modules`]({{< relref "/operate/rs/7.8/references/rest-api/requests/modules#list-modules" >}}) request: +Send a [`GET /v1/modules`](/content/operate/rs/7.8/references/rest-api/requests/modules/_index.md#list-modules) request: ```sh GET https://:/v1/modules @@ -101,7 +101,7 @@ GET https://:/v1/modules {{< /multitabs >}} - 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: + 1. Identify the module versions required by the recoverable databases. To do so, run [`rladmin status modules`](/content/operate/rs/7.8/references/cli-utilities/rladmin/status.md#status-modules) and check the `DATABASE MODULES` section for the module versions listed for the recoverable databases: ```sh rladmin status modules extra all @@ -109,7 +109,7 @@ GET https://:/v1/modules 1. Download any missing modules versions from the [Redis download center](https://redis.io/downloads/#tools). - 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: + 1. [Install the downloaded modules on the cluster](/content/operate/oss_and_stack/stack-with-enterprise/install/add-module-to-cluster.md) using one of the following methods: {{< multitabs id="install-modules" tab1="Cluster Manager UI" @@ -129,7 +129,7 @@ To add a module to the cluster using the REST API: 1. Copy the module package to a node in the cluster. -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: +1. Add the module to the cluster with a [`POST` request to the `/v2/modules`](/content/operate/rs/7.8/references/rest-api/requests/modules/_index.md#post-module-v2) endpoint: ```sh POST https://[host][:port]/v2/modules @@ -138,11 +138,11 @@ To add a module to the cluster using the REST API: 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. -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. +1. If the module installation succeeds, the `POST` request returns a [JSON object](/content/operate/rs/7.8/references/rest-api/objects/module.md) that represents the new module. If it fails, it may return a JSON object with an `error_code` and `description` with more details. {{< /multitabs >}} -1. Recover the database using one of the following [`rladmin recover`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/recover" >}}) commands: +1. Recover the database using one of the following [`rladmin recover`](/content/operate/rs/7.8/references/cli-utilities/rladmin/recover.md) commands: - Recover all databases from the persistence files located in the persistent storage drives: @@ -170,16 +170,16 @@ To add a module to the cluster using the REST API: rladmin recover db only_configuration ``` - {{< note >}} -- If persistence was not configured for the database, the database is restored empty. -- For Active-Active databases that still have live instances, we recommend that you recover the configuration for the failed instances and let the data update from the other instances. -- For Active-Active databases where all instances need to be recovered, we recommend you recover one instance with the data and only recover the configuration for the other instances. - The empty instances then update from the recovered data. -- If the persistence files of the databases from the old cluster are not stored in the persistent storage location of the new node, - you must first map the recovery path of each node to the location of the old persistence files. - To do this, run the `node recovery_path set` command in rladmin. - The persistence files for each database are located in the persistent storage path of the nodes from the old cluster, usually under `/var/opt/redislabs/persist/redis`. - {{< /note >}} + > [!NOTE] + > - If persistence was not configured for the database, the database is restored empty. + > - For Active-Active databases that still have live instances, we recommend that you recover the configuration for the failed instances and let the data update from the other instances. + > - For Active-Active databases where all instances need to be recovered, we recommend you recover one instance with the data and only recover the configuration for the other instances. + > The empty instances then update from the recovered data. + > - If the persistence files of the databases from the old cluster are not stored in the persistent storage location of the new node, + > you must first map the recovery path of each node to the location of the old persistence files. + > To do this, run the `node recovery_path set` command in rladmin. + > The persistence files for each database are located in the persistent storage path of the nodes from the old cluster, usually under `/var/opt/redislabs/persist/redis`. + > 1. To verify that the recovered databases are now active, run: @@ -199,7 +199,7 @@ To enable automatic recovery, use one of the following methods: tab1="rladmin" tab2="REST API" >}} -To enable automatic recovery using `rladmin`, run the [`rladmin tune cluster`]({{}}) command: +To enable automatic recovery using `rladmin`, run the [`rladmin tune cluster`](/content/operate/rs/7.8/references/cli-utilities/rladmin/tune.md#tune-cluster) command: ```sh rladmin tune cluster auto_recovery enabled @@ -207,7 +207,7 @@ rladmin tune cluster auto_recovery enabled -tab-sep- -To enable automatic recovery using the REST API, use an [update cluster policy]({{< relref "/operate/rs/7.8/references/rest-api/requests/cluster/policy#put-cluster-policy" >}}) request: +To enable automatic recovery using the REST API, use an [update cluster policy](/content/operate/rs/7.8/references/rest-api/requests/cluster/policy.md#put-cluster-policy) request: ```sh PUT /v1/cluster/policy @@ -231,4 +231,4 @@ PUT /v1/bdbs/ } ``` -You can also set `recovery_wait_time` when you [create a database]({{< relref "/operate/rs/7.8/references/rest-api/requests/bdbs#post-bdbs-v1" >}}) using the REST API. +You can also set `recovery_wait_time` when you [create a database](/content/operate/rs/7.8/references/rest-api/requests/bdbs/_index.md#post-bdbs-v1) using the REST API. diff --git a/content/operate/rs/7.8/installing-upgrading/_index.md b/content/operate/rs/7.8/installing-upgrading/_index.md index eca45981a9..36e71eaf67 100644 --- a/content/operate/rs/7.8/installing-upgrading/_index.md +++ b/content/operate/rs/7.8/installing-upgrading/_index.md @@ -15,25 +15,25 @@ url: '/operate/rs/7.8/installing-upgrading/' You can run self-managed Redis Enterprise Software in an on-premises data center or on your preferred cloud platform. -If you prefer a fully managed Redis database-as-a-service, available on major public cloud services, consider setting up a [Redis Cloud]({{}}) subscription. You can [try Redis Cloud](https://redis.io/try-free/) for free. +If you prefer a fully managed Redis database-as-a-service, available on major public cloud services, consider setting up a [Redis Cloud](/content/operate/rc/_index.md) subscription. You can [try Redis Cloud](https://redis.io/try-free/) for free. ## Quickstarts If you want to try out Redis Enterprise Software, see the following quickstarts: -- [Redis Enterprise Software quickstart]({{< relref "/operate/rs/7.8/installing-upgrading/quickstarts/redis-enterprise-software-quickstart" >}}) +- [Redis Enterprise Software quickstart](/content/operate/rs/7.8/installing-upgrading/quickstarts/redis-enterprise-software-quickstart.md) -- [Docker quickstart for Redis Enterprise Software]({{< relref "/operate/rs/7.8/installing-upgrading/quickstarts/docker-quickstart" >}}) +- [Docker quickstart for Redis Enterprise Software](/content/operate/rs/7.8/installing-upgrading/quickstarts/docker-quickstart.md) ## Install Redis Enterprise Software -To install Redis Enterprise Software on a [supported platform]({{< relref "/operate/rs/7.8/installing-upgrading/install/plan-deployment/supported-platforms" >}}), you need to: +To install Redis Enterprise Software on a [supported platform](/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/supported-platforms.md), you need to: -1. [Plan your deployment]({{< relref "/operate/rs/7.8/installing-upgrading/install/plan-deployment" >}}). +1. [Plan your deployment](/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/_index.md). -1. [Prepare to install]({{< relref "/operate/rs/7.8/installing-upgrading/install/prepare-install" >}}). +1. [Prepare to install](/content/operate/rs/7.8/installing-upgrading/install/prepare-install/_index.md). -1. [Perform the install]({{< relref "/operate/rs/7.8/installing-upgrading/install" >}}). +1. [Perform the install](/content/operate/rs/7.8/installing-upgrading/install/_index.md). Depending on your needs, you may also want to [customize the installation](#more-info-and-options). @@ -41,34 +41,34 @@ Depending on your needs, you may also want to [customize the installation](#more If you already installed Redis Enterprise Software, you can: -- [Upgrade a cluster]({{< relref "/operate/rs/7.8/installing-upgrading/upgrading/upgrade-cluster" >}}) +- [Upgrade a cluster](/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-cluster.md) -- [Upgrade a database]({{< relref "/operate/rs/7.8/installing-upgrading/upgrading/upgrade-database" >}}) +- [Upgrade a database](/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-database.md) -- [Upgrade an Active-Active database]({{< relref "/operate/rs/7.8/installing-upgrading/upgrading/upgrade-active-active" >}}) +- [Upgrade an Active-Active database](/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-active-active.md) ## Uninstall Redis Enterprise Software -- [Uninstall existing deployment]({{< relref "/operate/rs/7.8/installing-upgrading/uninstalling" >}}) +- [Uninstall existing deployment](/content/operate/rs/7.8/installing-upgrading/uninstalling.md) ## More info and options More information is available to help with customization and related questions: -- [CentOS/RHEL firewall configuration]({{< relref "/operate/rs/7.8/installing-upgrading/configuring/centos-rhel-firewall.md" >}}) -- [Change socket file location]({{< relref "/operate/rs/7.8/installing-upgrading/configuring/change-location-socket-files.md" >}}) -- [Cluster DNS configuration]({{< relref "/operate/rs/7.8/networking/cluster-dns.md" >}}) -- [Cluster load balancer setup]({{< relref "/operate/rs/7.8/networking/cluster-lba-setup.md" >}}) -- [File locations]({{< relref "/operate/rs/7.8/installing-upgrading/install/plan-deployment/file-locations.md" >}}) -- [Linux swap space configuration]({{< relref "/operate/rs/7.8/installing-upgrading/configuring/linux-swap.md" >}}) -- [mDNS client prerequisites]({{< relref "/operate/rs/7.8/networking/mdns.md" >}}) -- [User and group ownership]({{< relref "/operate/rs/7.8/installing-upgrading/install/customize-user-and-group.md" >}}) +- [CentOS/RHEL firewall configuration](/content/operate/rs/7.8/installing-upgrading/configuring/centos-rhel-firewall.md) +- [Change socket file location](/content/operate/rs/7.8/installing-upgrading/configuring/change-location-socket-files.md) +- [Cluster DNS configuration](/content/operate/rs/7.8/networking/cluster-dns.md) +- [Cluster load balancer setup](/content/operate/rs/7.8/networking/cluster-lba-setup.md) +- [File locations](/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/file-locations.md) +- [Linux swap space configuration](/content/operate/rs/7.8/installing-upgrading/configuring/linux-swap.md) +- [mDNS client prerequisites](/content/operate/rs/7.8/networking/mdns.md) +- [User and group ownership](/content/operate/rs/7.8/installing-upgrading/install/customize-user-and-group.md) ## Next steps After you install Redis Enterprise Software and set up your cluster, you can: -- [Add users]({{< relref "/operate/rs/7.8/security/access-control/create-users" >}}) to the cluster with specific permissions. To begin, start with [Access control]({{< relref "/operate/rs/7.8/security/access-control" >}}). +- [Add users](/content/operate/rs/7.8/security/access-control/create-users.md) to the cluster with specific permissions. To begin, start with [Access control](/content/operate/rs/7.8/security/access-control/_index.md). -- [Create databases]({{< relref "/operate/rs/7.8/databases/create" >}}) to use with your applications. +- [Create databases](/content/operate/rs/7.8/databases/create.md) to use with your applications. diff --git a/content/operate/rs/7.8/installing-upgrading/configuring/centos-rhel-firewall.md b/content/operate/rs/7.8/installing-upgrading/configuring/centos-rhel-firewall.md index 11beb663fd..76517f33fe 100644 --- a/content/operate/rs/7.8/installing-upgrading/configuring/centos-rhel-firewall.md +++ b/content/operate/rs/7.8/installing-upgrading/configuring/centos-rhel-firewall.md @@ -20,14 +20,13 @@ When you install Redis Enterprise Software on CentOS or RHEL, it automatically c - A service named **redislabs-clients**, which includes the ports and protocols needed for external communication (outside of the cluster). These services are defined but not allowed through the firewall by default. -During Redis Enterprise Software installation, the [installer prompts]({{< relref "/operate/rs/7.8/installing-upgrading/install/manage-installation-questions" >}}) you to confirm auto-configuration of a default (public) zone +During Redis Enterprise Software installation, the [installer prompts](/content/operate/rs/7.8/installing-upgrading/install/manage-installation-questions.md) you to confirm auto-configuration of a default (public) zone to allow the **redislabs** service. Although automatic firewall configuration simplifies installation, your deployment might not be secure if you did not use other methods to secure the host machine's network, such as external firewall rules or security groups. You can use firewalld configuration tools such as **firewall-cmd** (command line) or **firewall-config** (UI) to create more specific firewall policies that allow these two services through the firewall, as necessary. -{{}} -If databases are created with non-standard [Redis Enterprise Software ports]({{< relref "/operate/rs/7.8/networking/port-configurations" >}}), -you need to explicitly configure firewalld to make sure those ports are not blocked. -{{}} +> [!NOTE] +> If databases are created with non-standard [Redis Enterprise Software ports](/content/operate/rs/7.8/networking/port-configurations.md), +> you need to explicitly configure firewalld to make sure those ports are not blocked. diff --git a/content/operate/rs/7.8/installing-upgrading/configuring/change-location-socket-files.md b/content/operate/rs/7.8/installing-upgrading/configuring/change-location-socket-files.md index dc621f0e54..77307ca000 100644 --- a/content/operate/rs/7.8/installing-upgrading/configuring/change-location-socket-files.md +++ b/content/operate/rs/7.8/installing-upgrading/configuring/change-location-socket-files.md @@ -18,15 +18,15 @@ There are two default locations for the socket files in Redis Enterprise Softwar - `/tmp` - In clean installations of Redis Enterprise Software version earlier than 5.2.2 - `/var/opt/redislabs/run` - In clean installations of Redis Enterprise Software version 5.2.2 and later - {{}} -The default location was changed in case you run any maintenance procedures that delete the `/tmp` directory. - {{}} + > [!NOTE] + > The default location was changed in case you run any maintenance procedures that delete the `/tmp` directory. + > When you upgrade Redis Enterprise Software from an earlier version to 5.2.2 or later, the socket files are not moved to the new location by default. You need to specify the socket file location [during installation](#during-install). ## Specify socket file location during install {#during-install} -To specify the socket file location during a new installation, follow the [Install Redis Enterprise Software on Linux]({{}}) instructions, but use the `-s` [installation script option]({{}}): +To specify the socket file location during a new installation, follow the [Install Redis Enterprise Software on Linux](/content/operate/rs/7.8/installing-upgrading/install/install-on-linux.md) instructions, but use the `-s` [installation script option](/content/operate/rs/7.8/installing-upgrading/install/install-script.md): ```sh sudo ./install.sh -s @@ -44,15 +44,15 @@ Directly changing the socket file location directly is not supported for bootstr To change the socket file location for all nodes in a cluster, follow these steps: -1. Install Redis Enterprise Software on a new node with the new socket file location. Follow the [Install Redis Enterprise Software on Linux]({{}}) instructions, but use the -s [installation script option]({{}}): +1. Install Redis Enterprise Software on a new node with the new socket file location. Follow the [Install Redis Enterprise Software on Linux](/content/operate/rs/7.8/installing-upgrading/install/install-on-linux.md) instructions, but use the -s [installation script option](/content/operate/rs/7.8/installing-upgrading/install/install-script.md): ```sh sudo ./install.sh -s ``` -1. [Add the new node]({{}}) to the existing cluster. +1. [Add the new node](/content/operate/rs/7.8/clusters/add-node.md) to the existing cluster. -1. [Remove a node]({{}}) with the old socket file location. +1. [Remove a node](/content/operate/rs/7.8/clusters/remove-node.md#remove-a-node) with the old socket file location. 1. Repeat the previous steps until all nodes with the old socket file location have been replaced. @@ -60,10 +60,10 @@ To change the socket file location for all nodes in a cluster, follow these step To migrate an existing cluster to a new cluster with a different socket file location: -1. Create a new cluster with the new socket file location. To do so, follow the [Install Redis Enterprise Software on Linux]({{}}) instructions, but use the `-s` [installation script option]({{}}): +1. Create a new cluster with the new socket file location. To do so, follow the [Install Redis Enterprise Software on Linux](/content/operate/rs/7.8/installing-upgrading/install/install-on-linux.md) instructions, but use the `-s` [installation script option](/content/operate/rs/7.8/installing-upgrading/install/install-script.md): ``` sudo ./install.sh -s ``` -1. Use Replica Of to migrate your databases from the original cluster to the new cluster. For detailed steps, see the procedure to [configure Replica Of with different Redis Enterprise clusters]({{}}). +1. Use Replica Of to migrate your databases from the original cluster to the new cluster. For detailed steps, see the procedure to [configure Replica Of with different Redis Enterprise clusters](/content/operate/rs/7.8/databases/import-export/replica-of/create.md#different-cluster). diff --git a/content/operate/rs/7.8/installing-upgrading/configuring/linux-swap.md b/content/operate/rs/7.8/installing-upgrading/configuring/linux-swap.md index c5c92a1d8e..e4f9389ed6 100644 --- a/content/operate/rs/7.8/installing-upgrading/configuring/linux-swap.md +++ b/content/operate/rs/7.8/installing-upgrading/configuring/linux-swap.md @@ -12,7 +12,7 @@ url: '/operate/rs/7.8/installing-upgrading/configuring/linux-swap/' --- Linux operating systems use swap space, which is enabled by default, to help manage memory (pages) by copying pages from RAM to disk. Due to the way Redis Enterprise Software -utilizes and manages memory, it is best to prevent OS swapping. For more details, see [memory limits]({{< relref "/operate/rs/7.8/databases/memory-performance/memory-limit.md" >}}). The +utilizes and manages memory, it is best to prevent OS swapping. For more details, see [memory limits](/content/operate/rs/7.8/databases/memory-performance/memory-limit.md). The recommendation is to turn off Linux swap completely in the OS. When you install or build the OS on the machine intended to host your Redis Enterprise Software cluster, avoid configuring swap partitions if possible. diff --git a/content/operate/rs/7.8/installing-upgrading/creating-support-package.md b/content/operate/rs/7.8/installing-upgrading/creating-support-package.md index 5d3e77121c..d2e77df4ad 100644 --- a/content/operate/rs/7.8/installing-upgrading/creating-support-package.md +++ b/content/operate/rs/7.8/installing-upgrading/creating-support-package.md @@ -16,9 +16,8 @@ If you encounter any issues that you are not able to resolve yourself and need to [contact Redis support](https://redis.io/support/) for assistance, you can [create a support package](#create-support-package) that gathers all essential information to help debug your issues. -{{< note >}} -The process of creating the support package can take several minutes and generates load on the system. -{{< /note >}} +> [!NOTE] +> The process of creating the support package can take several minutes and generates load on the system. ## Support package files @@ -38,10 +37,10 @@ The following table describes the included files: | /database_/ | Directory that includes files for a specific database. is the database ID. | | database__ccs_info.txt | Database information from the cluster configuration store (CCS). Includes settings for databases, endpoints, shards, replicas, and CRDB. | | database_.clientlist | List of clients connected to the database when the support package was created. | -| database_.info | Redis information and statistics for the database. See [`INFO`]({{}}) for details about the collected fields. | -| database_.rladmin | Database information. See [`rladmin info db`]({{}}) for an example of collected fields. Also includes creation time, last changed time, Redis version, memory limit, persistence type, eviction policy, hashing policy, and whether SSL, backups, and email alerts are enabled. | +| database_.info | Redis information and statistics for the database. See [`INFO`](/content/commands/info.md) for details about the collected fields. | +| database_.rladmin | Database information. See [`rladmin info db`](/content/operate/rs/7.8/references/cli-utilities/rladmin/info.md#info-db) for an example of collected fields. Also includes creation time, last changed time, Redis version, memory limit, persistence type, eviction policy, hashing policy, and whether SSL, backups, and email alerts are enabled. | | database_.slowlog | Contains slowlog output, which includes commands that took longer than 10 milliseconds. Only included if `slowlog_in_sanitized_support` is `true` in cluster settings. | -| /node_/redis_.txt | For each shard of the specified database only. Includes shard configuration and [information]({{}}), slowlog information, and latency information. | +| /node_/redis_.txt | For each shard of the specified database only. Includes shard configuration and [information](/content/commands/info.md), slowlog information, and latency information. | ### Node support package files @@ -56,9 +55,9 @@ The following table describes the included files: | /logs/ | Directory that includes logs. | | node_.ccs | Includes cluster configuration, node configuration, and DMC proxy configuration. | | node__envoy_config.json | Envoy configuration. | -| node_.rladmin | Information about the cluster's nodes, databases, endpoints, and shards. See [`rladmin status`]({{}}) for example output. | +| node_.rladmin | Information about the cluster's nodes, databases, endpoints, and shards. See [`rladmin status`](/content/operate/rs/7.8/references/cli-utilities/rladmin/status.md) for example output. | | node__sys_info.txt | Node's system information including:
    • Socket files list
    • Log files list
    • Processes running on the node
    • Disk usage
    • Persistent files list
    • Memory usage
    • Network interfaces
    • Installed packages
    • Active iptables
    • OS and platform
    • Network connection
    • Status of Redis processes | -| redis_.txt | For each shard of the specified database only. Includes shard configuration and [information]({{}}), slowlog information, and latency information. | +| redis_.txt | For each shard of the specified database only. Includes shard configuration and [information](/content/commands/info.md), slowlog information, and latency information. | Each node's `/conf/` directory contains the following files: @@ -142,7 +141,7 @@ To create a support package from the Cluster Manager UI: ### Command-line method -If package creation fails with `internal error` or if you cannot access the UI, create a support package for the cluster from the command line on any node in the cluster using the [`rladmin cluster debug_info`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/cluster/debug_info" >}}) command: +If package creation fails with `internal error` or if you cannot access the UI, create a support package for the cluster from the command line on any node in the cluster using the [`rladmin cluster debug_info`](/content/operate/rs/7.8/references/cli-utilities/rladmin/cluster/debug_info.md) command: ```sh /opt/redislabs/bin/rladmin cluster debug_info @@ -174,7 +173,7 @@ Upload the tar file to [Redis support](https://redis.com/company/support/). The ### REST API method -You can also use `debuginfo` [REST API]({{< relref "/operate/rs/7.8/references/rest-api" >}}) requests to create and download support packages. +You can also use `debuginfo` [REST API](/content/operate/rs/7.8/references/rest-api/_index.md) requests to create and download support packages. To download debug info from all nodes and databases: diff --git a/content/operate/rs/7.8/installing-upgrading/install/_index.md b/content/operate/rs/7.8/installing-upgrading/install/_index.md index 7af29e86c2..63884343e7 100644 --- a/content/operate/rs/7.8/installing-upgrading/install/_index.md +++ b/content/operate/rs/7.8/installing-upgrading/install/_index.md @@ -12,13 +12,13 @@ weight: 35 url: '/operate/rs/7.8/installing-upgrading/install/' --- -After you [plan your deployment]({{< relref "/operate/rs/7.8/installing-upgrading/install/plan-deployment" >}}), [download a Redis Enterprise Software installation package]({{< relref "/operate/rs/7.8/installing-upgrading/install/prepare-install/download-install-package" >}}), and finish [installation preparation]({{< relref "/operate/rs/7.8/installing-upgrading/install/prepare-install" >}}): +After you [plan your deployment](/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/_index.md), [download a Redis Enterprise Software installation package](/content/operate/rs/7.8/installing-upgrading/install/prepare-install/download-install-package.md), and finish [installation preparation](/content/operate/rs/7.8/installing-upgrading/install/prepare-install/_index.md): -1. [Install the Redis Enterprise Software package]({{< relref "/operate/rs/7.8/installing-upgrading/install/install-on-linux" >}}) on one of the nodes in the cluster. +1. [Install the Redis Enterprise Software package](/content/operate/rs/7.8/installing-upgrading/install/install-on-linux.md) on one of the nodes in the cluster. 1. Repeat this process for each node in the cluster. -For installation on machines without an internet connection, see [Offline installation]({{< relref "/operate/rs/7.8/installing-upgrading/install/offline-installation" >}}). +For installation on machines without an internet connection, see [Offline installation](/content/operate/rs/7.8/installing-upgrading/install/offline-installation.md). ## Permissions and access @@ -28,9 +28,9 @@ For installation on machines without an internet connection, see [Offline instal - Redis Enterprise Software is certified to run with permissions set to `750`, an industry standard. - {{}} -Do not reduce permissions to `700`. This configuration has not been tested and is not supported. - {{}} + > [!WARNING] + > Do not reduce permissions to `700`. This configuration has not been tested and is not supported. + > - Redis Enterprise Software requires `umask` to be `0022` during installation to correctly set permissions for the installed directories and files. @@ -38,26 +38,26 @@ Do not reduce permissions to `700`. This configuration has not been tested and i If you've already installed Redis Enterprise Software, you can also: -- [Upgrade an existing deployment]({{< relref "/operate/rs/7.8/installing-upgrading/upgrading" >}}). +- [Upgrade an existing deployment](/content/operate/rs/7.8/installing-upgrading/upgrading/_index.md). -- [Uninstall an existing deployment]({{< relref "/operate/rs/7.8/installing-upgrading/uninstalling.md" >}}). +- [Uninstall an existing deployment](/content/operate/rs/7.8/installing-upgrading/uninstalling.md). To learn more about customization and find answers to related questions, see: -- [CentOS/RHEL Firewall configuration]({{< relref "/operate/rs/7.8/installing-upgrading/configuring/centos-rhel-firewall.md" >}}) -- [Change socket file location]({{< relref "/operate/rs/7.8/installing-upgrading/configuring/change-location-socket-files.md" >}}) -- [Cluster DNS configuration]({{< relref "/operate/rs/7.8/networking/cluster-dns.md" >}}) -- [Cluster load balancer setup]({{< relref "/operate/rs/7.8/networking/cluster-lba-setup.md" >}}) -- [File locations]({{< relref "/operate/rs/7.8/installing-upgrading/install/plan-deployment/file-locations.md" >}}) -- [Supported platforms]({{< relref "/operate/rs/7.8/installing-upgrading/install/plan-deployment/supported-platforms.md" >}}) -- [Manage installation questions]({{< relref "/operate/rs/7.8/installing-upgrading/install/manage-installation-questions.md" >}}) -- [mDNS client prerequisites]({{< relref "/operate/rs/7.8/networking/mdns.md" >}}) -- [User and group ownership]({{< relref "/operate/rs/7.8/installing-upgrading/install/customize-user-and-group.md" >}}) +- [CentOS/RHEL Firewall configuration](/content/operate/rs/7.8/installing-upgrading/configuring/centos-rhel-firewall.md) +- [Change socket file location](/content/operate/rs/7.8/installing-upgrading/configuring/change-location-socket-files.md) +- [Cluster DNS configuration](/content/operate/rs/7.8/networking/cluster-dns.md) +- [Cluster load balancer setup](/content/operate/rs/7.8/networking/cluster-lba-setup.md) +- [File locations](/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/file-locations.md) +- [Supported platforms](/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/supported-platforms.md) +- [Manage installation questions](/content/operate/rs/7.8/installing-upgrading/install/manage-installation-questions.md) +- [mDNS client prerequisites](/content/operate/rs/7.8/networking/mdns.md) +- [User and group ownership](/content/operate/rs/7.8/installing-upgrading/install/customize-user-and-group.md) ## Next steps After your cluster is set up with nodes, you can: -- [Add users]({{< relref "/operate/rs/7.8/security/access-control/create-users" >}}) to the cluster with specific permissions. To begin, start with [Access control]({{< relref "/operate/rs/7.8/security/access-control" >}}). -- [Create databases]({{< relref "/operate/rs/7.8/databases/create" >}}) to use with your applications. +- [Add users](/content/operate/rs/7.8/security/access-control/create-users.md) to the cluster with specific permissions. To begin, start with [Access control](/content/operate/rs/7.8/security/access-control/_index.md). +- [Create databases](/content/operate/rs/7.8/databases/create.md) to use with your applications. diff --git a/content/operate/rs/7.8/installing-upgrading/install/customize-install-directories.md b/content/operate/rs/7.8/installing-upgrading/install/customize-install-directories.md index 927c991860..a4d721b5c5 100644 --- a/content/operate/rs/7.8/installing-upgrading/install/customize-install-directories.md +++ b/content/operate/rs/7.8/installing-upgrading/install/customize-install-directories.md @@ -55,7 +55,7 @@ These files are not in the custom directories: - /etc/opt/redislabs/redislabs_custom_install_version - /etc/opt/redislabs/redislabs_env_config.sh -To specify directories during [installation]({{< relref "/operate/rs/7.8/installing-upgrading/install/install-on-linux" >}}), include installer flags as [command-line options]({{< relref "/operate/rs/7.8/installing-upgrading/install/install-script" >}}) when you run the `install.sh` script. For example: +To specify directories during [installation](/content/operate/rs/7.8/installing-upgrading/install/install-on-linux.md), include installer flags as [command-line options](/content/operate/rs/7.8/installing-upgrading/install/install-script.md) when you run the `install.sh` script. For example: ```sh sudo ./install.sh --install-dir --config-dir --var-dir diff --git a/content/operate/rs/7.8/installing-upgrading/install/customize-user-and-group.md b/content/operate/rs/7.8/installing-upgrading/install/customize-user-and-group.md index 46229de467..e9f0f53e63 100644 --- a/content/operate/rs/7.8/installing-upgrading/install/customize-user-and-group.md +++ b/content/operate/rs/7.8/installing-upgrading/install/customize-user-and-group.md @@ -11,21 +11,20 @@ weight: 40 url: '/operate/rs/7.8/installing-upgrading/install/customize-user-and-group/' --- -By default, Redis Enterprise Software is installed with the user:group `redislabs:redislabs`. See [Access control]({{< relref "/operate/rs/7.8/security/access-control" >}}) for user and group security information. +By default, Redis Enterprise Software is installed with the user:group `redislabs:redislabs`. See [Access control](/content/operate/rs/7.8/security/access-control/_index.md) for user and group security information. During installation, you can specify the user and group that own all Redis Enterprise Software processes. If you specify the user only, then installation is run with the primary group that the user belongs to. -{{< note >}} -- Custom installation user is supported on Red Hat Enterprise Linux and compatible distributions. -- When you install with custom directories, the installation does not run as an RPM file. -- You must create the user and group before attempting to install Redis Software. -- You can specify an LDAP user as the installation user. -- The custom group must be the user's primary group. If the user's primary group differs from the custom group, database backups can fail because the installation user cannot change backup file ownership to a different group. -{{< /note >}} +> [!NOTE] +> - Custom installation user is supported on Red Hat Enterprise Linux and compatible distributions. +> - When you install with custom directories, the installation does not run as an RPM file. +> - You must create the user and group before attempting to install Redis Software. +> - You can specify an LDAP user as the installation user. +> - The custom group must be the user's primary group. If the user's primary group differs from the custom group, database backups can fail because the installation user cannot change backup file ownership to a different group. -To customize the user or group during [installation]({{< relref "/operate/rs/7.8/installing-upgrading/install/install-on-linux" >}}), include the `--os-user` or `--os-group` [command-line options]({{< relref "/operate/rs/7.8/installing-upgrading/install/install-script" >}}) when you run the `install.sh` script. For example: +To customize the user or group during [installation](/content/operate/rs/7.8/installing-upgrading/install/install-on-linux.md), include the `--os-user` or `--os-group` [command-line options](/content/operate/rs/7.8/installing-upgrading/install/install-script.md) when you run the `install.sh` script. For example: ```sh sudo ./install.sh --os-user --os-group diff --git a/content/operate/rs/7.8/installing-upgrading/install/install-on-linux.md b/content/operate/rs/7.8/installing-upgrading/install/install-on-linux.md index 678e5570f2..da7ac07718 100644 --- a/content/operate/rs/7.8/installing-upgrading/install/install-on-linux.md +++ b/content/operate/rs/7.8/installing-upgrading/install/install-on-linux.md @@ -11,9 +11,9 @@ weight: 10 url: '/operate/rs/7.8/installing-upgrading/install/install-on-linux/' --- -After you [download a Redis Enterprise Software installation package]({{< relref "/operate/rs/7.8/installing-upgrading/install/prepare-install/download-install-package" >}}), install it on one of the nodes in the cluster. +After you [download a Redis Enterprise Software installation package](/content/operate/rs/7.8/installing-upgrading/install/prepare-install/download-install-package.md), install it on one of the nodes in the cluster. -For installation on machines without an internet connection, see [Offline installation]({{< relref "/operate/rs/7.8/installing-upgrading/install/offline-installation" >}}). +For installation on machines without an internet connection, see [Offline installation](/content/operate/rs/7.8/installing-upgrading/install/offline-installation.md). ## Install on Linux @@ -49,26 +49,26 @@ To install Redis Enterprise Software, use the command line: rpm --checksig ``` -1. To start the installation process, run the installation script. See [installation script options]({{< relref "/operate/rs/7.8/installing-upgrading/install/install-script" >}}) for a list of command-line options you can add to the following command: +1. To start the installation process, run the installation script. See [installation script options](/content/operate/rs/7.8/installing-upgrading/install/install-script.md) for a list of command-line options you can add to the following command: ```sh sudo ./install.sh ``` - {{< note >}} -- The Redis Enterprise Software files are installed in the default [file locations]({{< relref "/operate/rs/7.8/installing-upgrading/install/plan-deployment/file-locations.md" >}}). -- By default, Redis Enterprise Software runs on the OS as the `redislabs` user and `redislabs` group. If needed, you can [specify a different user and group]({{< relref "/operate/rs/7.8/installing-upgrading/install/customize-user-and-group.md" >}}) during the installation. -- You must either be the root user or use `sudo` to run the installation script. - {{< /note >}} + > [!NOTE] + > - The Redis Enterprise Software files are installed in the default [file locations](/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/file-locations.md). + > - By default, Redis Enterprise Software runs on the OS as the `redislabs` user and `redislabs` group. If needed, you can [specify a different user and group](/content/operate/rs/7.8/installing-upgrading/install/customize-user-and-group.md) during the installation. + > - You must either be the root user or use `sudo` to run the installation script. + > -1. Answer the [installation questions]({{< relref "/operate/rs/7.8/installing-upgrading/install/manage-installation-questions.md" >}}) when shown to complete the installation process. +1. Answer the [installation questions](/content/operate/rs/7.8/installing-upgrading/install/manage-installation-questions.md) when shown to complete the installation process. - {{< note >}} -To skip the installation questions, use one of the following methods: - -- Run `./install.sh -y` to answer yes to all of the questions. -- Create an [answer file]({{< relref "/operate/rs/7.8/installing-upgrading/install/manage-installation-questions#configure-file-to-answer" >}}) to answer installation questions automatically. - {{< /note >}} + > [!NOTE] + > To skip the installation questions, use one of the following methods: + > + > - Run `./install.sh -y` to answer yes to all of the questions. + > - Create an [answer file](/content/operate/rs/7.8/installing-upgrading/install/manage-installation-questions.md#configure-file-to-answer) to answer installation questions automatically. + > 1. When installation completes successfully, the output displays the Cluster Manager UI's IP address: @@ -88,7 +88,7 @@ To skip the installation questions, use one of the following methods: ## Auto Tiering installation -If you want to use Auto Tiering for your databases, review the prerequisites, storage requirements, and [other considerations]({{< relref "/operate/rs/7.8/databases/auto-tiering/" >}}) for Auto Tiering databases and prepare and format the flash memory. +If you want to use Auto Tiering for your databases, review the prerequisites, storage requirements, and [other considerations](/content/operate/rs/7.8/databases/auto-tiering/_index.md) for Auto Tiering databases and prepare and format the flash memory. After you install Redis Enterprise Software, use the `prepare_flash` script to prepare and format flash memory: @@ -108,17 +108,17 @@ sudo lsblk To learn more about customization and find answers to related questions, see: -- [CentOS/RHEL firewall configuration]({{< relref "/operate/rs/7.8/installing-upgrading/configuring/centos-rhel-firewall.md" >}}) -- [Change socket file location]({{< relref "/operate/rs/7.8/installing-upgrading/configuring/change-location-socket-files.md" >}}) -- [Cluster DNS configuration]({{< relref "/operate/rs/7.8/networking/cluster-dns.md" >}}) -- [Cluster load balancer setup]({{< relref "/operate/rs/7.8/networking/cluster-lba-setup.md" >}}) -- [mDNS client prerequisites]({{< relref "/operate/rs/7.8/networking/mdns.md" >}}) -- [File locations]({{< relref "/operate/rs/7.8/installing-upgrading/install/plan-deployment/file-locations.md" >}}) -- [Supported platforms]({{< relref "/operate/rs/7.8/installing-upgrading/install/plan-deployment/supported-platforms.md" >}}) +- [CentOS/RHEL firewall configuration](/content/operate/rs/7.8/installing-upgrading/configuring/centos-rhel-firewall.md) +- [Change socket file location](/content/operate/rs/7.8/installing-upgrading/configuring/change-location-socket-files.md) +- [Cluster DNS configuration](/content/operate/rs/7.8/networking/cluster-dns.md) +- [Cluster load balancer setup](/content/operate/rs/7.8/networking/cluster-lba-setup.md) +- [mDNS client prerequisites](/content/operate/rs/7.8/networking/mdns.md) +- [File locations](/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/file-locations.md) +- [Supported platforms](/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/supported-platforms.md) ## Limitations -Several Redis Enterprise Software installation reference files are installed to the directory `/etc/opt/redislabs/` even if you use [custom installation directories]({{< relref "/operate/rs/7.8/installing-upgrading/install/customize-install-directories" >}}). +Several Redis Enterprise Software installation reference files are installed to the directory `/etc/opt/redislabs/` even if you use [custom installation directories](/content/operate/rs/7.8/installing-upgrading/install/customize-install-directories.md). As a workaround to install Redis Enterprise Software without using any root directories, do the following before installing Redis Enterprise Software: @@ -128,11 +128,11 @@ As a workaround to install Redis Enterprise Software without using any root dire ## Next steps -1. [Create]({{< relref "/operate/rs/7.8/clusters/new-cluster-setup.md" >}}) - or [join]({{< relref "/operate/rs/7.8/clusters/add-node.md" >}}) an existing Redis Enterprise Software cluster. +1. [Create](/content/operate/rs/7.8/clusters/new-cluster-setup.md) + or [join](/content/operate/rs/7.8/clusters/add-node.md) an existing Redis Enterprise Software cluster. -1. [Create a database]({{< relref "/operate/rs/7.8/databases/create" >}}). +1. [Create a database](/content/operate/rs/7.8/databases/create.md). - For geo-distributed Active-Active replication, create an [Active-Active]({{< relref "/operate/rs/7.8/databases/active-active/create.md" >}}) database. + For geo-distributed Active-Active replication, create an [Active-Active](/content/operate/rs/7.8/databases/active-active/create.md) database. -1. [Add users]({{< relref "/operate/rs/7.8/security/access-control/create-users" >}}) to the cluster with specific permissions. To begin, start with [Access control]({{< relref "/operate/rs/7.8/security/access-control" >}}). +1. [Add users](/content/operate/rs/7.8/security/access-control/create-users.md) to the cluster with specific permissions. To begin, start with [Access control](/content/operate/rs/7.8/security/access-control/_index.md). diff --git a/content/operate/rs/7.8/installing-upgrading/install/install-script.md b/content/operate/rs/7.8/installing-upgrading/install/install-script.md index 03b3f3e6df..652d91f85e 100644 --- a/content/operate/rs/7.8/installing-upgrading/install/install-script.md +++ b/content/operate/rs/7.8/installing-upgrading/install/install-script.md @@ -17,11 +17,11 @@ The following options are supported: | Option | Description | |--------|-------------| -| `-y` | Automatically answers `yes` to all install prompts, accepting all default values
    See [Manage install questions]({{< relref "/operate/rs/7.8/installing-upgrading/install/manage-installation-questions" >}})| -| `-c ` | Specify answer file used to respond to install prompts
    See [Manage install questions]({{< relref "/operate/rs/7.8/installing-upgrading/install/manage-installation-questions" >}})| +| `-y` | Automatically answers `yes` to all install prompts, accepting all default values
    See [Manage install questions](/content/operate/rs/7.8/installing-upgrading/install/manage-installation-questions.md)| +| `-c ` | Specify answer file used to respond to install prompts
    See [Manage install questions](/content/operate/rs/7.8/installing-upgrading/install/manage-installation-questions.md)| | `-s ` | Specify directory for redislabs unix sockets _(new installs only)_| -| `--install-dir ` | Specifies installation directory _(new installs only)_
    See [Customize install locations]({{< relref "/operate/rs/7.8/installing-upgrading/install/customize-install-directories" >}})| -| `--config-dir ` | Configuration file directory *(new installs only)*
    See [Customize install locations]({{< relref "/operate/rs/7.8/installing-upgrading/install/customize-install-directories" >}})| -|
    `--var-dir ` | Var directory used for installation *(new installs only)*
    See [Customize install locations]({{< relref "/operate/rs/7.8/installing-upgrading/install/customize-install-directories" >}})| -| `--os-user `| Operating system user account associated with install; default: `redislabs`
    See [Customize user and group]({{< relref "/operate/rs/7.8/installing-upgrading/install/customize-user-and-group" >}}) *(new installs only)*| -|
    `--os-group ` | Operating system group associated with install; default: `redislabs`
    See [Customize user and group]({{< relref "/operate/rs/7.8/installing-upgrading/install/customize-user-and-group" >}}) *(new installs only)* | +|
    `--install-dir ` | Specifies installation directory _(new installs only)_
    See [Customize install locations](/content/operate/rs/7.8/installing-upgrading/install/customize-install-directories.md)| +| `--config-dir ` | Configuration file directory *(new installs only)*
    See [Customize install locations](/content/operate/rs/7.8/installing-upgrading/install/customize-install-directories.md)| +|
    `--var-dir ` | Var directory used for installation *(new installs only)*
    See [Customize install locations](/content/operate/rs/7.8/installing-upgrading/install/customize-install-directories.md)| +| `--os-user `| Operating system user account associated with install; default: `redislabs`
    See [Customize user and group](/content/operate/rs/7.8/installing-upgrading/install/customize-user-and-group.md) *(new installs only)*| +|
    `--os-group ` | Operating system group associated with install; default: `redislabs`
    See [Customize user and group](/content/operate/rs/7.8/installing-upgrading/install/customize-user-and-group.md) *(new installs only)* | diff --git a/content/operate/rs/7.8/installing-upgrading/install/manage-installation-questions.md b/content/operate/rs/7.8/installing-upgrading/install/manage-installation-questions.md index a396c75bc2..c7e209f983 100644 --- a/content/operate/rs/7.8/installing-upgrading/install/manage-installation-questions.md +++ b/content/operate/rs/7.8/installing-upgrading/install/manage-installation-questions.md @@ -22,7 +22,7 @@ Several questions appear during installation: - **Linux swap file** - `Swap is enabled. Do you want to proceed? [Y/N]?` - We recommend that you [disable Linux swap]({{< relref "/operate/rs/7.8/installing-upgrading/configuring/linux-swap.md" >}}) in the operating system configuration + We recommend that you [disable Linux swap](/content/operate/rs/7.8/installing-upgrading/configuring/linux-swap.md) in the operating system configuration to give Redis Enterprise Software control of the memory allocation. - **Automatic OS tuning** - `Do you want to automatically tune the system for best performance [Y/N]?` @@ -36,15 +36,15 @@ Several questions appear during installation: Redis Enterprise Software requires that all cluster nodes have synchronized time. You can either let the installation process configure NTP - or you can [configure NTP manually]({{< relref "/operate/rs/7.8/clusters/configure/sync-clocks.md" >}}). + or you can [configure NTP manually](/content/operate/rs/7.8/clusters/configure/sync-clocks.md). - **Firewall ports** - `Would you like to open RedisLabs cluster ports on the default firewall zone [Y/N]?` - Redis Enterprise Software requires that all nodes have [specific network ports]({{< relref "/operate/rs/7.8/networking/port-configurations.md" >}}) open. + Redis Enterprise Software requires that all nodes have [specific network ports](/content/operate/rs/7.8/networking/port-configurations.md) open. To open the ports, you can: - Answer `Y` to let the installation process open these ports. - - Answer `N` and configure the firewall manually for [RHEL/CentOS firewall]({{< relref "/operate/rs/7.8/installing-upgrading/configuring/centos-rhel-firewall" >}}). + - Answer `N` and configure the firewall manually for [RHEL/CentOS firewall](/content/operate/rs/7.8/installing-upgrading/configuring/centos-rhel-firewall.md). - Answer `N` and configure the firewall on the node manually for your OS. - **Installation verification (rlcheck)** - `Would you like to run rlcheck to verify proper configuration? [Y/N]?` @@ -62,11 +62,11 @@ Several questions appear during installation: ## Answer install questions automatically -To perform a silent (or automated) install, answer the questions when you start the [install]({{< relref "/operate/rs/7.8/installing-upgrading/install/install-on-linux" >}}). +To perform a silent (or automated) install, answer the questions when you start the [install](/content/operate/rs/7.8/installing-upgrading/install/install-on-linux.md). ### Answer yes to all questions -To automatically answer `yes` to all questions (which accepts the default values), run the [installation script]({{< relref "/operate/rs/7.8/installing-upgrading/install/install-script" >}}) with the `-y` parameter: +To automatically answer `yes` to all questions (which accepts the default values), run the [installation script](/content/operate/rs/7.8/installing-upgrading/install/install-script.md) with the `-y` parameter: ```bash ./install.sh -y @@ -93,7 +93,7 @@ Use an answer file to manage your response: If you use `systune=yes`, the installation answers `yes` to all of the system tuning questions. -1. Run the [installation script]({{< relref "/operate/rs/7.8/installing-upgrading/install/install-script" >}}) with the `-c` command-line option and add the path to the answer file. +1. Run the [installation script](/content/operate/rs/7.8/installing-upgrading/install/install-script.md) with the `-c` command-line option and add the path to the answer file. For example: diff --git a/content/operate/rs/7.8/installing-upgrading/install/offline-installation.md b/content/operate/rs/7.8/installing-upgrading/install/offline-installation.md index 282e486000..caad736ec2 100644 --- a/content/operate/rs/7.8/installing-upgrading/install/offline-installation.md +++ b/content/operate/rs/7.8/installing-upgrading/install/offline-installation.md @@ -13,7 +13,7 @@ url: '/operate/rs/7.8/installing-upgrading/install/offline-installation/' --- By default, the installation process requires an internet connection to enable installing dependency packages and for [synchronizing the -operating system clock]({{< relref "/operate/rs/7.8/clusters/configure/sync-clocks.md" >}}) against an NTP server. +operating system clock](/content/operate/rs/7.8/clusters/configure/sync-clocks.md) against an NTP server. If you install Redis Enterprise Software on a machine without an internet connection, you need to perform two tasks manually. @@ -24,4 +24,4 @@ When you install Redis Enterprise Software on a machine that is not connected to ## Set up NTP time synchronization -At the end of the installation, the process asks if you want to set up NTP time synchronization. If you choose `Yes` while you are not connected to the internet, the action fails and displays the appropriate error message, but the installation completes successfully. Despite the successful completion of the installation, you still have to configure all nodes for [NTP time synchronization]({{< relref "/operate/rs/7.8/clusters/configure/sync-clocks.md" >}}). +At the end of the installation, the process asks if you want to set up NTP time synchronization. If you choose `Yes` while you are not connected to the internet, the action fails and displays the appropriate error message, but the installation completes successfully. Despite the successful completion of the installation, you still have to configure all nodes for [NTP time synchronization](/content/operate/rs/7.8/clusters/configure/sync-clocks.md). diff --git a/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/_index.md b/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/_index.md index 50e8f16cfc..91bce2d8eb 100644 --- a/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/_index.md +++ b/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/_index.md @@ -14,33 +14,33 @@ url: '/operate/rs/7.8/installing-upgrading/install/plan-deployment/' Before installing Redis Enterprise Software, you need to: -- Set up your hardware. See [Hardware requirements]({{< relref "/operate/rs/7.8/installing-upgrading/install/plan-deployment/hardware-requirements.md" >}}) and [Persistent and ephemeral node storage -]({{< relref "/operate/rs/7.8/installing-upgrading/install/plan-deployment/persistent-ephemeral-storage" >}}) for more information. +- Set up your hardware. See [Hardware requirements](/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/hardware-requirements.md) and [Persistent and ephemeral node storage +](/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/persistent-ephemeral-storage.md) for more information. -- Choose your [deployment platform]({{< relref "/operate/rs/7.8/installing-upgrading/install/plan-deployment/supported-platforms.md" >}}). +- Choose your [deployment platform](/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/supported-platforms.md). Redis Enterprise Software supports a variety of platforms, including: - Multiple Linux distributions (Ubuntu, Red Hat Enterprise Linux (RHEL), IBM CentOS, Oracle Linux) - - [Amazon AWS AMI]({{< relref "/operate/rs/7.8/installing-upgrading/install/plan-deployment/configuring-aws-instances" >}}) - - [Docker container]({{< relref "/operate/rs/7.8/installing-upgrading/quickstarts/docker-quickstart" >}}) (for development and testing only) - - [Kubernetes]({{< relref "/operate/kubernetes" >}}) + - [Amazon AWS AMI](/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/configuring-aws-instances.md) + - [Docker container](/content/operate/rs/7.8/installing-upgrading/quickstarts/docker-quickstart.md) (for development and testing only) + - [Kubernetes](/content/operate/kubernetes/_index.md) - For more details, see [Supported platforms]({{< relref "/operate/rs/7.8/installing-upgrading/install/plan-deployment/supported-platforms.md" >}}). + For more details, see [Supported platforms](/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/supported-platforms.md). -- Open appropriate [network ports]({{< relref "/operate/rs/7.8/networking/port-configurations.md" >}}) in the firewall to allow connections to the nodes. +- Open appropriate [network ports](/content/operate/rs/7.8/networking/port-configurations.md) in the firewall to allow connections to the nodes. -- Configure [cluster DNS]({{< relref "/operate/rs/7.8/networking/cluster-dns.md" >}}) so that cluster nodes can reach each other by DNS names. -- By default, the installation process requires an internet connection to install dependencies and synchronize the operating system clock. To learn more, see [Offline installation]({{< relref "/operate/rs/7.8/installing-upgrading/install/offline-installation" >}}). +- Configure [cluster DNS](/content/operate/rs/7.8/networking/cluster-dns.md) so that cluster nodes can reach each other by DNS names. +- By default, the installation process requires an internet connection to install dependencies and synchronize the operating system clock. To learn more, see [Offline installation](/content/operate/rs/7.8/installing-upgrading/install/offline-installation.md). -- [Configure different mount points for data and log directories]({{}}). +- [Configure different mount points for data and log directories](/content/operate/rs/7.8/installing-upgrading/install/customize-install-directories.md#config-diff-data-log-dirs). ## Next steps After you finish planning your deployment, you can: -- [Download an installation package]({{< relref "/operate/rs/7.8/installing-upgrading/install/prepare-install/download-install-package" >}}). +- [Download an installation package](/content/operate/rs/7.8/installing-upgrading/install/prepare-install/download-install-package.md). -- [Prepare to install]({{< relref "/operate/rs/7.8/installing-upgrading/install/prepare-install" >}}) Redis Enterprise Software. +- [Prepare to install](/content/operate/rs/7.8/installing-upgrading/install/prepare-install/_index.md) Redis Enterprise Software. -- [View installation questions]({{< relref "/operate/rs/7.8/installing-upgrading/install/manage-installation-questions" >}}) and prepare answers before installation. +- [View installation questions](/content/operate/rs/7.8/installing-upgrading/install/manage-installation-questions.md) and prepare answers before installation. diff --git a/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/configuring-aws-instances.md b/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/configuring-aws-instances.md index bea2435701..611d14dea1 100644 --- a/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/configuring-aws-instances.md +++ b/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/configuring-aws-instances.md @@ -27,24 +27,23 @@ not be. If you require a persistent storage location for your database, the storage must be located outside of the instance. When you set up an instance, make sure it has a properly sized EBS-backed volume connected. When you set up Redis Enterprise Software on the instance, make sure that [the -persistence storage]({{< relref "/operate/rs/7.8/installing-upgrading/install/plan-deployment/persistent-ephemeral-storage" >}}) is configured to use this volume. +persistence storage](/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/persistent-ephemeral-storage.md) is configured to use this volume. -{{< note >}} -After [installing the Redis Enterprise Software package]({{< relref "/operate/rs/7.8/installing-upgrading" >}}) on the instance -and **before** running through [the setup process]({{< relref "/operate/rs/7.8/clusters/new-cluster-setup.md" >}}), -you must give the group `redislabs` permission to the EBS volume by -running the following command from the OS command-line interface (CLI): -```sh -chown redislabs:redislabs /< ebs folder name> -``` -{{< /note >}} +> [!NOTE] +> After [installing the Redis Enterprise Software package](/content/operate/rs/7.8/installing-upgrading/_index.md) on the instance +> and **before** running through [the setup process](/content/operate/rs/7.8/clusters/new-cluster-setup.md), +> you must give the group `redislabs` permission to the EBS volume by +> running the following command from the OS command-line interface (CLI): +> ```sh +> chown redislabs:redislabs /< ebs folder name> +> ``` Another feature that may be of importance to you is the use of Provisioned IOPS for EBS-backed volumes. Provisioned IOPS guarantee a certain level of disk performance. There are two features in Redis Enterprise Software where this feature could be critical to use: -1. When using [Auto Tiering]({{< relref "/operate/rs/7.8/databases/auto-tiering/" >}}) +1. When using [Auto Tiering](/content/operate/rs/7.8/databases/auto-tiering/_index.md) 1. When using AOF on every write and there is a high write load. In this case, the provisioned IOPS should be on the nodes used as replicas in the cluster. @@ -53,7 +52,7 @@ this feature could be critical to use: Choose an instance type that has (at minimum) enough free memory and disk space to meet the Redis Enterprise Software [hardware -requirements]({{< relref "/operate/rs/7.8/installing-upgrading/install/plan-deployment/hardware-requirements.md" >}}). +requirements](/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/hardware-requirements.md). In addition, some instance types are optimized for EBS-backed volumes and some are not. If you are using persistent storage, you should use an @@ -69,14 +68,14 @@ When configuring the security group: access the Cluster Manager UI. - If you are using the DNS resolving option with Redis Enterprise Software, define a DNS UDP rule for port 53 to allow access to the databases' endpoints by - using the [DNS resolving mechanism]({{< relref "/operate/rs/7.8/networking/cluster-dns" >}}). + using the [DNS resolving mechanism](/content/operate/rs/7.8/networking/cluster-dns.md). - To create a cluster that has multiple nodes all running as instances on AWS, you need to define a security group that has an All TCP rule for all ports, 0 - 65535, and add it to all instances that are part of the cluster. This ensures that all nodes are able to communicate with each other. - To limit the number of open ports, you can open only the [ports used by Redis Enterprise Software]({{< relref "/operate/rs/7.8/networking/port-configurations.md" >}}). + To limit the number of open ports, you can open only the [ports used by Redis Enterprise Software](/content/operate/rs/7.8/networking/port-configurations.md). After successfully launching the instances: -1. Install Redis Enterprise Software from the [Linux package or AWS AMI]({{< relref "/operate/rs/7.8/installing-upgrading" >}}). -2. [Set up the cluster]({{< relref "/operate/rs/7.8/clusters/new-cluster-setup.md" >}}). +1. Install Redis Enterprise Software from the [Linux package or AWS AMI](/content/operate/rs/7.8/installing-upgrading/_index.md). +2. [Set up the cluster](/content/operate/rs/7.8/clusters/new-cluster-setup.md). diff --git a/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/file-locations.md b/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/file-locations.md index b2e47cdbdf..fd67ae3c54 100644 --- a/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/file-locations.md +++ b/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/file-locations.md @@ -10,9 +10,8 @@ linkTitle: File locations weight: 60 url: '/operate/rs/7.8/installing-upgrading/install/plan-deployment/file-locations/' --- -{{}} -To ensure that Redis Enterprise Software functions properly, be careful with the files in the application directories. If you modify or delete the application files, Redis Enterprise Software might not work as expected. -{{}} +> [!WARNING] +> To ensure that Redis Enterprise Software functions properly, be careful with the files in the application directories. If you modify or delete the application files, Redis Enterprise Software might not work as expected. ## Application directories @@ -21,7 +20,7 @@ The directories that Redis Enterprise Software installs into are: | **Path** | **Description** | |------------|-----------------| | /opt/redislabs | Main installation directory for all Redis Enterprise Software binaries | -| /opt/redislabs/bin | Binaries for all the utilities for command-line access and management, such as [`rladmin`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin" >}}) or [`redis-cli`]({{< relref "/operate/rs/7.8/references/cli-utilities/redis-cli" >}}) | +| /opt/redislabs/bin | Binaries for all the utilities for command-line access and management, such as [`rladmin`](/content/operate/rs/7.8/references/cli-utilities/rladmin/_index.md) or [`redis-cli`](/content/operate/rs/7.8/references/cli-utilities/redis-cli/_index.md) | | /opt/redislabs/config | System configuration files | | /opt/redislabs/lib | System library files | | /opt/redislabs/sbin | System binaries for tweaking provisioning | @@ -40,5 +39,5 @@ The default directories that Redis Enterprise Software uses for data and metadat You can change these file locations for: -- [Ephemeral and persistence storage]({{< relref "/operate/rs/7.8/clusters/new-cluster-setup.md" >}}) during cluster setup -- [Socket files]({{< relref "/operate/rs/7.8/installing-upgrading/configuring/change-location-socket-files.md" >}}) after cluster setup +- [Ephemeral and persistence storage](/content/operate/rs/7.8/clusters/new-cluster-setup.md) during cluster setup +- [Socket files](/content/operate/rs/7.8/installing-upgrading/configuring/change-location-socket-files.md) after cluster setup diff --git a/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/hardware-requirements.md b/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/hardware-requirements.md index d959e0b12c..8dc3c02572 100644 --- a/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/hardware-requirements.md +++ b/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/hardware-requirements.md @@ -22,25 +22,24 @@ Factors to consider when sizing your database. - **Dataset size** – Your limit should be greater than your dataset size to leave room for overhead. - **Database throughput** – High throughput needs more shards, leading to a higher memory limit. -- [**Modules**]({{< relref "/operate/oss_and_stack/stack-with-enterprise" >}}) – Using modules with your database consumes more memory. -- [**Database clustering**]({{< relref "/operate/rs/7.8/databases/durability-ha/clustering" >}}) – Allows you to spread your data into shards across multiple nodes. -- [**Database replication**]({{< relref "/operate/rs/7.8/databases/durability-ha/replication" >}}) – Enabling replication doubles memory consumption. +- [**Modules**](/content/operate/oss_and_stack/stack-with-enterprise/_index.md) – Using modules with your database consumes more memory. +- [**Database clustering**](/content/operate/rs/7.8/databases/durability-ha/clustering.md) – Allows you to spread your data into shards across multiple nodes. +- [**Database replication**](/content/operate/rs/7.8/databases/durability-ha/replication.md) – Enabling replication doubles memory consumption. ### Active-Active database sizing {#active-active-sizing} Additional factors for sizing Active-Active databases: -- [**Active-Active replication**]({{< relref "/operate/rs/7.8/databases/active-active" >}}) – Requires double the memory of regular replication, which can be up to two times (2x) the original data size per instance. -- [**Database replication backlog**]({{< relref "/operate/rs/7.8/databases/durability-ha/replication#database-replication-backlog" >}}) – For synchronization between shards. By default, this is set to 1% of the database size. -- [**Active-Active replication backlog**]({{< relref "/operate/rs/7.8/databases/active-active/manage#replication-backlog" >}}) – For synchronization between clusters. By default, this is set to 1% of the database size. +- [**Active-Active replication**](/content/operate/rs/7.8/databases/active-active/_index.md) – Requires double the memory of regular replication, which can be up to two times (2x) the original data size per instance. +- [**Database replication backlog**](/content/operate/rs/7.8/databases/durability-ha/replication.md#database-replication-backlog) – For synchronization between shards. By default, this is set to 1% of the database size. +- [**Active-Active replication backlog**](/content/operate/rs/7.8/databases/active-active/manage.md#replication-backlog) – For synchronization between clusters. By default, this is set to 1% of the database size. -{{}} -Active-Active databases have a lower threshold for activating the eviction policy, because it requires propagation to all participating clusters. The eviction policy starts to evict keys when one of the Active-Active instances reaches 80% of its memory limit. -{{}} +> [!NOTE] +> Active-Active databases have a lower threshold for activating the eviction policy, because it requires propagation to all participating clusters. The eviction policy starts to evict keys when one of the Active-Active instances reaches 80% of its memory limit. ### Sizing databases with Auto Tiering enabled {#redis-on-flash-sizing} Additional factors for sizing databases with Auto Tiering enabled: -- [**Database persistence**]({{< relref "/operate/rs/7.8/databases/configure/database-persistence#redis-on-flash-data-persistence" >}}) – Auto Tiering uses dual database persistence where both the primary and replica shards persist to disk. This may add some processor and network overhead, especially in cloud configurations with network-attached storage. +- [**Database persistence**](/content/operate/rs/7.8/databases/configure/database-persistence.md#redis-on-flash-data-persistence) – Auto Tiering uses dual database persistence where both the primary and replica shards persist to disk. This may add some processor and network overhead, especially in cloud configurations with network-attached storage. diff --git a/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/persistent-ephemeral-storage.md b/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/persistent-ephemeral-storage.md index d054c9aee0..ca25bcfc4d 100644 --- a/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/persistent-ephemeral-storage.md +++ b/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/persistent-ephemeral-storage.md @@ -13,12 +13,11 @@ weight: 50 url: '/operate/rs/7.8/installing-upgrading/install/plan-deployment/persistent-ephemeral-storage/' --- For each node in the cluster, you can configure paths for both persistent -storage and ephemeral storage. To do so, the volume must have full permissions for user and group `redislabs` or users:group `redislabs:redislabs`. See the [Customize system user and group]({{< relref "/operate/rs/7.8/installing-upgrading/install/customize-user-and-group" >}}) page for instructions. +storage and ephemeral storage. To do so, the volume must have full permissions for user and group `redislabs` or users:group `redislabs:redislabs`. See the [Customize system user and group](/content/operate/rs/7.8/installing-upgrading/install/customize-user-and-group.md) page for instructions. -{{< note >}} -The persistent storage and ephemeral storage discussed in this document are not related -to Redis persistence or AWS ephemeral drives. -{{< /note >}} +> [!NOTE] +> The persistent storage and ephemeral storage discussed in this document are not related +> to Redis persistence or AWS ephemeral drives. ## Persistent storage @@ -26,7 +25,7 @@ Persistent storage is mandatory. The cluster uses persistent storage to store information that needs to persist if a shard or a node fails, such as server logs, configurations, and files. -To set the frequency of syncs, you can configure [persistence]({{< relref "/operate/rs/7.8/databases/configure/database-persistence" >}}) +To set the frequency of syncs, you can configure [persistence](/content/operate/rs/7.8/databases/configure/database-persistence.md) options for a database. The persistent volume must be a storage area network (SAN) @@ -48,10 +47,10 @@ Ephemeral storage must be a locally attached volume on each node. For disk size requirements, see: - [Hardware - requirements]({{< relref "/operate/rs/7.8/installing-upgrading/install/plan-deployment/hardware-requirements" >}}) + requirements](/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/hardware-requirements.md) for general guidelines regarding the ideal disk size for each type of storage. - [Disk size requirements for extreme write - scenarios]({{< relref "/operate/rs/7.8/clusters/optimize/disk-sizing-heavy-write-scenarios" >}}) + scenarios](/content/operate/rs/7.8/clusters/optimize/disk-sizing-heavy-write-scenarios.md) for special considerations when dealing with a high rate of write commands. diff --git a/content/operate/rs/7.8/installing-upgrading/install/prepare-install/_index.md b/content/operate/rs/7.8/installing-upgrading/install/prepare-install/_index.md index 0f04701860..934aa8165f 100644 --- a/content/operate/rs/7.8/installing-upgrading/install/prepare-install/_index.md +++ b/content/operate/rs/7.8/installing-upgrading/install/prepare-install/_index.md @@ -14,24 +14,24 @@ url: '/operate/rs/7.8/installing-upgrading/install/prepare-install/' Before you install Redis Enterprise Software: -- [Download an installation package]({{< relref "/operate/rs/7.8/installing-upgrading/install/prepare-install/download-install-package" >}}). +- [Download an installation package](/content/operate/rs/7.8/installing-upgrading/install/prepare-install/download-install-package.md). -- [View installation questions]({{< relref "/operate/rs/7.8/installing-upgrading/install/manage-installation-questions" >}}) and optionally prepare answers before installation. +- [View installation questions](/content/operate/rs/7.8/installing-upgrading/install/manage-installation-questions.md) and optionally prepare answers before installation. -- Review the [security considerations]({{< relref "/operate/rs/7.8/security/" >}}) for your deployment. +- Review the [security considerations](/content/operate/rs/7.8/security/_index.md) for your deployment. - Check that you have root-level access to each node, either directly or with `sudo`. -- Check that all [required ports are available]({{< relref "/operate/rs/7.8/installing-upgrading/install/prepare-install/port-availability" >}}). +- Check that all [required ports are available](/content/operate/rs/7.8/installing-upgrading/install/prepare-install/port-availability.md). -- [Turn off Linux swap]({{< relref "/operate/rs/7.8/installing-upgrading/configuring/linux-swap.md" >}}) on all cluster nodes. +- [Turn off Linux swap](/content/operate/rs/7.8/installing-upgrading/configuring/linux-swap.md) on all cluster nodes. - If you require the `redislabs` UID (user ID) and GID (group ID) numbers to be the same on all the nodes, create the `redislabs` user and group with the required numbers on each node. -- If you want to use Auto Tiering for your databases, see [Auto Tiering installation]({{< relref "/operate/rs/7.8/installing-upgrading/install/install-on-linux#auto-tiering-installation" >}}). +- If you want to use Auto Tiering for your databases, see [Auto Tiering installation](/content/operate/rs/7.8/installing-upgrading/install/install-on-linux.md#auto-tiering-installation). ## Next steps -- View [installation script options]({{< relref "/operate/rs/7.8/installing-upgrading/install/install-script" >}}) before starting the installation. +- View [installation script options](/content/operate/rs/7.8/installing-upgrading/install/install-script.md) before starting the installation. -- [Install Redis Enterprise Software]({{< relref "/operate/rs/7.8/installing-upgrading/install" >}}). +- [Install Redis Enterprise Software](/content/operate/rs/7.8/installing-upgrading/install/_index.md). diff --git a/content/operate/rs/7.8/installing-upgrading/install/prepare-install/download-install-package.md b/content/operate/rs/7.8/installing-upgrading/install/prepare-install/download-install-package.md index dcfeee8360..abcf4eef07 100644 --- a/content/operate/rs/7.8/installing-upgrading/install/prepare-install/download-install-package.md +++ b/content/operate/rs/7.8/installing-upgrading/install/prepare-install/download-install-package.md @@ -17,7 +17,6 @@ To download the installation package for any of the supported platforms: 1. Sign in with your Redis credentials or create a new account. 1. In the **Downloads** section for Redis Enterprise Software, select the installation package for your platform then select **Go**. -{{< note >}} -Before you install the Linux package or AWS AMI on an AWS EC2 instance, -review the [configuration requirements for AWS EC2 instances]({{< relref "/operate/rs/7.8/installing-upgrading/install/plan-deployment/configuring-aws-instances" >}}). -{{< /note >}} +> [!NOTE] +> Before you install the Linux package or AWS AMI on an AWS EC2 instance, +> review the [configuration requirements for AWS EC2 instances](/content/operate/rs/7.8/installing-upgrading/install/plan-deployment/configuring-aws-instances.md). diff --git a/content/operate/rs/7.8/installing-upgrading/install/prepare-install/port-availability.md b/content/operate/rs/7.8/installing-upgrading/install/prepare-install/port-availability.md index 6305c7065e..05a9e00b9e 100644 --- a/content/operate/rs/7.8/installing-upgrading/install/prepare-install/port-availability.md +++ b/content/operate/rs/7.8/installing-upgrading/install/prepare-install/port-availability.md @@ -11,7 +11,7 @@ weight: 40 url: '/operate/rs/7.8/installing-upgrading/install/prepare-install/port-availability/' --- -Before [installing Redis Enterprise Software]({{< relref "/operate/rs/7.8/installing-upgrading/install" >}}), make sure all required ports are available. +Before [installing Redis Enterprise Software](/content/operate/rs/7.8/installing-upgrading/install/_index.md), make sure all required ports are available. {{}} diff --git a/content/operate/rs/7.8/installing-upgrading/product-lifecycle.md b/content/operate/rs/7.8/installing-upgrading/product-lifecycle.md index 634eeaf070..038370cb27 100644 --- a/content/operate/rs/7.8/installing-upgrading/product-lifecycle.md +++ b/content/operate/rs/7.8/installing-upgrading/product-lifecycle.md @@ -14,7 +14,7 @@ url: '/operate/rs/7.8/installing-upgrading/product-lifecycle/' The Redis Enterprise Software product lifecycle fully reflects the [subscription agreement](https://redis.io/legal/software-agreement/). However, for any discrepancy between the two policies, the subscription agreement prevails. -Redis Enterprise modules follow the [modules lifecycle]({{< relref "/operate/oss_and_stack/stack-with-enterprise/modules-lifecycle" >}}). +Redis Enterprise modules follow the [modules lifecycle](/content/operate/oss_and_stack/stack-with-enterprise/modules-lifecycle.md). ## Release numbers @@ -55,8 +55,7 @@ This update to the EOL policy allows a lead time of at least 24 months to upgrad {{}} -For detailed upgrade instructions, see [Upgrade a Redis Enterprise Software cluster]({{}}). +For detailed upgrade instructions, see [Upgrade a Redis Enterprise Software cluster](/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-cluster.md). -{{}} -Redis Enterprise for Kubernetes has its own support lifecycle, which accounts for the Kubernetes distribution lifecycle. For details, see [Supported Kubernetes distributions]({{}}). -{{}} +> [!NOTE] +> Redis Enterprise for Kubernetes has its own support lifecycle, which accounts for the Kubernetes distribution lifecycle. For details, see [Supported Kubernetes distributions](/content/operate/kubernetes/reference/supported_k8s_distributions.md). diff --git a/content/operate/rs/7.8/installing-upgrading/quickstarts/_index.md b/content/operate/rs/7.8/installing-upgrading/quickstarts/_index.md index b08e416bb1..5e21408649 100644 --- a/content/operate/rs/7.8/installing-upgrading/quickstarts/_index.md +++ b/content/operate/rs/7.8/installing-upgrading/quickstarts/_index.md @@ -14,14 +14,14 @@ url: '/operate/rs/7.8/installing-upgrading/quickstarts/' Try out Redis Enterprise Software using one of the following quickstarts: -- [Redis Enterprise Software quickstart]({{< relref "/operate/rs/7.8/installing-upgrading/quickstarts/redis-enterprise-software-quickstart" >}}) +- [Redis Enterprise Software quickstart](/content/operate/rs/7.8/installing-upgrading/quickstarts/redis-enterprise-software-quickstart.md) -- [Docker quickstart for Redis Enterprise Software]({{< relref "/operate/rs/7.8/installing-upgrading/quickstarts/docker-quickstart" >}}) +- [Docker quickstart for Redis Enterprise Software](/content/operate/rs/7.8/installing-upgrading/quickstarts/docker-quickstart.md) Additional quickstart guides are available to help you: -- Set up a [Auto Tiering cluster]({{< relref "/operate/rs/7.8/databases/auto-tiering/quickstart.md" >}}) to optimize memory resources. +- Set up a [Auto Tiering cluster](/content/operate/rs/7.8/databases/auto-tiering/quickstart.md) to optimize memory resources. -- Set up an [Active-Active cluster]({{< relref "/operate/rs/7.8/databases/active-active/get-started.md" >}}) to enable high availability. +- Set up an [Active-Active cluster](/content/operate/rs/7.8/databases/active-active/get-started.md) to enable high availability. -- [Benchmark]({{< relref "/operate/rs/7.8/clusters/optimize/memtier-benchmark.md" >}}) Redis Enterprise Software performance. +- [Benchmark](/content/operate/rs/7.8/clusters/optimize/memtier-benchmark.md) Redis Enterprise Software performance. diff --git a/content/operate/rs/7.8/installing-upgrading/quickstarts/docker-quickstart.md b/content/operate/rs/7.8/installing-upgrading/quickstarts/docker-quickstart.md index 15d37f2929..7c74bac36e 100644 --- a/content/operate/rs/7.8/installing-upgrading/quickstarts/docker-quickstart.md +++ b/content/operate/rs/7.8/installing-upgrading/quickstarts/docker-quickstart.md @@ -11,9 +11,8 @@ linkTitle: Docker quickstart weight: 2 url: '/operate/rs/7.8/installing-upgrading/quickstarts/docker-quickstart/' --- -{{< warning >}} -Docker containers are currently only supported for development and test environments, not for production. Use [Redis Enterprise on Kubernetes]({{< relref "/operate/kubernetes" >}}) for a supported containerized deployment. -{{< /warning >}} +> [!WARNING] +> Docker containers are currently only supported for development and test environments, not for production. Use [Redis Enterprise on Kubernetes](/content/operate/kubernetes/_index.md) for a supported containerized deployment. For testing purposes, you can run Redis Enterprise Software on Docker containers on Linux, Windows, or MacOS. @@ -45,9 +44,8 @@ Follow the Docker installation instructions for your operating system: To download and start the Redis Enterprise Software Docker container, run the following [`docker run`](https://docs.docker.com/engine/reference/commandline/run/) command in the terminal or command line for your operating system. -{{< note >}} -On Windows, make sure Docker is configured to run Linux-based containers. -{{< /note >}} +> [!NOTE] +> On Windows, make sure Docker is configured to run Linux-based containers. ```sh docker run -d --cap-add sys_resource --name RE -p 8443:8443 -p 9443:9443 -p 12000:12000 redislabs/redis @@ -57,11 +55,11 @@ The example command runs the Docker container with Redis Enterprise Software on - Port 8443 for HTTPS connections -- Port 9443 for [REST API]({{< relref "/operate/rs/7.8/references/rest-api" >}}) connections +- Port 9443 for [REST API](/content/operate/rs/7.8/references/rest-api/_index.md) connections - Port 12000 configured Redis database port allowing client connections -You can publish other [ports]({{< relref "/operate/rs/7.8/networking/port-configurations.md" >}}) +You can publish other [ports](/content/operate/rs/7.8/networking/port-configurations.md) with `-p :` or use the `--network host` option to open all ports to the host network. ## Set up a cluster @@ -72,9 +70,8 @@ with `-p :` or use the `--network host` option to ope {{}} -{{< note >}} -{{< embed-md "docker-memory-limitation.md" >}} -{{< /note >}} +> [!NOTE] +> {{< embed-md "docker-memory-limitation.md" >}} ## Connect to your database @@ -82,7 +79,7 @@ After you create the Redis database, you can connect to it to begin storing data ### Use redis-cli inside Docker {#connect-inside-docker} -Every installation of Redis Enterprise Software includes the command-line tool [`redis-cli`]({{< relref "/operate/rs/7.8/references/cli-utilities/redis-cli" >}}) to interact with your Redis database. You can use `redis-cli` to connect to your database from within the same Docker network. +Every installation of Redis Enterprise Software includes the command-line tool [`redis-cli`](/content/operate/rs/7.8/references/cli-utilities/redis-cli/_index.md) to interact with your Redis database. You can use `redis-cli` to connect to your database from within the same Docker network. Use [`docker exec`](https://docs.docker.com/engine/reference/commandline/exec/) to start an interactive `redis-cli` session in the running Redis Enterprise Software container: @@ -98,13 +95,12 @@ To find the container name or ID, use [`docker ps`](https://docs.docker.com/refe ### Connect from the host environment {#connect-outside-docker} -The database you created uses port `12000`, which is also mapped from the Docker container back to the host environment. This lets you use any method you have available locally to [connect to a Redis database]({{< relref "/operate/rs/7.8/databases/connect/" >}}). Use `localhost` as the `host` and `12000` as the port. +The database you created uses port `12000`, which is also mapped from the Docker container back to the host environment. This lets you use any method you have available locally to [connect to a Redis database](/content/operate/rs/7.8/databases/connect/_index.md). Use `localhost` as the `host` and `12000` as the port. ## Test different topologies -{{< warning >}} -Docker containers are currently only supported for development and test environments, not for production. Use [Redis Enterprise on Kubernetes]({{< relref "/operate/kubernetes" >}}) for a supported containerized deployment. -{{< /warning >}} +> [!WARNING] +> Docker containers are currently only supported for development and test environments, not for production. Use [Redis Enterprise on Kubernetes](/content/operate/kubernetes/_index.md) for a supported containerized deployment. When deploying Redis Enterprise Software using Docker for testing, several common topologies are available, according to your requirements: diff --git a/content/operate/rs/7.8/installing-upgrading/quickstarts/redis-enterprise-software-quickstart.md b/content/operate/rs/7.8/installing-upgrading/quickstarts/redis-enterprise-software-quickstart.md index f1e3e793ec..ebbbd6f464 100644 --- a/content/operate/rs/7.8/installing-upgrading/quickstarts/redis-enterprise-software-quickstart.md +++ b/content/operate/rs/7.8/installing-upgrading/quickstarts/redis-enterprise-software-quickstart.md @@ -24,10 +24,9 @@ When finished, you'll have a simple cluster with a single node: 1. [Connect to your Redis database](#connect-to-your-database) -{{< note >}} -**This quickstart is designed for local testing only.** -For production environments, see the [install and setup]({{< relref "/operate/rs/7.8/installing-upgrading#install-redis-enterprise-software" >}}) guide for deployment options and instructions. -{{< /note >}} +> [!NOTE] +> **This quickstart is designed for local testing only.** +> For production environments, see the [install and setup](/content/operate/rs/7.8/installing-upgrading/_index.md#install-redis-enterprise-software) guide for deployment options and instructions. ## Ensure port availability @@ -65,9 +64,9 @@ To install Redis Enterprise Software: 1. Download the installation files from the [Redis Enterprise Download Center](https://redis.io/downloads/#software) and copy the download package to a machine with a Linux-based OS. - {{< note >}} -You are required to create a free account to access the download center. - {{< /note >}} + > [!NOTE] + > You are required to create a free account to access the download center. + > 1. Extract the installation files: @@ -94,7 +93,7 @@ To set up your machine as a Redis Enterprise Software cluster: ## Connect to your database After you create the Redis database, you can connect to it and store data. -See [Test client connection]({{< relref "/operate/rs/7.8/databases/connect/test-client-connectivity" >}}) for connection options and examples. +See [Test client connection](/content/operate/rs/7.8/databases/connect/test-client-connectivity.md) for connection options and examples. ## Supported web browsers diff --git a/content/operate/rs/7.8/installing-upgrading/uninstalling.md b/content/operate/rs/7.8/installing-upgrading/uninstalling.md index 8b2fe45b73..24cd786c6f 100644 --- a/content/operate/rs/7.8/installing-upgrading/uninstalling.md +++ b/content/operate/rs/7.8/installing-upgrading/uninstalling.md @@ -13,7 +13,7 @@ url: '/operate/rs/7.8/installing-upgrading/uninstalling/' Use the script `rl_uninstall.sh` to uninstall Redis Enterprise Software and remove its files from a node. The script also deletes all Redis data and configuration from the node. -The uninstall script does not remove the node from the cluster, but the node's status changes to down. For node removal instructions, see [Remove a cluster node]({{}}). +The uninstall script does not remove the node from the cluster, but the node's status changes to down. For node removal instructions, see [Remove a cluster node](/content/operate/rs/7.8/clusters/remove-node.md). ## Uninstall Redis Enterprise Software diff --git a/content/operate/rs/7.8/installing-upgrading/upgrading/_index.md b/content/operate/rs/7.8/installing-upgrading/upgrading/_index.md index b063fb95df..9c417c2268 100644 --- a/content/operate/rs/7.8/installing-upgrading/upgrading/_index.md +++ b/content/operate/rs/7.8/installing-upgrading/upgrading/_index.md @@ -16,28 +16,28 @@ url: '/operate/rs/7.8/installing-upgrading/upgrading/' To upgrade Redis Software: -1. Verify appropriate [network ports]({{< relref "/operate/rs/7.8/networking/port-configurations.md" >}}) are either open or used by Redis Software. +1. Verify appropriate [network ports](/content/operate/rs/7.8/networking/port-configurations.md) are either open or used by Redis Software. -1. Review the [prerequisites]({{}}). +1. Review the [prerequisites](/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-cluster.md#upgrade-prerequisites). 1. Upgrade the software on all nodes of the cluster using one of the following methods: - - [In-place upgrade]({{}}) - Directly upgrade Redis Software on each node in the cluster. Although this method is simpler than the rolling upgrade method, it might cause brief service interruptions as each node is upgraded. + - [In-place upgrade](/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-cluster.md#in-place-upgrade) - Directly upgrade Redis Software on each node in the cluster. Although this method is simpler than the rolling upgrade method, it might cause brief service interruptions as each node is upgraded. - - [Rolling upgrade]({{}}) - Minimize downtime by adding new nodes with an updated Redis Software version to the cluster, one at a time, while keeping the rest of the cluster operational. This method is recommended for production environments that require continuous availability. + - [Rolling upgrade](/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-cluster.md#rolling-upgrade) - Minimize downtime by adding new nodes with an updated Redis Software version to the cluster, one at a time, while keeping the rest of the cluster operational. This method is recommended for production environments that require continuous availability. ## Upgrade Redis database -[Upgrade each database]({{< relref "/operate/rs/7.8/installing-upgrading/upgrading/upgrade-database" >}}) in the cluster or [upgrade an Active-Active database]({{< relref "/operate/rs/7.8/installing-upgrading/upgrading/upgrade-active-active" >}}) to enable new features and important fixes. +[Upgrade each database](/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-database.md) in the cluster or [upgrade an Active-Active database](/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-active-active.md) to enable new features and important fixes. ## Upgrade operating system To upgrade the cluster's operating system: -1. Review the [prerequisites]({{}}). +1. Review the [prerequisites](/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-os.md#prerequisites). 2. Use one of the following rolling upgrade methods: - - [Extra node method]({{}}) - Recommended if you have additional resources available. + - [Extra node method](/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-os.md#extra-node-upgrade) - Recommended if you have additional resources available. - - [Replace node method]({{}}) - Recommended if you cannot temporarily allocate additional resources. + - [Replace node method](/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-os.md#replace-node-upgrade) - Recommended if you cannot temporarily allocate additional resources. diff --git a/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-active-active.md b/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-active-active.md index f950a5dc98..cec0445941 100644 --- a/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-active-active.md +++ b/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-active-active.md @@ -11,7 +11,7 @@ weight: 70 url: '/operate/rs/7.8/installing-upgrading/upgrading/upgrade-active-active/' --- -When you upgrade an [Active-Active (CRDB) database]({{< relref "/operate/rs/7.8/databases/active-active" >}}), you can also upgrade the CRDB protocol version and feature version. +When you upgrade an [Active-Active (CRDB) database](/content/operate/rs/7.8/databases/active-active/_index.md), you can also upgrade the CRDB protocol version and feature version. ## CRDB protocol version guidelines @@ -53,7 +53,7 @@ Follow these upgrade guidelines: To upgrade an Active-Active database (CRDB) instance: -1. [Upgrade Redis Enterprise Software]({{< relref "/operate/rs/7.8/installing-upgrading/upgrading/upgrade-cluster" >}}) on each node in the clusters where the Active-Active instances are located. +1. [Upgrade Redis Enterprise Software](/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-cluster.md) on each node in the clusters where the Active-Active instances are located. 1. To see the status of your Active-Active instances, run: @@ -84,7 +84,7 @@ To upgrade an Active-Active database (CRDB) instance: Use the `keep_crdt_protocol_version` option to upgrade the database feature version without upgrading the CRDB protocol version. - If you use this option, make sure that you upgrade the CRDB protocol soon after with the [`rladmin upgrade db`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/upgrade#upgrade-db" >}}) command. + If you use this option, make sure that you upgrade the CRDB protocol soon after with the [`rladmin upgrade db`](/content/operate/rs/7.8/references/cli-utilities/rladmin/upgrade.md#upgrade-db) command. You must upgrade the CRDB protocol before you update the CRDB feature set version. diff --git a/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-cluster.md b/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-cluster.md index 03de9faf4a..198865b30e 100644 --- a/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-cluster.md +++ b/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-cluster.md @@ -25,27 +25,26 @@ To upgrade a cluster's Redis Software version, use one of the following methods: {{}} -See the [Redis Enterprise Software product lifecycle]({{}}) for more information about release numbers and the end-of-life schedule. +See the [Redis Enterprise Software product lifecycle](/content/operate/rs/7.8/installing-upgrading/product-lifecycle.md) for more information about release numbers and the end-of-life schedule. -{{}} -Redis Enterprise for Kubernetes has its own support lifecycle, which accounts for the Kubernetes distribution lifecycle. For details, see [Supported Kubernetes distributions]({{}}). -{{}} +> [!NOTE] +> Redis Enterprise for Kubernetes has its own support lifecycle, which accounts for the Kubernetes distribution lifecycle. For details, see [Supported Kubernetes distributions](/content/operate/kubernetes/reference/supported_k8s_distributions.md). ## Upgrade prerequisites Before upgrading a cluster: -- Verify access to [rlcheck]({{< relref "/operate/rs/7.8/references/cli-utilities/rlcheck/" >}}) and [rladmin]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/#use-the-rladmin-shell" >}}) commands. +- Verify access to [rlcheck](/content/operate/rs/7.8/references/cli-utilities/rlcheck/_index.md) and [rladmin](/content/operate/rs/7.8/references/cli-utilities/rladmin/_index.md#use-the-rladmin-shell) commands. -- Run [rlcheck]({{< relref "/operate/rs/7.8/references/cli-utilities/rlcheck/" >}}) on each node and verify there are no issues: +- Run [rlcheck](/content/operate/rs/7.8/references/cli-utilities/rlcheck/_index.md) on each node and verify there are no issues: ```sh rlcheck ``` -- Verify [maintenance mode]({{< relref "/operate/rs/7.8/clusters/maintenance-mode" >}}) is not enabled: +- Verify [maintenance mode](/content/operate/rs/7.8/clusters/maintenance-mode.md) is not enabled: - 1. On a node in the cluster, run [`rladmin status`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/status" >}}): + 1. On a node in the cluster, run [`rladmin status`](/content/operate/rs/7.8/references/cli-utilities/rladmin/status.md): ```sh rladmin status @@ -55,7 +54,7 @@ Before upgrading a cluster: {{< image filename="/images/rs/maintenance_mode.png" >}} - 1. To deactivate maintenance mode on a node, run the following [`rladmin node maintenance_mode off`]({{}}) command. See [Deactivate maintenance mode]({{}}) for additional details. + 1. To deactivate maintenance mode on a node, run the following [`rladmin node maintenance_mode off`](/content/operate/rs/7.8/references/cli-utilities/rladmin/node/maintenance-mode.md#node-maintenance_mode-off) command. See [Deactivate maintenance mode](/content/operate/rs/7.8/clusters/maintenance-mode.md#deactivate-maintenance-mode) for additional details. ```sh rladmin node maintenance_mode off @@ -71,9 +70,9 @@ Before upgrading a cluster: rladmin tune cluster redis_upgrade_policy latest ``` - 1. [Upgrade Redis 6.0 databases]({{}}) to Redis 6.2. + 1. [Upgrade Redis 6.0 databases](/content/operate/rs/installing-upgrading/upgrading/upgrade-database.md) to Redis 6.2. -- [Upgrade your databases]({{}}) to a version that is supported by the target Redis Enterprise Software version before upgrading the cluster. We recommend you upgrade the databases to the latest supported version if possible. Make sure to test the upgrade in a non-production environment to determine any impact. +- [Upgrade your databases](/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-database.md) to a version that is supported by the target Redis Enterprise Software version before upgrading the cluster. We recommend you upgrade the databases to the latest supported version if possible. Make sure to test the upgrade in a non-production environment to determine any impact. - Avoid changing the database configuration or performing other cluster management operations during the cluster upgrade process, as this might cause unexpected results. @@ -81,9 +80,9 @@ Before upgrading a cluster: - **Nodes** screen in the new Cluster Manager UI (only available for Redis Enterprise versions 7.2 and later) - - [`rladmin status nodes`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/status#status-nodes" >}}) command + - [`rladmin status nodes`](/content/operate/rs/7.8/references/cli-utilities/rladmin/status.md#status-nodes) command - - [`GET /nodes/status`]({{< relref "/operate/rs/7.8/references/rest-api/requests/nodes/status#get-all-nodes-status" >}}) REST API request + - [`GET /nodes/status`](/content/operate/rs/7.8/references/rest-api/requests/nodes/status.md#get-all-nodes-status) REST API request ## In-place upgrade @@ -96,9 +95,9 @@ Starting with the primary node, follow these steps for every node in the cluster $ rladmin status extra all ``` - {{}} -Do not proceed if any shard, node, or endpoint is not `OK`. - {{}} + > [!WARNING] + > Do not proceed if any shard, node, or endpoint is not `OK`. + > 2. Download the Redis Enterprise Software installation package to the machine running the node from the Download Center on [https://cloud.redis.io](https://cloud.redis.io). @@ -108,11 +107,11 @@ Do not proceed if any shard, node, or endpoint is not `OK`. tar vxf ``` - {{}} -You cannot change the installation path or the user during the upgrade. - {{}} + > [!NOTE] + > You cannot change the installation path or the user during the upgrade. + > -1. Run the install command. See [installation script options]({{< relref "/operate/rs/7.8/installing-upgrading/install/install-script" >}}) for a list of command-line options you can add to the following command: +1. Run the install command. See [installation script options](/content/operate/rs/7.8/installing-upgrading/install/install-script.md) for a list of command-line options you can add to the following command: ``` shell sudo ./install.sh @@ -143,21 +142,21 @@ To perform a rolling upgrade of the cluster, use one of the following methods: ### Extra node upgrade method {#extra-node-upgrade} -1. [Install a later version of Redis Software]({{< relref "/operate/rs/7.8/installing-upgrading/install/install-on-linux" >}}) on a new node. +1. [Install a later version of Redis Software](/content/operate/rs/7.8/installing-upgrading/install/install-on-linux.md) on a new node. -1. [Add the new node]({{< relref "/operate/rs/7.8/clusters/add-node" >}}) to the cluster. +1. [Add the new node](/content/operate/rs/7.8/clusters/add-node.md) to the cluster. -1. If the [cluster uses DNS]({{}}), add the new node’s IP address to the DNS records. +1. If the [cluster uses DNS](/content/operate/rs/7.8/networking/cluster-dns.md), add the new node’s IP address to the DNS records. -1. [Promote the first new node]({{}}) to become the primary node. +1. [Promote the first new node](/content/operate/rs/7.8/clusters/change-node-role.md#promote-secondary-node) to become the primary node. -1. [Remove one node]({{< relref "/operate/rs/7.8/clusters/remove-node#remove-a-node" >}}) running the earlier Redis Software version from the cluster. +1. [Remove one node](/content/operate/rs/7.8/clusters/remove-node.md#remove-a-node) running the earlier Redis Software version from the cluster. -1. Repeat the previous steps until all nodes with the earlier Redis Software version are removed. If the final node to remove from the cluster is the primary node, [demote it]({{}}) to a secondary node before you remove it. +1. Repeat the previous steps until all nodes with the earlier Redis Software version are removed. If the final node to remove from the cluster is the primary node, [demote it](/content/operate/rs/7.8/clusters/change-node-role.md#demote-primary-node) to a secondary node before you remove it. ### Replace node upgrade method {#replace-node-upgrade} -1. [Remove a node]({{< relref "/operate/rs/7.8/clusters/remove-node#remove-a-node" >}}) with the earlier Redis Software version from the cluster. +1. [Remove a node](/content/operate/rs/7.8/clusters/remove-node.md#remove-a-node) with the earlier Redis Software version from the cluster. 1. Uninstall Redis Enterprise Software from the removed node: @@ -165,19 +164,19 @@ To perform a rolling upgrade of the cluster, use one of the following methods: sudo ./rl_uninstall.sh ``` -1. [Install a later version of Redis Software]({{< relref "/operate/rs/7.8/installing-upgrading/install/install-on-linux" >}}) on the removed node or a new node. +1. [Install a later version of Redis Software](/content/operate/rs/7.8/installing-upgrading/install/install-on-linux.md) on the removed node or a new node. -1. [Add the new node]({{< relref "/operate/rs/7.8/clusters/add-node" >}}) to the cluster. +1. [Add the new node](/content/operate/rs/7.8/clusters/add-node.md) to the cluster. - If you want to reuse the removed node's ID when you add the node to the cluster, run [`rladmin cluster join`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/cluster/join" >}}) with the `replace_node` flag: + If you want to reuse the removed node's ID when you add the node to the cluster, run [`rladmin cluster join`](/content/operate/rs/7.8/references/cli-utilities/rladmin/cluster/join.md) with the `replace_node` flag: ```sh rladmin cluster join nodes username password replace_node ``` -1. If the [cluster uses DNS]({{}}), add the new node’s IP address to the DNS records. +1. If the [cluster uses DNS](/content/operate/rs/7.8/networking/cluster-dns.md), add the new node’s IP address to the DNS records. -1. [Promote the first new node]({{}}) to become the primary node. +1. [Promote the first new node](/content/operate/rs/7.8/clusters/change-node-role.md#promote-secondary-node) to become the primary node. 1. Verify node health: @@ -203,7 +202,7 @@ To perform a rolling upgrade of the cluster, use one of the following methods: For healthy nodes, the expected output is `ALL TESTS PASSED`. - 1. Run [`rladmin status`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/status" >}}) on the new node: + 1. Run [`rladmin status`](/content/operate/rs/7.8/references/cli-utilities/rladmin/status.md) on the new node: ```sh rladmin status extra all @@ -219,7 +218,7 @@ To perform a rolling upgrade of the cluster, use one of the following methods: ... ``` -1. Repeat the previous steps until all nodes with the earlier Redis Software version are replaced. If the final node to remove from the cluster is the primary node, [demote it]({{}}) to a secondary node before you remove it. +1. Repeat the previous steps until all nodes with the earlier Redis Software version are replaced. If the final node to remove from the cluster is the primary node, [demote it](/content/operate/rs/7.8/clusters/change-node-role.md#demote-primary-node) to a secondary node before you remove it. ## After cluster upgrade diff --git a/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-database.md b/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-database.md index 22aa2e6dda..2be69ba27c 100644 --- a/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-database.md +++ b/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-database.md @@ -13,7 +13,7 @@ url: '/operate/rs/7.8/installing-upgrading/upgrading/upgrade-database/' ## Default Redis database versions {#default-db-versions} -When you upgrade an existing database, it uses the latest bundled Redis version unless you specify a different version with the `redis_version` option in the [REST API]({{< relref "/operate/rs/7.8/references/rest-api/requests/bdbs" >}}) or [`rladmin upgrade db`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/upgrade#upgrade-db" >}}). +When you upgrade an existing database, it uses the latest bundled Redis version unless you specify a different version with the `redis_version` option in the [REST API](/content/operate/rs/7.8/references/rest-api/requests/bdbs/_index.md) or [`rladmin upgrade db`](/content/operate/rs/7.8/references/cli-utilities/rladmin/upgrade.md#upgrade-db). Redis Enterprise Software v6.x includes two Redis database versions: 6.0 and 6.2. As of version 7.2, Redis Enterprise Software includes three Redis database versions. @@ -22,7 +22,7 @@ To view available Redis database versions: - In the Cluster Manager UI, see **Redis database versions** on the **Cluster > Configuration** screen. -- Send a [`GET /nodes` REST API request]({{< relref "/operate/rs/7.8/references/rest-api/requests/nodes" >}}) and see `supported_database_versions` in the response. +- Send a [`GET /nodes` REST API request](/content/operate/rs/7.8/references/rest-api/requests/nodes/_index.md) and see `supported_database_versions` in the response. The default Redis database version differs between Redis Enterprise releases as follows: @@ -50,7 +50,7 @@ Before upgrading a database: - Use the Cluster Manager UI to open the **Configuration** tab for the database and select {{< image filename="/images/rs/icons/info-icon.png#no-click" alt="The About database button" width="18px" class="inline" >}} **About**. - - _(Optional)_ Use the [`rladmin status extra all`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/status" >}}) command to display configuration details: + - _(Optional)_ Use the [`rladmin status extra all`](/content/operate/rs/7.8/references/cli-utilities/rladmin/status.md) command to display configuration details: ```sh rladmin status extra all @@ -62,15 +62,15 @@ Before upgrading a database: Use the Cluster Manager UI to display the **Configuration** tab for the cluster. The tab displays the cluster version information and the Redis database compatibility version. -- For [Replica Of databases]({{< relref "/operate/rs/7.8/databases/import-export/replica-of/" >}}), upgrade the destination database before the source database. +- For [Replica Of databases](/content/operate/rs/7.8/databases/import-export/replica-of/_index.md), upgrade the destination database before the source database. - Check client compatibility with the database version. - If you run Redis Stack commands with Go-Redis versions 9 and later or Lettuce versions 6 and later, set the client’s protocol version to RESP2 before upgrading your database to Redis version 7.2 to prevent potential application issues due to RESP3 breaking changes. See [Client prerequisites for Redis 7.2 upgrade]({{< relref "/operate/rs/7.8/references/compatibility/resp#client-prerequisites-for-redis-72-upgrade" >}}) for more details and examples. + If you run Redis Stack commands with Go-Redis versions 9 and later or Lettuce versions 6 and later, set the client’s protocol version to RESP2 before upgrading your database to Redis version 7.2 to prevent potential application issues due to RESP3 breaking changes. See [Client prerequisites for Redis 7.2 upgrade](/content/operate/rs/7.8/references/compatibility/resp.md#client-prerequisites-for-redis-72-upgrade) for more details and examples. -- To avoid data loss during the upgrade, [back up your data]({{< relref "/operate/rs/7.8/databases/import-export/schedule-backups" >}}). +- To avoid data loss during the upgrade, [back up your data](/content/operate/rs/7.8/databases/import-export/schedule-backups.md). - You can [export the data]({{< relref "/operate/rs/7.8/databases/import-export/export-data" >}}) to an external location, [enable replication]({{< relref "/operate/rs/7.8/databases/durability-ha/replication" >}}), or [enable persistence]({{< relref "/operate/rs/7.8/databases/configure/database-persistence" >}}). + You can [export the data](/content/operate/rs/7.8/databases/import-export/export-data.md) to an external location, [enable replication](/content/operate/rs/7.8/databases/durability-ha/replication.md), or [enable persistence](/content/operate/rs/7.8/databases/configure/database-persistence.md). When choosing how to back up data, keep the following in mind: @@ -84,7 +84,7 @@ To upgrade a database: 1. _(Optional)_ Back up the database to minimize the risk of data loss. -1. Use [`rladmin`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/upgrade" >}}) to upgrade the database. During the upgrade process, the database will restart without losing any data. Use the `preserve_roles` option to keep the database's current state, including primary shard placement, and prevent the cluster from becoming unbalanced. +1. Use [`rladmin`](/content/operate/rs/7.8/references/cli-utilities/rladmin/upgrade.md) to upgrade the database. During the upgrade process, the database will restart without losing any data. Use the `preserve_roles` option to keep the database's current state, including primary shard placement, and prevent the cluster from becoming unbalanced. - To upgrade a database and its modules: @@ -110,7 +110,7 @@ To upgrade a database: rladmin upgrade db redis_version preserve_roles ``` - - For module upgrade options, see [Upgrade modules]({{< relref "/operate/oss_and_stack/stack-with-enterprise/install/upgrade-module" >}}). + - For module upgrade options, see [Upgrade modules](/content/operate/oss_and_stack/stack-with-enterprise/install/upgrade-module.md). 1. Check the Redis database compatibility version for the database to confirm the upgrade. @@ -118,7 +118,7 @@ To upgrade a database: - Use the Cluster Manager UI to open the **Configuration** tab for the database and select {{< image filename="/images/rs/icons/info-icon.png#no-click" alt="The About database button" width="18px" class="inline" >}} **About**. - - Use [`rladmin status databases extra all`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/status#status-databases" >}}) to display a list of the databases in your cluster and their current Redis database compatibility version: + - Use [`rladmin status databases extra all`](/content/operate/rs/7.8/references/cli-utilities/rladmin/status.md#status-databases) to display a list of the databases in your cluster and their current Redis database compatibility version: ```sh rladmin status databases extra all diff --git a/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-os.md b/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-os.md index bdb036c460..36b839395a 100644 --- a/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-os.md +++ b/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-os.md @@ -19,15 +19,15 @@ To upgrade the operating system (OS) on a Redis Enterprise Software cluster to a Before you upgrade a cluster's operating system: -1. [Upgrade all nodes in the cluster]({{< relref "/operate/rs/7.8/installing-upgrading/upgrading/upgrade-cluster" >}}) to a Redis Enterprise Software version that supports the OS's current version and upgrade version. +1. [Upgrade all nodes in the cluster](/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-cluster.md) to a Redis Enterprise Software version that supports the OS's current version and upgrade version. - To learn which versions of Redis Enterprise Software support specific OS versions, see [Supported platforms]({{< relref "/operate/rs/7.8/references/supported-platforms#supported-platforms" >}}). + To learn which versions of Redis Enterprise Software support specific OS versions, see [Supported platforms](/content/operate/rs/7.8/references/supported-platforms.md#supported-platforms). 1. If the cluster contains any databases that use modules: 1. Update all nodes in the cluster to [Redis Enterprise Software version 7.2.4-52](https://redis.io/docs/latest/operate/rs/release-notes/rs-7-2-4-releases) or later before you upgrade the OS. - 1. Check the status of modules using [`rladmin`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin" >}}): + 1. Check the status of modules using [`rladmin`](/content/operate/rs/7.8/references/cli-utilities/rladmin/_index.md): ```sh rladmin status modules @@ -51,17 +51,17 @@ Before you upgrade a cluster's operating system: db:1 db1 RedisJSON 2.4.7 OK, OLD MODULE VERSION ``` - 1. Upload module packages for the target OS version to a node in the existing cluster. See [Install a module on a cluster]({{< relref "/operate/oss_and_stack/stack-with-enterprise/install/add-module-to-cluster" >}}) for instructions. + 1. Upload module packages for the target OS version to a node in the existing cluster. See [Install a module on a cluster](/content/operate/oss_and_stack/stack-with-enterprise/install/add-module-to-cluster.md) for instructions. - {{}} -The uploaded module packages have the following requirements: + > [!NOTE] + > The uploaded module packages have the following requirements: + > + > - The module is compiled for the target OS version. + > + > - The module version matches the version currently used by databases. + > -- The module is compiled for the target OS version. - -- The module version matches the version currently used by databases. - {{}} - -1. If the cluster uses custom directories, make sure the OS upgrade version also supports custom directories, and specify the same custom directories during installation for all nodes. See [Customize installation directories]({{< relref "/operate/rs/7.8/installing-upgrading/install/customize-install-directories" >}}) for details. +1. If the cluster uses custom directories, make sure the OS upgrade version also supports custom directories, and specify the same custom directories during installation for all nodes. See [Customize installation directories](/content/operate/rs/7.8/installing-upgrading/install/customize-install-directories.md) for details. ## Perform OS rolling upgrade @@ -75,19 +75,19 @@ To upgrade the cluster's operating system, use one of the following rolling upgr 1. Create a node with the OS upgrade version. -1. [Install the cluster's current Redis Enterprise Software version]({{< relref "/operate/rs/7.8/installing-upgrading/install/install-on-linux" >}}) on the new node using the installation package for the OS upgrade version. +1. [Install the cluster's current Redis Enterprise Software version](/content/operate/rs/7.8/installing-upgrading/install/install-on-linux.md) on the new node using the installation package for the OS upgrade version. -1. [Add the new node]({{< relref "/operate/rs/7.8/clusters/add-node" >}}) to the cluster. +1. [Add the new node](/content/operate/rs/7.8/clusters/add-node.md) to the cluster. -1. If the [cluster uses DNS]({{}}), add the new node’s IP address to the DNS records. +1. If the [cluster uses DNS](/content/operate/rs/7.8/networking/cluster-dns.md), add the new node’s IP address to the DNS records. -1. [Remove one node]({{< relref "/operate/rs/7.8/clusters/remove-node#remove-a-node" >}}) running the earlier OS version from the cluster. +1. [Remove one node](/content/operate/rs/7.8/clusters/remove-node.md#remove-a-node) running the earlier OS version from the cluster. -1. Repeat the previous steps until all nodes with the earlier OS version are removed. If the final node to remove from the cluster is the primary node, [demote it]({{}}) to a secondary node before you remove it. +1. Repeat the previous steps until all nodes with the earlier OS version are removed. If the final node to remove from the cluster is the primary node, [demote it](/content/operate/rs/7.8/clusters/change-node-role.md#demote-primary-node) to a secondary node before you remove it. ### Replace node upgrade method {#replace-node-upgrade} -1. [Remove a node]({{< relref "/operate/rs/7.8/clusters/remove-node#remove-a-node" >}}) with the earlier OS version from the cluster. +1. [Remove a node](/content/operate/rs/7.8/clusters/remove-node.md#remove-a-node) with the earlier OS version from the cluster. 1. Uninstall Redis Enterprise Software from the removed node: @@ -97,17 +97,17 @@ To upgrade the cluster's operating system, use one of the following rolling upgr 1. Either upgrade the existing node to the OS upgrade version, or create a new node with the OS upgrade version. -1. [Install the cluster's current Redis Enterprise Software version]({{< relref "/operate/rs/7.8/installing-upgrading/install/install-on-linux" >}}) on the upgraded node using the installation package for the OS upgrade version. +1. [Install the cluster's current Redis Enterprise Software version](/content/operate/rs/7.8/installing-upgrading/install/install-on-linux.md) on the upgraded node using the installation package for the OS upgrade version. -1. [Add the new node]({{< relref "/operate/rs/7.8/clusters/add-node" >}}) to the cluster. +1. [Add the new node](/content/operate/rs/7.8/clusters/add-node.md) to the cluster. - If you want to reuse the removed node's ID when you add the node to the cluster, run [`rladmin cluster join`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/cluster/join" >}}) with the `replace_node` flag: + If you want to reuse the removed node's ID when you add the node to the cluster, run [`rladmin cluster join`](/content/operate/rs/7.8/references/cli-utilities/rladmin/cluster/join.md) with the `replace_node` flag: ```sh rladmin cluster join nodes username password replace_node ``` -1. If the [cluster uses DNS]({{}}), add the new node’s IP address to the DNS records. +1. If the [cluster uses DNS](/content/operate/rs/7.8/networking/cluster-dns.md), add the new node’s IP address to the DNS records. 1. Verify node health: @@ -133,7 +133,7 @@ To upgrade the cluster's operating system, use one of the following rolling upgr For healthy nodes, the expected output is `ALL TESTS PASSED`. - 1. Run [`rladmin status`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/status" >}}) on the new node: + 1. Run [`rladmin status`](/content/operate/rs/7.8/references/cli-utilities/rladmin/status.md) on the new node: ```sh rladmin status extra all @@ -149,4 +149,4 @@ To upgrade the cluster's operating system, use one of the following rolling upgr ... ``` -1. Repeat the previous steps until all nodes with the earlier OS version are replaced. If the final node to remove from the cluster is the primary node, [demote it]({{}}) to a secondary node before you remove it. +1. Repeat the previous steps until all nodes with the earlier OS version are replaced. If the final node to remove from the cluster is the primary node, [demote it](/content/operate/rs/7.8/clusters/change-node-role.md#demote-primary-node) to a secondary node before you remove it. diff --git a/content/operate/rs/7.8/monitoring/_index.md b/content/operate/rs/7.8/monitoring/_index.md index d93c5bcb01..cc4bd66c6e 100644 --- a/content/operate/rs/7.8/monitoring/_index.md +++ b/content/operate/rs/7.8/monitoring/_index.md @@ -20,21 +20,21 @@ to monitor the performance of your databases. In the Redis Enterprise Cluster Manager UI, you can view metrics, configure alerts, and send notifications based on alert parameters. You can also access metrics and configure alerts through the REST API. -See [Metrics and alerts for monitoring v1]({{}}) for more information. +See [Metrics and alerts for monitoring v1](/content/operate/rs/7.8/monitoring/v1_monitoring.md) for more information. ## Metrics stream engine preview A preview of the new metrics stream engine is available as of [Redis Enterprise Software version 7.8.2](https://redis.io/docs/latest/operate/rs/release-notes/rs-7-8-releases). This new engine exposes the v2 Prometheus scraping endpoint at `https://:8070/v2`, exports all time-series metrics to external monitoring tools, and enables real-time monitoring. -See [Metrics stream engine preview for monitoring v2]({{}}) for more information. +See [Metrics stream engine preview for monitoring v2](/content/operate/rs/7.8/monitoring/metrics_stream_engine.md) for more information. ## Integrate with external monitoring tools -To integrate Redis Enterprise metrics into your monitoring environment, see the integration guides for [Prometheus and Grafana]({{< relref "/operate/rs/7.8/monitoring/prometheus_and_grafana" >}}). +To integrate Redis Enterprise metrics into your monitoring environment, see the integration guides for [Prometheus and Grafana](/content/operate/rs/7.8/monitoring/prometheus_and_grafana.md). -Filter [Libraries and tools]({{}}) by "observability" for additional tools and guides. +Filter [Libraries and tools](/content/integrate/_index.md) by "observability" for additional tools and guides. ## Metrics reference -Make sure you read the [definition of each metric]({{< relref "/operate/rs/7.8/references/metrics/" >}}) +Make sure you read the [definition of each metric](/content/operate/rs/7.8/references/metrics/_index.md) so that you understand exactly what it represents. diff --git a/content/operate/rs/7.8/monitoring/db-availability.md b/content/operate/rs/7.8/monitoring/db-availability.md index e3fd8c69d2..90eca595a1 100644 --- a/content/operate/rs/7.8/monitoring/db-availability.md +++ b/content/operate/rs/7.8/monitoring/db-availability.md @@ -13,11 +13,10 @@ weight: 80 url: '/operate/rs/7.8/monitoring/db-availability/' --- -You can use the [database availability API]({{}}) to verify whether a Redis Software database is available to perform read and write operations and can respond to queries from client applications. Load balancers and automated monitoring tools can use this API to monitor database availability. +You can use the [database availability API](/content/operate/rs/7.8/references/rest-api/requests/bdbs/availability.md) to verify whether a Redis Software database is available to perform read and write operations and can respond to queries from client applications. Load balancers and automated monitoring tools can use this API to monitor database availability. -{{}} -Database availability does not guarantee data availability. -{{}} +> [!NOTE] +> Database availability does not guarantee data availability. ## Check database availability for monitoring @@ -31,7 +30,7 @@ If the OSS Cluster API is enabled, this request verifies all endpoints for this Returns the status code 200 OK if the database is available. -If the database is unavailable, returns an error status code and a JSON object that contains [`error_code` and `description` fields]({{}}). +If the database is unavailable, returns an error status code and a JSON object that contains [`error_code` and `description` fields](/content/operate/rs/7.8/references/rest-api/requests/bdbs/availability.md#get-db-error-codes). ## Check local database endpoint availability for load balancers @@ -43,11 +42,11 @@ GET /v1/local/bdbs//endpoint/availability Returns the status code 200 OK if the local database endpoint is available. -If the local database endpoint is unavailable, returns an error status code and a JSON object that contains [`error_code` and `description` fields]({{}}). +If the local database endpoint is unavailable, returns an error status code and a JSON object that contains [`error_code` and `description` fields](/content/operate/rs/7.8/references/rest-api/requests/bdbs/availability.md#get-endpoint-error-codes). ## Availability by database status -The following table shows the relationship between a database's status and availability. For more details about the database status values, see [BDB status field]({{}}). +The following table shows the relationship between a database's status and availability. For more details about the database status values, see [BDB status field](/content/operate/rs/7.8/references/rest-api/objects/bdb/status.md). | Database status | Availability | |-----------------|--------------| diff --git a/content/operate/rs/7.8/monitoring/metrics_stream_engine.md b/content/operate/rs/7.8/monitoring/metrics_stream_engine.md index 428279252f..0f56cf8d7c 100644 --- a/content/operate/rs/7.8/monitoring/metrics_stream_engine.md +++ b/content/operate/rs/7.8/monitoring/metrics_stream_engine.md @@ -25,13 +25,13 @@ The new metrics stream engine: ## Integrate with external monitoring tools -To integrate Redis Enterprise metrics into your monitoring environment, see the integration guides for [Prometheus and Grafana]({{< relref "/operate/rs/7.8/monitoring/prometheus_and_grafana" >}}). +To integrate Redis Enterprise metrics into your monitoring environment, see the integration guides for [Prometheus and Grafana](/content/operate/rs/7.8/monitoring/prometheus_and_grafana.md). -Filter [Libraries and tools]({{}}) by "observability" for additional tools and guides. +Filter [Libraries and tools](/content/integrate/_index.md) by "observability" for additional tools and guides. ## Prometheus metrics v2 -For a list of all available v2 metrics, see [Prometheus metrics v2]({{}}). +For a list of all available v2 metrics, see [Prometheus metrics v2](/content/operate/rs/7.8/references/metrics/prometheus-metrics-v2.md). The v2 scraping endpoint also exposes metrics for `node_exporter`. For more information, see the [Prometheus node_exporter GitHub repository](https://github.com/prometheus/node_exporter). @@ -57,6 +57,6 @@ If you are already using the existing scraping endpoint for integration, do the - targets: [":8070"] ``` -1. Use the metrics tables in [this guide]({{}}) to transition from v1 metrics to equivalent v2 PromQL. +1. Use the metrics tables in [this guide](/content/operate/rs/7.8/references/metrics/prometheus-metrics-v1-to-v2.md) to transition from v1 metrics to equivalent v2 PromQL. It is possible to scrape both existing and new endpoints simultaneously, allowing advanced dashboard preparation and a smooth transition. diff --git a/content/operate/rs/7.8/monitoring/v1_monitoring.md b/content/operate/rs/7.8/monitoring/v1_monitoring.md index 28d2f18c21..aa76f16062 100644 --- a/content/operate/rs/7.8/monitoring/v1_monitoring.md +++ b/content/operate/rs/7.8/monitoring/v1_monitoring.md @@ -17,11 +17,11 @@ The current approach to monitoring Redis Enterprise Software includes: - Internal monitoring systems: - - [Statistics APIs]({{}}), which collect various statistics at regular time intervals for clusters, nodes, databases, shards, and endpoints. + - [Statistics APIs](/content/operate/rs/7.8/references/rest-api/objects/statistics/_index.md), which collect various statistics at regular time intervals for clusters, nodes, databases, shards, and endpoints. - Cluster manager metrics and alerts. -- The v1 Prometheus scraping endpoint to integrate with external monitoring tools such as [Prometheus and Grafana]({{}}). +- The v1 Prometheus scraping endpoint to integrate with external monitoring tools such as [Prometheus and Grafana](/content/operate/rs/7.8/monitoring/prometheus_and_grafana.md). ## Cluster manager metrics @@ -41,9 +41,9 @@ To choose which metrics to display in the two large graphs at the top of the pag We recommend that you show two similar metrics in the top graphs so you can compare them side-by-side. See the following topics for metrics definitions: -- [Database operations]({{< relref "/operate/rs/7.8/references/metrics/database-operations" >}}) for database metrics -- [Resource usage]({{< relref "/operate/rs/7.8/references/metrics/resource-usage" >}}) for resource and database usage metrics -- [Auto Tiering]({{< relref "/operate/rs/7.8/references/metrics/auto-tiering" >}}) for additional metrics for [Auto Tiering ]({{< relref "/operate/rs/7.8/databases/auto-tiering" >}}) databases +- [Database operations](/content/operate/rs/7.8/references/metrics/database-operations.md) for database metrics +- [Resource usage](/content/operate/rs/7.8/references/metrics/resource-usage.md) for resource and database usage metrics +- [Auto Tiering](/content/operate/rs/7.8/references/metrics/auto-tiering.md) for additional metrics for [Auto Tiering ](/content/operate/rs/7.8/databases/auto-tiering/_index.md) databases ## Cluster alerts @@ -55,10 +55,9 @@ Configured alerts are shown: - In the **log** - In email notifications, if you configure [email alerts](#send-alerts-by-email) -{{< note >}} -If you enable alerts for "Node joined" or "Node removed" actions, -you must also enable "Receive email alerts" so that the notifications are sent. -{{< /note >}} +> [!NOTE] +> If you enable alerts for "Node joined" or "Node removed" actions, +> you must also enable "Receive email alerts" so that the notifications are sent. To enable alerts for a cluster: @@ -86,8 +85,8 @@ To enable alerts for a database: To send cluster and database alerts by email: 1. In **Cluster > Alert Settings**, click **Edit**. -1. Select **Set an email** to configure the [email server settings]({{< relref "/operate/rs/7.8/clusters/configure/cluster-settings#configuring-email-server-settings" >}}). +1. Select **Set an email** to configure the [email server settings](/content/operate/rs/7.8/clusters/configure/cluster-settings.md#configuring-email-server-settings). 1. In **Configuration** for the database, click **Edit**. 1. Select the **Alerts** section to open it. 1. Select **Receive email alerts** and click **Save**. -1. In **Access Control**, select the [database and cluster alerts]({{< relref "/operate/rs/7.8/security/access-control/manage-users" >}}) that you want each user to receive. +1. In **Access Control**, select the [database and cluster alerts](/content/operate/rs/7.8/security/access-control/manage-users/_index.md) that you want each user to receive. diff --git a/content/operate/rs/7.8/networking/cluster-dns.md b/content/operate/rs/7.8/networking/cluster-dns.md index a7ecbfebec..c1eeac5eb0 100644 --- a/content/operate/rs/7.8/networking/cluster-dns.md +++ b/content/operate/rs/7.8/networking/cluster-dns.md @@ -11,7 +11,7 @@ weight: $weight url: '/operate/rs/7.8/networking/cluster-dns/' --- -By default, Redis Enterprise Software deployments use DNS to communicate between nodes. You can also use the [Discovery Service]({{< relref "/operate/rs/7.8/databases/durability-ha/discovery-service.md" >}}), which uses IP addresses to connect and complies with the [Redis Sentinel API]({{< relref "/operate/oss_and_stack/management/sentinel" >}}) supported by Redis Open Source. +By default, Redis Enterprise Software deployments use DNS to communicate between nodes. You can also use the [Discovery Service](/content/operate/rs/7.8/databases/durability-ha/discovery-service.md), which uses IP addresses to connect and complies with the [Redis Sentinel API](/content/operate/oss_and_stack/management/sentinel.md) supported by Redis Open Source. Each node in a Redis Enterprise cluster includes a small DNS server to manage internal functions, such as high availability, automatic failover, automatic migration, and so on. Nodes should only run the DNS server included with the software. Running additional DNS servers can lead to unexpected behavior. @@ -33,9 +33,8 @@ Whether you're administering Redis Enterprise Software or accessing databases, t The fully qualified domain name (FQDN) is the unique cluster identifier that enables clients to connect to the different components of Redis Enterprise Software. The FQDN is a crucial component of the high-availability mechanism because it's used internally to enable and implement automatic and transparent failover of nodes, databases, shards, and endpoints. -{{< note >}} -Setting the cluster's FQDN is a one-time operation, one that cannot be changed after being set. -{{< /note >}} +> [!NOTE] +> Setting the cluster's FQDN is a one-time operation, one that cannot be changed after being set. The FQDN must always comply with the IETF's [RFC 952](https://datatracker.ietf.org/doc/html/rfc952) standard and section 2.1 of the [RFC 1123](https://datatracker.ietf.org/doc/html/rfc1123) standard. @@ -106,9 +105,9 @@ However, as the topology of the cluster changes and node with the given IP addre you need to remember the IP address of another node participating in this cluster to connect to the Cluster Manager UI and manage the cluster. Applications connecting to Redis Software databases have the same constraints. -When using the IP-based connection method, you can use the [Discovery Service]({{< relref "/operate/rs/7.8/databases/durability-ha/discovery-service.md" >}}) +When using the IP-based connection method, you can use the [Discovery Service](/content/operate/rs/7.8/databases/durability-ha/discovery-service.md) to discover the database endpoint for a given database name as long as you have an IP address for at least one of the nodes in the cluster. The API used for discovery service is compliant with the Redis Sentinel API. -To test your connection, try pinging the service. For help, see [Connect to your database]({{< relref "/operate/rs/7.8/databases/connect/test-client-connectivity" >}}). +To test your connection, try pinging the service. For help, see [Connect to your database](/content/operate/rs/7.8/databases/connect/test-client-connectivity.md). diff --git a/content/operate/rs/7.8/networking/cluster-lba-setup.md b/content/operate/rs/7.8/networking/cluster-lba-setup.md index 1e5ae450dc..275079cc9c 100644 --- a/content/operate/rs/7.8/networking/cluster-lba-setup.md +++ b/content/operate/rs/7.8/networking/cluster-lba-setup.md @@ -41,7 +41,7 @@ The architecture is shown in the following diagram with a 3-node Redis Enterpris ### Prerequisites -- [Install]({{< relref "/operate/rs/7.8/installing-upgrading" >}}) the latest version of Redis Enterprise Software on your clusters +- [Install](/content/operate/rs/7.8/installing-upgrading/_index.md) the latest version of Redis Enterprise Software on your clusters - Configure the cluster with the cluster name (FQDN) even though DNS is not in use. Remember that the same cluster name is used to issue the license keys. We recommend that you use a ".local" suffix in the FQDN. @@ -54,19 +54,18 @@ The architecture is shown in the following diagram with a 3-node Redis Enterpris - Rest API on port 9443 for secure HTTPS connections and port 8080 for HTTP - Database ports 10000-19999 -Other ports are shown in the list of [Redis Enterprise network ports]({{< relref "/operate/rs/7.8/networking/port-configurations" >}}). +Other ports are shown in the list of [Redis Enterprise network ports](/content/operate/rs/7.8/networking/port-configurations.md). -{{< note >}} -Sticky, secured connections are needed only for the Redis Enterprise Cluster Manager UI on port 8443. - -- Certain load balancers provide specific logic to close idle connections. Either turn off this feature or make sure the applications connecting to Redis use reconnection logic. -- Make sure the load balancer is fast enough to resolve connections between two clusters or applications that are connected to Redis databases through a load balancer. -- Choose the standard load balancer that is commonly used in your environment so that you have easy access to in-house expertise for troubleshooting issues. -{{< /note >}} +> [!NOTE] +> Sticky, secured connections are needed only for the Redis Enterprise Cluster Manager UI on port 8443. +> +> - Certain load balancers provide specific logic to close idle connections. Either turn off this feature or make sure the applications connecting to Redis use reconnection logic. +> - Make sure the load balancer is fast enough to resolve connections between two clusters or applications that are connected to Redis databases through a load balancer. +> - Choose the standard load balancer that is commonly used in your environment so that you have easy access to in-house expertise for troubleshooting issues. ### Configure cluster -For clusters behind load balancers, we recommend using the `all-nodes` [proxy policy]({{}}) and enabling `handle_redirects`. +For clusters behind load balancers, we recommend using the `all-nodes` [proxy policy](/content/operate/rs/7.8/databases/configure/proxy-policy.md) and enabling `handle_redirects`. To allow inbound connections to be terminated on the relevant node inside the cluster, run the following `rladmin` commands on the cluster: @@ -87,9 +86,9 @@ rladmin tune cluster default_shards_placement sparse ### Configure database -After you update the cluster settings and configure the load balancers, you can go to the Redis Enterprise Cluster Manager UI at `https://load-balancer-virtual-ip:8443/` and [create a new database]({{< relref "/operate/rs/7.8/databases/create.md" >}}). +After you update the cluster settings and configure the load balancers, you can go to the Redis Enterprise Cluster Manager UI at `https://load-balancer-virtual-ip:8443/` and [create a new database](/content/operate/rs/7.8/databases/create.md). -To create an Active-Active database, use the `crdb-cli` utility. See the [`crdb-cli` reference]({{< relref "/operate/rs/7.8/references/cli-utilities/crdb-cli" >}}) for more information about creating Active-Active databases from the command line. +To create an Active-Active database, use the `crdb-cli` utility. See the [`crdb-cli` reference](/content/operate/rs/7.8/references/cli-utilities/crdb-cli/_index.md) for more information about creating Active-Active databases from the command line. ### Update load balancer configuration when cluster configuration changes @@ -106,7 +105,7 @@ especially if they are directly connected on IP addresses that have changed. ## Intercluster communication considerations -Redis Enterprise supports several topologies that allow intercluster replication, such as [Replica Of]({{< relref "/operate/rs/7.8/databases/import-export/replica-of/" >}}) and [Active-Active]({{< relref "/operate/rs/7.8/databases/active-active/" >}}) deployment options. +Redis Enterprise supports several topologies that allow intercluster replication, such as [Replica Of](/content/operate/rs/7.8/databases/import-export/replica-of/_index.md) and [Active-Active](/content/operate/rs/7.8/databases/active-active/_index.md) deployment options. When your Redis Enterprise software clusters are behind load balancers, you must allow some network services to be open and defined in the load balancers to allow the replication to work. ### Replica Of @@ -115,4 +114,4 @@ For Replica Of communication to work, you must expose database ports locally in ### Active-Active -For Active-Active communication to work, you must expose several ports, including every database port and several control plane ports as defined in [Network port configurations]({{< relref "/operate/rs/7.8/networking/port-configurations" >}}). Pay attention to services that include "Active-Active" in the connection source column, and allow these ports through any firewalls between the clusters. +For Active-Active communication to work, you must expose several ports, including every database port and several control plane ports as defined in [Network port configurations](/content/operate/rs/7.8/networking/port-configurations.md). Pay attention to services that include "Active-Active" in the connection source column, and allow these ports through any firewalls between the clusters. diff --git a/content/operate/rs/7.8/networking/configuring-aws-route53-dns-redis-enterprise.md b/content/operate/rs/7.8/networking/configuring-aws-route53-dns-redis-enterprise.md index 1001dfdd22..881e86bf71 100644 --- a/content/operate/rs/7.8/networking/configuring-aws-route53-dns-redis-enterprise.md +++ b/content/operate/rs/7.8/networking/configuring-aws-route53-dns-redis-enterprise.md @@ -54,9 +54,8 @@ When you create a new hosted zone in Route 53 for your domain, a set of NS recor You will need to create a new NS record which will point to the glue records created in the previous step. -{{}} -It is important to make sure that the **Record Name** of the NS record equals the FQDN (Fully Qualified Domain Name) of your Redis Enterprise cluster. If not, DNS resolution will not function correctly. -{{}} +> [!NOTE] +> It is important to make sure that the **Record Name** of the NS record equals the FQDN (Fully Qualified Domain Name) of your Redis Enterprise cluster. If not, DNS resolution will not function correctly. {{< image filename="/images/rs/07-NSRecord-en.png" >}} diff --git a/content/operate/rs/7.8/networking/mdns.md b/content/operate/rs/7.8/networking/mdns.md index 9a6c9bcc9c..7f39a618c3 100644 --- a/content/operate/rs/7.8/networking/mdns.md +++ b/content/operate/rs/7.8/networking/mdns.md @@ -10,13 +10,12 @@ linkTitle: mDNS client prerequisites weight: $weight url: '/operate/rs/7.8/networking/mdns/' --- -{{< note >}} -mDNS is only supported for development and testing environments. -{{< /note >}} +> [!NOTE] +> mDNS is only supported for development and testing environments. -If you choose to use the mDNS protocol when [you set the cluster name]({{< relref "/operate/rs/7.8/networking/cluster-dns" >}}), +If you choose to use the mDNS protocol when [you set the cluster name](/content/operate/rs/7.8/networking/cluster-dns.md), make sure that the configurations and prerequisites for resolving database endpoints are met on the client machines. -If you have [Replica Of]({{< relref "/operate/rs/7.8/databases/import-export/replica-of/" >}}) databases on the cluster, +If you have [Replica Of](/content/operate/rs/7.8/databases/import-export/replica-of/_index.md) databases on the cluster, the configurations and prerequisites are also required for the Redis Enterprise Software nodes. To prepare a client or node for mDNS: @@ -47,7 +46,7 @@ To prepare a client or node for mDNS: $ service avahi-daemon start ``` -1. If you are using [mDNS with IPv6 addresses]({{< relref "/operate/rs/7.8/networking/multi-ip-ipv6.md" >}}), +1. If you are using [mDNS with IPv6 addresses](/content/operate/rs/7.8/networking/multi-ip-ipv6.md), update the hosts line in `/etc/nsswitch.conf` to: ```yaml diff --git a/content/operate/rs/7.8/networking/multi-ip-ipv6.md b/content/operate/rs/7.8/networking/multi-ip-ipv6.md index 2c18479df8..a0bcca285e 100644 --- a/content/operate/rs/7.8/networking/multi-ip-ipv6.md +++ b/content/operate/rs/7.8/networking/multi-ip-ipv6.md @@ -38,7 +38,7 @@ IPv6 for internal communication is supported only for new clusters with Redis En If the server has only IPv6 interfaces, IPv6 is automatically used for internal and external traffic. Otherwise, internal traffic uses IPv4 by default. -To use IPv6 for internal traffic on a machine with both IPv4 and IPv6 interfaces, set `use_internal_ipv6` to `true` when you create a cluster using the [bootstrap REST API request]({{< relref "/operate/rs/7.8/references/rest-api/requests/bootstrap#post-bootstrap" >}}): +To use IPv6 for internal traffic on a machine with both IPv4 and IPv6 interfaces, set `use_internal_ipv6` to `true` when you create a cluster using the [bootstrap REST API request](/content/operate/rs/7.8/references/rest-api/requests/bootstrap/_index.md#post-bootstrap): ```sh POST /v1/bootstrap/create_cluster @@ -88,7 +88,7 @@ If you need to update the internal IP address in the OS, one option is to remove Alternatively, you can use the following steps to update a node's internal IP address without removing it from the cluster: -1. Turn the node into a replica using [`rladmin`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/node/enslave" >}}): +1. Turn the node into a replica using [`rladmin`](/content/operate/rs/7.8/references/cli-utilities/rladmin/node/enslave.md): ```sh rladmin node enslave demote_node @@ -104,7 +104,7 @@ Alternatively, you can use the following steps to update a node's internal IP ad 1. Follow the operating system vendor's instructions to change the node's IP address. -1. From a different cluster node, use [`rladmin node addr set`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/node/addr" >}}) to update the first node's IP address: +1. From a different cluster node, use [`rladmin node addr set`](/content/operate/rs/7.8/references/cli-utilities/rladmin/node/addr.md) to update the first node's IP address: ```sh rladmin node addr set @@ -135,7 +135,7 @@ Repeat this procedure for other cluster nodes to change their internal IP addres You can configure external addresses that are not bound to an active interface, but are otherwise mapped or configured to route traffic to the node (such as AWS Elastic IPs or a load balancer VIP). -You can use [rladmin node external_addr]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/node/external-addr" >}}) to change a node's external IP addresses. +You can use [rladmin node external_addr](/content/operate/rs/7.8/references/cli-utilities/rladmin/node/external-addr.md) to change a node's external IP addresses. Add an external IP address: @@ -156,13 +156,12 @@ Remove an external IP address: rladmin node external_addr remove ``` -{{< note >}} -While [joining a new node to a -cluster]({{< relref "/operate/rs/7.8/clusters/add-node.md" >}}) -during the node bootstrap process, -when prompted to provide an IP of an existing node in the cluster, -if you use the node's IP, provide the node's internal IP address. -{{< /note >}} +> [!NOTE] +> While [joining a new node to a +> cluster](/content/operate/rs/7.8/clusters/add-node.md) +> during the node bootstrap process, +> when prompted to provide an IP of an existing node in the cluster, +> if you use the node's IP, provide the node's internal IP address. ## Known limitations diff --git a/content/operate/rs/7.8/networking/port-configurations.md b/content/operate/rs/7.8/networking/port-configurations.md index 9163404712..ebd746917a 100644 --- a/content/operate/rs/7.8/networking/port-configurations.md +++ b/content/operate/rs/7.8/networking/port-configurations.md @@ -13,9 +13,8 @@ url: '/operate/rs/7.8/networking/port-configurations/' All Redis Enterprise Software deployments span multiple physical/virtual nodes. You'll need to keep several ports open between these nodes. This document describes the various port ranges and their uses. -{{< note >}} -Whenever you create a new database, you must verify that the ports assigned to the new database's endpoints are open. The cluster will not perform this verification for you. -{{< /note >}} +> [!NOTE] +> Whenever you create a new database, you must verify that the ports assigned to the new database's endpoints are open. The cluster will not perform this verification for you. ## Ports and port ranges used by Redis Enterprise Software @@ -27,7 +26,7 @@ Redis Enterprise Software's port usage falls into three general categories: | Protocol | Port | Configurable | Connection source | Description | |----------|------|--------------|-------------------|-------------| -| TCP | 8001 | ❌ No | Internal, External | Traffic from application to Redis Enterprise Software [Discovery Service]({{< relref "/operate/rs/7.8/databases/durability-ha/discovery-service.md" >}}) | +| TCP | 8001 | ❌ No | Internal, External | Traffic from application to Redis Enterprise Software [Discovery Service](/content/operate/rs/7.8/databases/durability-ha/discovery-service.md) | | TCP | 8070 | ❌ No | External | Metrics exported and managed by the web proxy | | TCP | 3347-3349, 8000, 8071, 9091, 9125 | ❌ No | Internal | Internal metrics ports | | TCP | 8443 | ✅ Yes | Internal, External | Secure (HTTPS) access to the management web UI | @@ -42,9 +41,8 @@ Redis Enterprise Software's port usage falls into three general categories: | TCP | 8002, 8004, 8006 | ✅ Yes | Internal | Default system health monitoring (envoy admin, envoy management server, gossip envoy admin)| | TCP | 8444, 9080 | ❌ No | Internal | Traffic between web proxy and cnm_http/cm | -{{< note >}} -The cluster uses ports 20000-29999 for internal shard traffic. You can't change the range, but `reserved_ports` excludes specific ports or port ranges from shard assignment. -{{< /note >}} +> [!NOTE] +> The cluster uses ports 20000-29999 for internal shard traffic. You can't change the range, but `reserved_ports` excludes specific ports or port ranges from shard assignment. ## Change port configuration @@ -52,7 +50,7 @@ The cluster uses ports 20000-29999 for internal shard traffic. You can't change Redis Enterprise Software reserves some ports by default (`system_reserved_ports`). To reserve other ports or port ranges and prevent the cluster from assigning them to database endpoints or internal shard traffic, configure `reserved_ports` using one of the following methods: -- [rladmin cluster config]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/cluster/config" >}}) +- [rladmin cluster config](/content/operate/rs/7.8/references/cli-utilities/rladmin/cluster/config.md) ```sh rladmin cluster config reserved_ports @@ -64,7 +62,7 @@ Redis Enterprise Software reserves some ports by default (`system_reserved_ports rladmin cluster config reserved_ports 11000 13000-13010 20048 ``` -- [Update cluster settings]({{< relref "/operate/rs/7.8/references/rest-api/requests/cluster#put-cluster" >}}) REST API request +- [Update cluster settings](/content/operate/rs/7.8/references/rest-api/requests/cluster/_index.md#put-cluster) REST API request ```sh PUT /v1/cluster @@ -101,7 +99,7 @@ For system health monitoring, Redis uses the following ports by default: - Port 8006 for gossip envoy admin -You can change each envoy port to a custom port using the [`rladmin cluster config`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/cluster/config" >}}) command as long as the new port is not in use by another process. When you change `envoy_admin_port`, expect a restart of envoy. +You can change each envoy port to a custom port using the [`rladmin cluster config`](/content/operate/rs/7.8/references/cli-utilities/rladmin/cluster/config.md) command as long as the new port is not in use by another process. When you change `envoy_admin_port`, expect a restart of envoy. To change the envoy admin port, run: @@ -172,4 +170,4 @@ To poll metrics from the `metrics_exporter` or to access the Cluster Manager UI, ## Nodes on different VLANs Nodes in the same cluster must reside on the same VLAN. If you can't -host the nodes on the same VLAN, then you must open [all ports]({{< relref "/operate/rs/7.8/networking/port-configurations.md" >}}) between them. +host the nodes on the same VLAN, then you must open [all ports](/content/operate/rs/7.8/networking/port-configurations.md) between them. diff --git a/content/operate/rs/7.8/networking/private-public-endpoints.md b/content/operate/rs/7.8/networking/private-public-endpoints.md index 21012ad8dd..f92a8b484b 100644 --- a/content/operate/rs/7.8/networking/private-public-endpoints.md +++ b/content/operate/rs/7.8/networking/private-public-endpoints.md @@ -11,7 +11,7 @@ title: "Enable private and\_public database endpoints" weight: $weight url: '/operate/rs/7.8/networking/private-public-endpoints/' --- -Each node in Redis Enterprise can be configured with [private and external IP addresses]({{< relref "/operate/rs/7.8/networking/multi-ip-ipv6.md" >}}). By default, Redis Enterprise Software databases expose a single endpoint, e.g. cluster.com (FQDN), using the external IP addresses, making it available to the public network (e.g. the internet). Additionally, the cluster can be configured to expose a private FQDN, which utilizes the private IP addresses for access from the private network only (e.g. VPC or an internal network). +Each node in Redis Enterprise can be configured with [private and external IP addresses](/content/operate/rs/7.8/networking/multi-ip-ipv6.md). By default, Redis Enterprise Software databases expose a single endpoint, e.g. cluster.com (FQDN), using the external IP addresses, making it available to the public network (e.g. the internet). Additionally, the cluster can be configured to expose a private FQDN, which utilizes the private IP addresses for access from the private network only (e.g. VPC or an internal network). When you create a cluster via the UI, you can configure it to expose private and public endpoints. This is common for environments such as cloud platforms and enterprises. diff --git a/content/operate/rs/7.8/new-features-redis-enterprise.md b/content/operate/rs/7.8/new-features-redis-enterprise.md index 8ca5e5c8ba..02bea0ecb6 100644 --- a/content/operate/rs/7.8/new-features-redis-enterprise.md +++ b/content/operate/rs/7.8/new-features-redis-enterprise.md @@ -27,7 +27,7 @@ provide smart and automatic conflict resolution based on the data type's intent. For more information, go here. For information, go to [Developing with -Active-Active databases]({{< relref "/operate/rs/7.8/developing/crdbs" >}}). +Active-Active databases](/operate/rs/7.8/developing/crdbs). ## Redis modules @@ -41,17 +41,17 @@ Enterprise is known for. Redis developed and certified these modules for use with Redis Enterprise Software: -- [RedisBloom]({{< relref "/operate/modules/redisbloom" >}}) +- [RedisBloom](/operate/modules/redisbloom) - Enables Redis to have a scalable bloom filter as a data type. Bloom filters are probabilistic data structures that quickly determine if something is contained within a set. - RedisGraph - RedisGraph is the first queryable Property Graph database to use sparse matrices to represent the adjacency matrix in graphs and linear algebra to query the graph. RedisGraph uses [Cypher](https://www.opencypher.org/) as its query language. -- [RedisJSON]({{< relref "/operate/modules/redisjson" >}}) +- [RedisJSON](/operate/modules/redisjson) - Now you have the convenience JSON as a built-in data type and easily able to address nested data via a path. -- [RediSearch]({{< relref "/operate/modules/redisearch" >}}) +- [RediSearch](/operate/modules/redisearch) - This module turns Redis into a distributed in-memory full-text indexing and search beast. @@ -70,7 +70,7 @@ easily and quickly test several containers to build the scalable and highly available cluster Redis Enterprise Software is famous for. For more information go to [quick start with Redis Enterprise Software -on Docker.]({{< relref "/operate/rs/7.8/installing-upgrading/get-started-docker.md" >}}) +on Docker.](/operate/rs/7.8/installing-upgrading/get-started-docker.md) ## LDAP integration @@ -81,4 +81,4 @@ accounts can be used for administering resources on the cluster via command line, Rest API, or admin console. For more information see [LDAP -Integration]({{< relref "/operate/rs/7.8/security/passwords-users-roles.md#setting-up-ldap" >}}). +Integration](/operate/rs/7.8/security/passwords-users-roles.md#setting-up-ldap). diff --git a/content/operate/rs/7.8/security/_index.md b/content/operate/rs/7.8/security/_index.md index d0acd4457b..8022c02341 100644 --- a/content/operate/rs/7.8/security/_index.md +++ b/content/operate/rs/7.8/security/_index.md @@ -15,15 +15,15 @@ Redis Enterprise Software provides various features to secure your Redis Enterpr | Login and passwords | Users and roles | Encryption and TLS | Certificates and audit | |---------------------|-----------------|--------------------|-----------------------| -| [Password attempts and session timeout]({{}}) | [Cluster and database access explained]({{}}) | [Enable TLS]({{}}) | [Create certificates]({{}}) | -| [Password complexity]({{}}) | [Create users]({{}}) | [Configure TLS protocols]({{}}) | [Monitor certificates]({{}}) | -| [Password expiration]({{}}) | [Create roles]({{}}) | [Configure cipher suites]({{}}) | [Update certificates]({{}}) | -| [Default database access]({{}}) | [Redis ACLs]({{}}) | [Encrypt private keys on disk]({{}}) | [Enable OCSP stapling]({{}}) | -| [Rotate user passwords]({{}}) | [Integrate with LDAP]({{}}) | [Internode encryption]({{}}) | [Audit database connections]({{}}) | +| [Password attempts and session timeout](/content/operate/rs/7.8/security/access-control/manage-users/login-lockout.md) | [Cluster and database access explained](/content/operate/rs/7.8/security/access-control/_index.md) | [Enable TLS](/content/operate/rs/7.8/security/encryption/tls/enable-tls.md) | [Create certificates](/content/operate/rs/7.8/security/certificates/create-certificates.md) | +| [Password complexity](/content/operate/rs/7.8/security/access-control/manage-passwords/password-complexity-rules.md) | [Create users](/content/operate/rs/7.8/security/access-control/create-users.md) | [Configure TLS protocols](/content/operate/rs/7.8/security/encryption/tls/tls-protocols.md) | [Monitor certificates](/content/operate/rs/7.8/security/certificates/monitor-certificates.md) | +| [Password expiration](/content/operate/rs/7.8/security/access-control/manage-passwords/password-expiration.md) | [Create roles](/content/operate/rs/7.8/security/access-control/create-combined-roles.md) | [Configure cipher suites](/content/operate/rs/7.8/security/encryption/tls/ciphers.md) | [Update certificates](/content/operate/rs/7.8/security/certificates/updating-certificates.md) | +| [Default database access](/content/operate/rs/7.8/security/access-control/manage-users/default-user.md) | [Redis ACLs](/content/operate/rs/7.8/security/access-control/redis-acl-overview.md) | [Encrypt private keys on disk](/content/operate/rs/7.8/security/encryption/pem-encryption.md) | [Enable OCSP stapling](/content/operate/rs/7.8/security/certificates/ocsp-stapling.md) | +| [Rotate user passwords](/content/operate/rs/7.8/security/access-control/manage-passwords/rotate-passwords.md) | [Integrate with LDAP](/content/operate/rs/7.8/security/access-control/ldap/_index.md) | [Internode encryption](/content/operate/rs/7.8/security/encryption/internode-encryption.md) | [Audit database connections](/content/operate/rs/7.8/security/audit-events.md) | ## Recommended security practices -See [Recommended security practices]({{}}) to learn how to protect Redis Enterprise Software. +See [Recommended security practices](/content/operate/rs/7.8/security/recommended-security-practices.md) to learn how to protect Redis Enterprise Software. ## Redis Trust Center diff --git a/content/operate/rs/7.8/security/access-control/_index.md b/content/operate/rs/7.8/security/access-control/_index.md index 574cfbcd81..d4041ac2fc 100644 --- a/content/operate/rs/7.8/security/access-control/_index.md +++ b/content/operate/rs/7.8/security/access-control/_index.md @@ -40,12 +40,11 @@ The following diagram shows three different options for roles and users: ## Default database access -When you create a database, [default user access]({{< relref "/operate/rs/7.8/security/access-control/manage-users/default-user" >}}) is enabled automatically. +When you create a database, [default user access](/content/operate/rs/7.8/security/access-control/manage-users/default-user.md) is enabled automatically. -If you set up role-based access controls for your database and don't require compatibility with versions earlier than Redis 6, you can [deactivate the default user]({{< relref "/operate/rs/7.8/security/access-control/manage-users/default-user" >}}). +If you set up role-based access controls for your database and don't require compatibility with versions earlier than Redis 6, you can [deactivate the default user](/content/operate/rs/7.8/security/access-control/manage-users/default-user.md). -{{}} -Before you [deactivate default user access]({{< relref "/operate/rs/7.8/security/access-control/manage-users/default-user#deactivate-default-user" >}}), make sure the role associated with the database is [assigned to a user]({{< relref "/operate/rs/7.8/security/access-control/create-users#assign-roles-to-users" >}}). Otherwise, the database will be inaccessible. -{{}} +> [!WARNING] +> Before you [deactivate default user access](/content/operate/rs/7.8/security/access-control/manage-users/default-user.md#deactivate-default-user), make sure the role associated with the database is [assigned to a user](/content/operate/rs/7.8/security/access-control/create-users.md#assign-roles-to-users). Otherwise, the database will be inaccessible. ## More info diff --git a/content/operate/rs/7.8/security/access-control/create-cluster-roles.md b/content/operate/rs/7.8/security/access-control/create-cluster-roles.md index 5291297e6a..49e8cd3e77 100644 --- a/content/operate/rs/7.8/security/access-control/create-cluster-roles.md +++ b/content/operate/rs/7.8/security/access-control/create-cluster-roles.md @@ -15,7 +15,7 @@ Roles with cluster access allow access to the Cluster Management UI and REST API ## Default management roles -Redis Enterprise Software includes five predefined roles that determine a user's level of access to the Cluster Manager UI and [REST API]({{}}). +Redis Enterprise Software includes five predefined roles that determine a user's level of access to the Cluster Manager UI and [REST API](/content/operate/rs/7.8/references/rest-api/_index.md). 1. **DB Viewer** - Read database settings 1. **DB Member** - Administer databases @@ -25,7 +25,7 @@ Redis Enterprise Software includes five predefined roles that determine a user's 1. **Admin** - Full cluster access 1. **None** - For data access only - cannot access the Cluster Manager UI or use the REST API -For more details about the privileges granted by each of these roles, see [Cluster Manager UI permissions](#cluster-manager-ui-permissions) or [REST API permissions]({{}}). +For more details about the privileges granted by each of these roles, see [Cluster Manager UI permissions](#cluster-manager-ui-permissions) or [REST API permissions](/content/operate/rs/7.8/references/rest-api/permissions.md). ## Cluster Manager UI permissions @@ -74,11 +74,11 @@ To create a role that grants cluster access: 1. Select **Save**. -You can [assign the new role to users]({{}}) to grant cluster access. +You can [assign the new role to users](/content/operate/rs/7.8/security/access-control/create-users.md#assign-roles-to-users) to grant cluster access. ### REST API method {#define-roles-rest-api} -To [create a role]({{}}) that grants cluster access: +To [create a role](/content/operate/rs/7.8/references/rest-api/requests/roles/_index.md#post-role) that grants cluster access: ```sh POST /v1/roles diff --git a/content/operate/rs/7.8/security/access-control/create-combined-roles.md b/content/operate/rs/7.8/security/access-control/create-combined-roles.md index c7b64aa29b..44b0adc272 100644 --- a/content/operate/rs/7.8/security/access-control/create-combined-roles.md +++ b/content/operate/rs/7.8/security/access-control/create-combined-roles.md @@ -33,21 +33,20 @@ To define a Redis ACL rule using the Cluster Manager UI: 1. Enter a descriptive name for the Redis ACL. This will be used to associate the ACL rule with the role. -1. Define the ACL rule. For more information about Redis ACL rules and syntax, see the [Redis ACL overview]({{}}). +1. Define the ACL rule. For more information about Redis ACL rules and syntax, see the [Redis ACL overview](/content/operate/rs/7.8/security/access-control/redis-acl-overview.md). - {{}} -The **ACL builder** does not support selectors and key permissions. Use **Free text command** to manually define them instead. - {{}} + > [!NOTE] + > The **ACL builder** does not support selectors and key permissions. Use **Free text command** to manually define them instead. + > 1. Select **Save**. -{{}} -For multi-key commands on multi-slot keys, the return value is `failure`, but the command runs on the keys that are allowed. -{{}} +> [!NOTE] +> For multi-key commands on multi-slot keys, the return value is `failure`, but the command runs on the keys that are allowed. ### REST API method {#define-acls-rest-api} -To define a Redis ACL rule using the REST API, use a [create Redis ACL]({{}}) request. For more information about Redis ACL rules and syntax, see the [Redis ACL overview]({{}}). +To define a Redis ACL rule using the REST API, use a [create Redis ACL](/content/operate/rs/7.8/references/rest-api/requests/redis_acls/_index.md#post-redis_acl) request. For more information about Redis ACL rules and syntax, see the [Redis ACL overview](/content/operate/rs/7.8/security/access-control/redis-acl-overview.md). Example request: @@ -89,7 +88,7 @@ To define a role for combined access using the Cluster Manager UI: 1. Enter a descriptive name for the role. This will be used to reference the role when configuring users. -1. Choose a **Cluster management role** other than **None**. For details about permissions granted by each role, see [Cluster Manager UI permissions]({{}}) and [REST API permissions]({{}}). +1. Choose a **Cluster management role** other than **None**. For details about permissions granted by each role, see [Cluster Manager UI permissions](/content/operate/rs/7.8/security/access-control/create-cluster-roles.md#cluster-manager-ui-permissions) and [REST API permissions](/content/operate/rs/7.8/references/rest-api/permissions.md). {{Add role with name}} @@ -107,7 +106,7 @@ To define a role for combined access using the Cluster Manager UI: {{Add databases to access}} -You can [assign the new role to users]({{}}) to grant database access and access to the Cluster Manager UI and REST API. +You can [assign the new role to users](/content/operate/rs/7.8/security/access-control/create-users.md#assign-roles-to-users) to grant database access and access to the Cluster Manager UI and REST API. ### REST API method {#define-roles-rest-api} @@ -119,7 +118,7 @@ To define a role for combined access using the REST API: #### Create a role {#create-role-rest-api} -To [create a role]({{}}) using the REST API: +To [create a role](/content/operate/rs/7.8/references/rest-api/requests/roles/_index.md#post-role) using the REST API: ```sh POST /v1/roles @@ -144,7 +143,7 @@ To associate the role with a Redis ACL and database, use the `uid` from the resp #### Associate a database with roles and Redis ACLs {#associate-roles-acls-rest-api} -[Update a database's configuration]({{}}) to add `roles_permissions` with the role and Redis ACL: +[Update a database's configuration](/content/operate/rs/7.8/references/rest-api/requests/bdbs/_index.md#put-bdbs) to add `roles_permissions` with the role and Redis ACL: ```sh POST /v1/bdbs/ diff --git a/content/operate/rs/7.8/security/access-control/create-db-roles.md b/content/operate/rs/7.8/security/access-control/create-db-roles.md index bef1e8ee9f..bf12e4c623 100644 --- a/content/operate/rs/7.8/security/access-control/create-db-roles.md +++ b/content/operate/rs/7.8/security/access-control/create-db-roles.md @@ -11,7 +11,7 @@ weight: 15 url: '/operate/rs/7.8/security/access-control/create-db-roles/' --- -Roles with database access grant the ability to access and interact with a database's data. Database access privileges are determined by defining [Redis ACLs]({{}}) and adding them to roles. +Roles with database access grant the ability to access and interact with a database's data. Database access privileges are determined by defining [Redis ACLs](/content/operate/rs/7.8/security/access-control/redis-acl-overview.md) and adding them to roles. To create a role that grants database access without granting access to the Redis Enterprise Cluster Manager UI and REST API: @@ -35,21 +35,20 @@ To define a Redis ACL rule using the Cluster Manager UI: 1. Enter a descriptive name for the Redis ACL. This will be used to associate the ACL rule with the role. -1. Define the ACL rule. For more information about Redis ACL rules and syntax, see the [Redis ACL overview]({{}}). +1. Define the ACL rule. For more information about Redis ACL rules and syntax, see the [Redis ACL overview](/content/operate/rs/7.8/security/access-control/redis-acl-overview.md). - {{}} -The **ACL builder** does not support selectors and key permissions. Use **Free text command** to manually define them instead. - {{}} + > [!NOTE] + > The **ACL builder** does not support selectors and key permissions. Use **Free text command** to manually define them instead. + > 1. Select **Save**. -{{}} -For multi-key commands on multi-slot keys, the return value is `failure`, but the command runs on the keys that are allowed. -{{}} +> [!NOTE] +> For multi-key commands on multi-slot keys, the return value is `failure`, but the command runs on the keys that are allowed. ### REST API method {#define-acls-rest-api} -To define a Redis ACL rule using the REST API, use a [create Redis ACL]({{}}) request. For more information about Redis ACL rules and syntax, see the [Redis ACL overview]({{}}). +To define a Redis ACL rule using the REST API, use a [create Redis ACL](/content/operate/rs/7.8/references/rest-api/requests/redis_acls/_index.md#post-redis_acl) request. For more information about Redis ACL rules and syntax, see the [Redis ACL overview](/content/operate/rs/7.8/security/access-control/redis-acl-overview.md). Example request: @@ -109,7 +108,7 @@ To define a role for database access using the Cluster Manager UI: {{Add databases to access}} -You can [assign the new role to users]({{}}) to grant database access. +You can [assign the new role to users](/content/operate/rs/7.8/security/access-control/create-users.md#assign-roles-to-users) to grant database access. ### REST API method {#define-roles-rest-api} @@ -121,7 +120,7 @@ To define a role for database access using the REST API: #### Create a role {#create-role-rest-api} -To [create a role]({{}}) using the REST API: +To [create a role](/content/operate/rs/7.8/references/rest-api/requests/roles/_index.md#post-role) using the REST API: ```sh POST /v1/roles @@ -146,7 +145,7 @@ To associate the role with a Redis ACL and database, use the `uid` from the resp #### Associate a database with roles and Redis ACLs {#associate-roles-acls-rest-api} -[Update a database's configuration]({{}}) to add `roles_permissions` with the role and Redis ACL: +[Update a database's configuration](/content/operate/rs/7.8/references/rest-api/requests/bdbs/_index.md#put-bdbs) to add `roles_permissions` with the role and Redis ACL: ```sh POST /v1/bdbs/ diff --git a/content/operate/rs/7.8/security/access-control/create-users.md b/content/operate/rs/7.8/security/access-control/create-users.md index b72f754cc9..3caa3fe535 100644 --- a/content/operate/rs/7.8/security/access-control/create-users.md +++ b/content/operate/rs/7.8/security/access-control/create-users.md @@ -15,9 +15,9 @@ url: '/operate/rs/7.8/security/access-control/create-users/' Before you create other users: -1. Review the [access control overview]({{}}) to learn how to use role-based access control (RBAC) to manage users' cluster access and database access. +1. Review the [access control overview](/content/operate/rs/7.8/security/access-control/_index.md) to learn how to use role-based access control (RBAC) to manage users' cluster access and database access. -1. Create roles you can assign to users. See [Create roles with cluster access only]({{}}), [Create roles with database access only]({{}}), or [Create roles with combined access]({{}}) for instructions. +1. Create roles you can assign to users. See [Create roles with cluster access only](/content/operate/rs/7.8/security/access-control/create-cluster-roles.md), [Create roles with database access only](/content/operate/rs/7.8/security/access-control/create-db-roles.md), or [Create roles with combined access](/content/operate/rs/7.8/security/access-control/create-combined-roles.md) for instructions. ## Add users @@ -51,7 +51,7 @@ Assign a role, associated with specific databases and access control lists (ACLs - Point to an existing user and select {{< image filename="/images/rs/buttons/edit-button.png#no-click" alt="The Edit button" width="25px" class="inline" >}} to edit the user. - - Select **+ Add user** to [create a new user]({{< relref "/operate/rs/7.8/security/access-control/create-users" >}}). + - Select **+ Add user** to [create a new user](/content/operate/rs/7.8/security/access-control/create-users.md). 1. Select a role to assign to the user. @@ -63,8 +63,8 @@ Assign a role, associated with specific databases and access control lists (ACLs Depending on the type of the user's assigned role (cluster management role or data access role), the user can now: -- [Connect to a database]({{< relref "/operate/rs/7.8/databases/connect" >}}) associated with the role and run limited Redis commands, depending on the role's Redis ACLs. +- [Connect to a database](/content/operate/rs/7.8/databases/connect/_index.md) associated with the role and run limited Redis commands, depending on the role's Redis ACLs. - Sign in to the Redis Enterprise Software Cluster Manager UI. -- Make a [REST API]({{< relref "/operate/rs/7.8/references/rest-api" >}}) request. +- Make a [REST API](/content/operate/rs/7.8/references/rest-api/_index.md) request. diff --git a/content/operate/rs/7.8/security/access-control/ldap/_index.md b/content/operate/rs/7.8/security/access-control/ldap/_index.md index a47b56e173..44ab052729 100644 --- a/content/operate/rs/7.8/security/access-control/ldap/_index.md +++ b/content/operate/rs/7.8/security/access-control/ldap/_index.md @@ -14,9 +14,9 @@ weight: 50 url: '/operate/rs/7.8/security/access-control/ldap/' --- -Redis Enterprise Software supports [Lightweight Directory Access Protocol](https://en.wikipedia.org/wiki/Lightweight_Directory_Access_Protocol) (LDAP) authentication and authorization through its [role-based access controls]({{< relref "/operate/rs/7.8/security/access-control" >}}) (RBAC). You can use LDAP to authorize access to the Cluster Manager UI and to control database access. +Redis Enterprise Software supports [Lightweight Directory Access Protocol](https://en.wikipedia.org/wiki/Lightweight_Directory_Access_Protocol) (LDAP) authentication and authorization through its [role-based access controls](/content/operate/rs/7.8/security/access-control/_index.md) (RBAC). You can use LDAP to authorize access to the Cluster Manager UI and to control database access. -You can configure LDAP roles using the Redis Enterprise Cluster Manager UI or [REST API]({{< relref "/operate/rs/7.8/references/rest-api/requests/ldap_mappings/" >}}). +You can configure LDAP roles using the Redis Enterprise Cluster Manager UI or [REST API](/content/operate/rs/7.8/references/rest-api/requests/ldap_mappings/_index.md). ## How it works @@ -57,26 +57,26 @@ Before you enable LDAP in Redis Enterprise, you need: 1. The LDAP groups that correspond to the levels of access you wish to authorize. Each LDAP group will be mapped to a Redis Enterprise access control role. -1. A Redis Enterprise access control role for each LDAP group. Before you enable LDAP, you need to set up [role-based access controls]({{< relref "/operate/rs/7.8/security/access-control" >}}) (RBAC). +1. A Redis Enterprise access control role for each LDAP group. Before you enable LDAP, you need to set up [role-based access controls](/content/operate/rs/7.8/security/access-control/_index.md) (RBAC). ## Enable LDAP To enable LDAP: -1. From **Access Control > LDAP** in the Cluster Manager UI, select the **Configuration** tab and [enable LDAP access]({{< relref "/operate/rs/7.8/security/access-control/ldap/enable-role-based-ldap" >}}). +1. From **Access Control > LDAP** in the Cluster Manager UI, select the **Configuration** tab and [enable LDAP access](/content/operate/rs/7.8/security/access-control/ldap/enable-role-based-ldap.md). {{Enable LDAP Panel}} -2. Map LDAP groups to [access control roles]({{< relref "/operate/rs/7.8/security/access-control/ldap/map-ldap-groups-to-roles" >}}). +2. Map LDAP groups to [access control roles](/content/operate/rs/7.8/security/access-control/ldap/map-ldap-groups-to-roles.md). -3. Update database access control lists (ACLs) to [authorize role access]({{< relref "/operate/rs/7.8/security/access-control/ldap/update-database-acls" >}}). +3. Update database access control lists (ACLs) to [authorize role access](/content/operate/rs/7.8/security/access-control/ldap/update-database-acls.md). If you already have appropriate roles, you can update them to include LDAP groups. ## More info -- Enable and configure [role-based LDAP]({{< relref "/operate/rs/7.8/security/access-control/ldap/enable-role-based-ldap" >}}) -- Map LDAP groups to [access control roles]({{< relref "/operate/rs/7.8/security/access-control/ldap/map-ldap-groups-to-roles" >}}) -- Update database ACLs to [authorize LDAP access]({{< relref "/operate/rs/7.8/security/access-control/ldap/update-database-acls" >}}) -- Learn more about Redis Enterprise Software [security and practices]({{< relref "/operate/rs/7.8/security/" >}}) +- Enable and configure [role-based LDAP](/content/operate/rs/7.8/security/access-control/ldap/enable-role-based-ldap.md) +- Map LDAP groups to [access control roles](/content/operate/rs/7.8/security/access-control/ldap/map-ldap-groups-to-roles.md) +- Update database ACLs to [authorize LDAP access](/content/operate/rs/7.8/security/access-control/ldap/update-database-acls.md) +- Learn more about Redis Enterprise Software [security and practices](/content/operate/rs/7.8/security/_index.md) diff --git a/content/operate/rs/7.8/security/access-control/ldap/enable-role-based-ldap.md b/content/operate/rs/7.8/security/access-control/ldap/enable-role-based-ldap.md index 6fb7716b1d..cd66d02d49 100644 --- a/content/operate/rs/7.8/security/access-control/ldap/enable-role-based-ldap.md +++ b/content/operate/rs/7.8/security/access-control/ldap/enable-role-based-ldap.md @@ -94,6 +94,6 @@ However, if you enable multi-factor authentication (MFA) for your LDAP server, y ## More info -- Map LDAP groups to [access control roles]({{< relref "/operate/rs/7.8/security/access-control/ldap/map-ldap-groups-to-roles" >}}) -- Update database ACLs to [authorize LDAP access]({{< relref "/operate/rs/7.8/security/access-control/ldap/update-database-acls" >}}) -- Learn more about Redis Software [security and practices]({{< relref "/operate/rs/7.8/security/" >}}) +- Map LDAP groups to [access control roles](/content/operate/rs/7.8/security/access-control/ldap/map-ldap-groups-to-roles.md) +- Update database ACLs to [authorize LDAP access](/content/operate/rs/7.8/security/access-control/ldap/update-database-acls.md) +- Learn more about Redis Software [security and practices](/content/operate/rs/7.8/security/_index.md) diff --git a/content/operate/rs/7.8/security/access-control/ldap/map-ldap-groups-to-roles.md b/content/operate/rs/7.8/security/access-control/ldap/map-ldap-groups-to-roles.md index f2b0d0cd8a..107212c80f 100644 --- a/content/operate/rs/7.8/security/access-control/ldap/map-ldap-groups-to-roles.md +++ b/content/operate/rs/7.8/security/access-control/ldap/map-ldap-groups-to-roles.md @@ -21,9 +21,9 @@ To map LDAP groups to access control roles in the Cluster Manager UI: 1. Select **Access Control > LDAP > Mapping**. - {{}} -You can map LDAP roles when LDAP configuration is not enabled, but they won't have any effect until you [configure and enable LDAP]({{< relref "/operate/rs/7.8/security/access-control/ldap/enable-role-based-ldap" >}}). - {{}} + > [!NOTE] + > You can map LDAP roles when LDAP configuration is not enabled, but they won't have any effect until you [configure and enable LDAP](/content/operate/rs/7.8/security/access-control/ldap/enable-role-based-ldap.md). + > {{Enable LDAP mappings Panel}} @@ -53,6 +53,6 @@ The scope of the authorization depends on the access control role: ## More info -- Enable and configure [role-based LDAP]({{< relref "/operate/rs/7.8/security/access-control/ldap/enable-role-based-ldap" >}}) -- Update database ACLs to [authorize LDAP access]({{< relref "/operate/rs/7.8/security/access-control/ldap/update-database-acls" >}}) -- Learn more about Redis Enterprise Software [security and practices]({{< relref "/operate/rs/7.8/security/" >}}) +- Enable and configure [role-based LDAP](/content/operate/rs/7.8/security/access-control/ldap/enable-role-based-ldap.md) +- Update database ACLs to [authorize LDAP access](/content/operate/rs/7.8/security/access-control/ldap/update-database-acls.md) +- Learn more about Redis Enterprise Software [security and practices](/content/operate/rs/7.8/security/_index.md) diff --git a/content/operate/rs/7.8/security/access-control/ldap/migrate-to-role-based-ldap.md b/content/operate/rs/7.8/security/access-control/ldap/migrate-to-role-based-ldap.md index 691f4dd406..43355818d2 100644 --- a/content/operate/rs/7.8/security/access-control/ldap/migrate-to-role-based-ldap.md +++ b/content/operate/rs/7.8/security/access-control/ldap/migrate-to-role-based-ldap.md @@ -11,7 +11,7 @@ weight: 55 url: '/operate/rs/7.8/security/access-control/ldap/migrate-to-role-based-ldap/' --- -Redis Enterprise Software supports LDAP through a [role-based mechanism]({{< relref "/operate/rs/7.8/security/access-control/ldap/" >}}), first introduced in v6.0.20. +Redis Enterprise Software supports LDAP through a [role-based mechanism](/content/operate/rs/7.8/security/access-control/ldap/_index.md), first introduced in v6.0.20. Earlier versions of Redis Enterprise Software supported a cluster-based mechanism; however, that mechanism was removed in v6.2.12. @@ -59,17 +59,17 @@ This checklist covers the basic process: To test your LDAP integration, you can: -- Connect with `redis-cli` and use the [`AUTH` command]({{< relref "/commands/auth" >}}) to test LDAP username/password credentials. +- Connect with `redis-cli` and use the [`AUTH` command](/content/commands/auth.md) to test LDAP username/password credentials. - Sign in to the Cluster Manager UI using LDAP credentials authorized for admin access. -- Use [Redis Insight]({{< relref "/develop/tools/insight" >}}) to access a database using authorized LDAP credentials. +- Use [Redis Insight](/content/develop/tools/insight/_index.md) to access a database using authorized LDAP credentials. -- Use the [REST API]({{< relref "/operate/rs/7.8/references/rest-api" >}}) to connect using authorized LDAP credentials. +- Use the [REST API](/content/operate/rs/7.8/references/rest-api/_index.md) to connect using authorized LDAP credentials. ## More info -- Enable and configure [role-based LDAP]({{< relref "/operate/rs/7.8/security/access-control/ldap/enable-role-based-ldap" >}}) -- Map LDAP groups to [access control roles]({{< relref "/operate/rs/7.8/security/access-control/ldap/map-ldap-groups-to-roles" >}}) -- Update database ACLs to [authorize LDAP access]({{< relref "/operate/rs/7.8/security/access-control/ldap/update-database-acls" >}}) -- Learn more about Redis Enterprise Software [security and practices]({{< relref "/operate/rs/7.8/security/" >}}) +- Enable and configure [role-based LDAP](/content/operate/rs/7.8/security/access-control/ldap/enable-role-based-ldap.md) +- Map LDAP groups to [access control roles](/content/operate/rs/7.8/security/access-control/ldap/map-ldap-groups-to-roles.md) +- Update database ACLs to [authorize LDAP access](/content/operate/rs/7.8/security/access-control/ldap/update-database-acls.md) +- Learn more about Redis Enterprise Software [security and practices](/content/operate/rs/7.8/security/_index.md) diff --git a/content/operate/rs/7.8/security/access-control/ldap/update-database-acls.md b/content/operate/rs/7.8/security/access-control/ldap/update-database-acls.md index 59c10b6d57..fc2ea09529 100644 --- a/content/operate/rs/7.8/security/access-control/ldap/update-database-acls.md +++ b/content/operate/rs/7.8/security/access-control/ldap/update-database-acls.md @@ -32,6 +32,6 @@ As a result, we recommend ordering roles so that higher access roles appear befo ## More info -- Enable and configure [role-based LDAP]({{< relref "/operate/rs/7.8/security/access-control/ldap/enable-role-based-ldap.md" >}}) -- Map LDAP groups to [access control roles]({{< relref "/operate/rs/7.8/security/access-control/ldap/map-ldap-groups-to-roles.md" >}}) -- Learn more about Redis Enterprise Software [security and practices]({{< relref "/operate/rs/7.8/security/" >}}) +- Enable and configure [role-based LDAP](/content/operate/rs/7.8/security/access-control/ldap/enable-role-based-ldap.md) +- Map LDAP groups to [access control roles](/content/operate/rs/7.8/security/access-control/ldap/map-ldap-groups-to-roles.md) +- Learn more about Redis Enterprise Software [security and practices](/content/operate/rs/7.8/security/_index.md) diff --git a/content/operate/rs/7.8/security/access-control/manage-passwords/_index.md b/content/operate/rs/7.8/security/access-control/manage-passwords/_index.md index ee99419d81..290046989a 100644 --- a/content/operate/rs/7.8/security/access-control/manage-passwords/_index.md +++ b/content/operate/rs/7.8/security/access-control/manage-passwords/_index.md @@ -15,16 +15,15 @@ url: '/operate/rs/7.8/security/access-control/manage-passwords/' Redis Enterprise Software provides several ways to manage the passwords of local accounts, including: -- [Password complexity rules]({{< relref "/operate/rs/7.8/security/access-control/manage-passwords/password-complexity-rules" >}}) +- [Password complexity rules](/content/operate/rs/7.8/security/access-control/manage-passwords/password-complexity-rules.md) -- [Password expiration]({{< relref "/operate/rs/7.8/security/access-control/manage-passwords/password-expiration" >}}) +- [Password expiration](/content/operate/rs/7.8/security/access-control/manage-passwords/password-expiration.md) -- [Password rotation]({{< relref "/operate/rs/7.8/security/access-control/manage-passwords/rotate-passwords" >}}) +- [Password rotation](/content/operate/rs/7.8/security/access-control/manage-passwords/rotate-passwords.md) -You can also manage a user's ability to [sign in]({{< relref "/operate/rs/7.8/security/access-control/manage-users/login-lockout#user-login-lockout" >}}) and control [session timeout]({{< relref "/operate/rs/7.8/security/access-control/manage-users/login-lockout#session-timeout" >}}). +You can also manage a user's ability to [sign in](/content/operate/rs/7.8/security/access-control/manage-users/login-lockout.md#user-login-lockout) and control [session timeout](/content/operate/rs/7.8/security/access-control/manage-users/login-lockout.md#session-timeout). -To enforce more advanced password policies, we recommend using [LDAP integration]({{< relref "/operate/rs/7.8/security/access-control/ldap" >}}) with an external identity provider, such as Active Directory. +To enforce more advanced password policies, we recommend using [LDAP integration](/content/operate/rs/7.8/security/access-control/ldap/_index.md) with an external identity provider, such as Active Directory. -{{}} -Redis Enterprise Software securely stores all user passwords using a cryptographic hash function. The default password hashing algorithm is `SHA-256`, but you can [change the password hashing algorithm]({{}}) to `PBKDF2` as of Redis Enterprise Software version 7.8.6-13. -{{}} +> [!NOTE] +> Redis Enterprise Software securely stores all user passwords using a cryptographic hash function. The default password hashing algorithm is `SHA-256`, but you can [change the password hashing algorithm](/content/operate/rs/7.8/security/access-control/manage-passwords/password-hashing-algorithm.md) to `PBKDF2` as of Redis Enterprise Software version 7.8.6-13. diff --git a/content/operate/rs/7.8/security/access-control/manage-passwords/active-active-admin-credentials.md b/content/operate/rs/7.8/security/access-control/manage-passwords/active-active-admin-credentials.md index 9671e62e1b..aaf72149f1 100644 --- a/content/operate/rs/7.8/security/access-control/manage-passwords/active-active-admin-credentials.md +++ b/content/operate/rs/7.8/security/access-control/manage-passwords/active-active-admin-credentials.md @@ -19,6 +19,5 @@ To update the administrator user password on a cluster with Active-Active databa 1. For each participating cluster _and_ each Active-Active database, update the admin user credentials to match the changes in step 1. -{{}} -Do not perform any management operations on the databases until these steps are complete. -{{}} +> [!WARNING] +> Do not perform any management operations on the databases until these steps are complete. diff --git a/content/operate/rs/7.8/security/access-control/manage-passwords/password-complexity-rules.md b/content/operate/rs/7.8/security/access-control/manage-passwords/password-complexity-rules.md index 85544295a0..92f5814a36 100644 --- a/content/operate/rs/7.8/security/access-control/manage-passwords/password-complexity-rules.md +++ b/content/operate/rs/7.8/security/access-control/manage-passwords/password-complexity-rules.md @@ -41,7 +41,7 @@ To enable password complexity rules, use one of the following methods: 1. Select **Save**. -- [Update cluster]({{}}) REST API request: +- [Update cluster](/content/operate/rs/7.8/references/rest-api/requests/cluster/_index.md#put-cluster) REST API request: ```sh PUT https://[host][:port]/v1/cluster @@ -70,7 +70,7 @@ To change the minimum password length, use one of the following methods: 1. Click **Save**. -- [Update cluster]({{}}) REST API request: +- [Update cluster](/content/operate/rs/7.8/references/rest-api/requests/cluster/_index.md#put-cluster) REST API request: ```sh PUT https://[host][:port]/v1/cluster @@ -89,7 +89,7 @@ To deactivate password complexity rules, use one of the following methods: 1. Select **Save**. -- [Update cluster]({{}}) REST API request: +- [Update cluster](/content/operate/rs/7.8/references/rest-api/requests/cluster/_index.md#put-cluster) REST API request: ```sh PUT https://[host][:port]/v1/cluster diff --git a/content/operate/rs/7.8/security/access-control/manage-passwords/password-expiration.md b/content/operate/rs/7.8/security/access-control/manage-passwords/password-expiration.md index 5627cb6ea4..41bd8f36db 100644 --- a/content/operate/rs/7.8/security/access-control/manage-passwords/password-expiration.md +++ b/content/operate/rs/7.8/security/access-control/manage-passwords/password-expiration.md @@ -15,9 +15,8 @@ url: '/operate/rs/7.8/security/access-control/manage-passwords/password-expirati ## Enable password expiration -{{}} -Password expiration is calculated from the time the password was last updated, not from when the policy is enabled. Passwords that were set long enough ago to already be expired will immediately be locked out when you enable this policy. Before enabling password expiration, verify all user passwords have been updated recently enough to avoid immediate lockouts. -{{}} +> [!WARNING] +> Password expiration is calculated from the time the password was last updated, not from when the policy is enabled. Passwords that were set long enough ago to already be expired will immediately be locked out when you enable this policy. Before enabling password expiration, verify all user passwords have been updated recently enough to avoid immediate lockouts. To enforce an expiration of a user's password after a specified number of days: diff --git a/content/operate/rs/7.8/security/access-control/manage-passwords/password-hashing-algorithm.md b/content/operate/rs/7.8/security/access-control/manage-passwords/password-hashing-algorithm.md index e4dfe50aa6..2bbd139a1c 100644 --- a/content/operate/rs/7.8/security/access-control/manage-passwords/password-hashing-algorithm.md +++ b/content/operate/rs/7.8/security/access-control/manage-passwords/password-hashing-algorithm.md @@ -14,11 +14,11 @@ url: '/operate/rs/7.8/security/access-control/manage-passwords/password-hashing- Redis Enterprise Software securely stores all user passwords using a cryptographic hash function. The default password hashing algorithm is `SHA-256`, but `PBKDF2` is also supported as of Redis Enterprise Software version 7.8.6-13. -You can change the password hashing algorithm using [`rladmin`]({{}}) or the [REST API]({{}}). When you change the password hashing algorithm, the cluster rehashes the administrator password and passwords for all users, including default users. +You can change the password hashing algorithm using [`rladmin`](/content/operate/rs/7.8/references/cli-utilities/rladmin/_index.md) or the [REST API](/content/operate/rs/7.8/references/rest-api/_index.md). When you change the password hashing algorithm, the cluster rehashes the administrator password and passwords for all users, including default users. ## Command-line method -To change the password hashing algorithm from the command line, run [`rladmin cluster change_password_hashing_algorithm`]({{}}): +To change the password hashing algorithm from the command line, run [`rladmin cluster change_password_hashing_algorithm`](/content/operate/rs/7.8/references/cli-utilities/rladmin/cluster/change_password_hashing_algorithm.md): ```sh rladmin cluster change_password_hashing_algorithm PBKDF2 @@ -26,7 +26,7 @@ rladmin cluster change_password_hashing_algorithm PBKDF2 ## REST API method -You can [change the password hashing algorithm]({{}}) using a REST API request: +You can [change the password hashing algorithm](/content/operate/rs/7.8/references/rest-api/requests/cluster/change_password_hashing_algorithm.md#patch-change-password-hashing-algorithm) using a REST API request: ```sh PATCH /v1/cluster/change_password_hashing_algorithm diff --git a/content/operate/rs/7.8/security/access-control/manage-passwords/rotate-passwords.md b/content/operate/rs/7.8/security/access-control/manage-passwords/rotate-passwords.md index 173e10556a..79541f00b4 100644 --- a/content/operate/rs/7.8/security/access-control/manage-passwords/rotate-passwords.md +++ b/content/operate/rs/7.8/security/access-control/manage-passwords/rotate-passwords.md @@ -12,18 +12,17 @@ weight: 70 url: '/operate/rs/7.8/security/access-control/manage-passwords/rotate-passwords/' --- -Redis Enterprise Software lets you implement password rotation policies using the [REST API]({{< relref "/operate/rs/7.8/references/rest-api" >}}). +Redis Enterprise Software lets you implement password rotation policies using the [REST API](/content/operate/rs/7.8/references/rest-api/_index.md). You can add a new password for a database user without immediately invalidating the old one to prevent possible authentication errors in production. -{{< note >}} -Password rotation does not work for the default user. [Add additional users]({{< relref "/operate/rs/7.8/security/access-control/create-users" >}}) to enable password rotation. -{{< /note >}} +> [!NOTE] +> Password rotation does not work for the default user. [Add additional users](/content/operate/rs/7.8/security/access-control/create-users.md) to enable password rotation. ## Password rotation policies For user access to the Redis Enterprise Software Cluster Manager UI, -you can set a [password expiration policy]({{< relref "/operate/rs/7.8/security/access-control/manage-passwords/password-expiration" >}}) to prompt the user to change their password. +you can set a [password expiration policy](/content/operate/rs/7.8/security/access-control/manage-passwords/password-expiration.md) to prompt the user to change their password. However, for database connections that rely on password authentication, you need to allow for authentication with the existing password while you roll out the new password to your systems. @@ -32,19 +31,18 @@ With the Redis Enterprise Software REST API, you can add additional passwords to After the old password is replaced in the database connections, you can delete the old password to finish the password rotation process. -{{< warning >}} -Multiple passwords are only supported using the REST API. -If you reset the password for a user in the Cluster Manager UI, -the new password replaces all other passwords for that user. -{{< /warning >}} +> [!WARNING] +> Multiple passwords are only supported using the REST API. +> If you reset the password for a user in the Cluster Manager UI, +> the new password replaces all other passwords for that user. -The new password cannot already exist as a password for the user and must meet the [password complexity]({{< relref "/operate/rs/7.8/security/access-control/manage-passwords/password-complexity-rules" >}}) requirements, if enabled. +The new password cannot already exist as a password for the user and must meet the [password complexity](/content/operate/rs/7.8/security/access-control/manage-passwords/password-complexity-rules.md) requirements, if enabled. ## Rotate password To rotate passwords: -1. Add an additional password to a user's password list with [`POST /v1/users/password`]({{< relref "/operate/rs/7.8/references/rest-api/requests/users/password#add-password" >}}). +1. Add an additional password to a user's password list with [`POST /v1/users/password`](/content/operate/rs/7.8/references/rest-api/requests/users/password.md#add-password). ```sh POST https://:/v1/users/password @@ -57,7 +55,7 @@ To rotate passwords: After you send this request, the user can authenticate with both the old and the new password. 1. Update the password in all database connections that connect with the user account. -1. Delete the original password with [`DELETE /v1/users/password`]({{< relref "/operate/rs/7.8/references/rest-api/requests/users/password#delete-password" >}}): +1. Delete the original password with [`DELETE /v1/users/password`](/content/operate/rs/7.8/references/rest-api/requests/users/password.md#delete-password): ```sh DELETE https://:/v1/users/password @@ -74,7 +72,7 @@ To rotate passwords: You can also replace all existing passwords for a user account with a single password that does not match any existing passwords. This can be helpful if you suspect that your passwords are compromised and you want to quickly resecure the account. -To replace a user's passwords, use [`PUT /v1/users/password`]({{< relref "/operate/rs/7.8/references/rest-api/requests/users/password#update-password" >}}). +To replace a user's passwords, use [`PUT /v1/users/password`](/content/operate/rs/7.8/references/rest-api/requests/users/password.md#update-password). ```sh PUT https://:/v1/users/password diff --git a/content/operate/rs/7.8/security/access-control/manage-users/default-user.md b/content/operate/rs/7.8/security/access-control/manage-users/default-user.md index e9de1ec0e0..32ee452d3c 100644 --- a/content/operate/rs/7.8/security/access-control/manage-users/default-user.md +++ b/content/operate/rs/7.8/security/access-control/manage-users/default-user.md @@ -12,7 +12,7 @@ weight: 60 url: '/operate/rs/7.8/security/access-control/manage-users/default-user/' --- -When you [create a database]({{< relref "/operate/rs/7.8/databases/create" >}}), default user database access is enabled by default (**Unauthenticated access** is selected). This gives the default user full access to the database and enables compatibility with versions of Redis before Redis 6. +When you [create a database](/content/operate/rs/7.8/databases/create.md), default user database access is enabled by default (**Unauthenticated access** is selected). This gives the default user full access to the database and enables compatibility with versions of Redis before Redis 6. Select **Password-only authentication**, then enter and confirm a default database password to require authentication for connections to the database. @@ -20,7 +20,7 @@ Select **Password-only authentication**, then enter and confirm a default databa ## Authenticate as default user -When you configure a password for your database, all connections to the database must authenticate using the [AUTH]({{< relref "/commands/auth" >}}) command. See Redis security's [authentication]({{}}) section for more information. +When you configure a password for your database, all connections to the database must authenticate using the [AUTH](/content/commands/auth.md) command. See Redis security's [authentication](/content/operate/oss_and_stack/management/security/_index.md#authentication) section for more information. ```sh AUTH @@ -40,13 +40,12 @@ To change the default user's password: ## Deactivate default user -If you set up [role-based access control]({{< relref "/operate/rs/7.8/security/access-control" >}}) with [access control lists]({{< relref "/operate/rs/7.8/security/access-control/create-db-roles" >}}) (ACLs) for your database and don't require backwards compatibility with versions earlier than Redis 6, you can [deactivate the default user]({{< relref "/operate/rs/7.8/security/access-control/manage-users/default-user" >}}). +If you set up [role-based access control](/content/operate/rs/7.8/security/access-control/_index.md) with [access control lists](/content/operate/rs/7.8/security/access-control/create-db-roles.md) (ACLs) for your database and don't require backwards compatibility with versions earlier than Redis 6, you can [deactivate the default user](/content/operate/rs/7.8/security/access-control/manage-users/default-user.md). -{{}} -- Before you deactivate default user access, make sure the role associated with the database is [assigned to a user]({{< relref "/operate/rs/7.8/security/access-control/create-users" >}}). Otherwise, the database will be inaccessible. - -- If you enabled the default database password during the creation of an [Active-Active database]({{< relref "/operate/rs/7.8/databases/active-active" >}}), you should not turn off the default database password because it could prevent the removal of participating database instances. -{{}} +> [!WARNING] +> - Before you deactivate default user access, make sure the role associated with the database is [assigned to a user](/content/operate/rs/7.8/security/access-control/create-users.md). Otherwise, the database will be inaccessible. +> +> - If you enabled the default database password during the creation of an [Active-Active database](/content/operate/rs/7.8/databases/active-active/_index.md), you should not turn off the default database password because it could prevent the removal of participating database instances. To deactivate the default user: diff --git a/content/operate/rs/7.8/security/access-control/manage-users/login-lockout.md b/content/operate/rs/7.8/security/access-control/manage-users/login-lockout.md index aa948cf8ab..1f35f8d9f1 100644 --- a/content/operate/rs/7.8/security/access-control/manage-users/login-lockout.md +++ b/content/operate/rs/7.8/security/access-control/manage-users/login-lockout.md @@ -22,11 +22,11 @@ Here, you learn how to configure the relevant settings. ## User login lockout -By default, after 5 failed login attempts within 15 minutes, the user account is locked for 30 minutes. You can change the user login lockout settings in the Cluster Manager UI or with [`rladmin`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin" >}}). +By default, after 5 failed login attempts within 15 minutes, the user account is locked for 30 minutes. You can change the user login lockout settings in the Cluster Manager UI or with [`rladmin`](/content/operate/rs/7.8/references/cli-utilities/rladmin/_index.md). ### View login lockout settings -You can view the cluster's user login lockout settings from **Cluster > Security > Preferences > Lockout threshold** in the Cluster Manager UI or with [`rladmin info cluster`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/info#info-cluster" >}}): +You can view the cluster's user login lockout settings from **Cluster > Security > Preferences > Lockout threshold** in the Cluster Manager UI or with [`rladmin info cluster`](/content/operate/rs/7.8/references/cli-utilities/rladmin/info.md#info-cluster): ```sh $ rladmin info cluster | grep login_lockout @@ -65,7 +65,7 @@ To change the number of failed login attempts allowed before the user account is - [Cluster Manager UI](#configure-user-login-lockout) -- [`rladmin tune cluster`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/tune#tune-cluster" >}}): +- [`rladmin tune cluster`](/content/operate/rs/7.8/references/cli-utilities/rladmin/tune.md#tune-cluster): ```sh rladmin tune cluster login_lockout_threshold @@ -89,7 +89,7 @@ To change the amount of time during which failed login attempts are counted, use - [Cluster Manager UI](#configure-user-login-lockout) -- [`rladmin tune cluster`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/tune#tune-cluster" >}}): +- [`rladmin tune cluster`](/content/operate/rs/7.8/references/cli-utilities/rladmin/tune.md#tune-cluster): ```sh rladmin tune cluster login_lockout_counter_reset_after @@ -107,7 +107,7 @@ To change the amount of time that the user account is locked after excessive fai - [Cluster Manager UI](#configure-user-login-lockout) -- [`rladmin tune cluster`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/tune#tune-cluster" >}}): +- [`rladmin tune cluster`](/content/operate/rs/7.8/references/cli-utilities/rladmin/tune.md#tune-cluster): ```sh rladmin tune cluster login_lockout_duration @@ -151,7 +151,7 @@ To unlock a user account or reset a user password with `rladmin`, run: rladmin cluster reset_password ``` -To unlock a user account or reset a user password with the REST API, use [`PUT /v1/users`]({{< relref "/operate/rs/7.8/references/rest-api/requests/users#put-user" >}}): +To unlock a user account or reset a user password with the REST API, use [`PUT /v1/users`](/content/operate/rs/7.8/references/rest-api/requests/users/_index.md#put-user): ```sh PUT /v1/users @@ -170,7 +170,7 @@ To turn off user login lockout and allow unlimited login attempts, use one of th 1. Select **Save**. -- [`rladmin tune cluster`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/tune#tune-cluster" >}}): +- [`rladmin tune cluster`](/content/operate/rs/7.8/references/cli-utilities/rladmin/tune.md#tune-cluster): ```sh rladmin tune cluster login_lockout_threshold 0 @@ -192,7 +192,7 @@ To customize the session timeout, use one of the following methods: 1. Select **Save**. -- [`rladmin cluster config`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/cluster/config" >}}): +- [`rladmin cluster config`](/content/operate/rs/7.8/references/cli-utilities/rladmin/cluster/config.md): ```sh rladmin cluster config cm_session_timeout_minutes diff --git a/content/operate/rs/7.8/security/access-control/redis-acl-overview.md b/content/operate/rs/7.8/security/access-control/redis-acl-overview.md index 3b5aa4993f..f2ffd7a9cc 100644 --- a/content/operate/rs/7.8/security/access-control/redis-acl-overview.md +++ b/content/operate/rs/7.8/security/access-control/redis-acl-overview.md @@ -19,11 +19,11 @@ Redis Enterprise Software provides one predefined Redis ACL named **Full Access* ## Redis ACL syntax -Redis ACLs are defined by a [Redis syntax]({{< relref "/operate/oss_and_stack/management/security/acl" >}}) where you specify the commands or command categories that are allowed for specific keys. +Redis ACLs are defined by a [Redis syntax](/content/operate/oss_and_stack/management/security/acl.md) where you specify the commands or command categories that are allowed for specific keys. ### Commands and categories -Redis ACL rules can allow or block specific [Redis commands]({{< relref "/commands" >}}) or [command categories]({{< relref "/operate/oss_and_stack/management/security/acl" >}}#command-categories). +Redis ACL rules can allow or block specific [Redis commands](/commands) or [command categories](/content/operate/oss_and_stack/management/security/acl.md#command-categories). - `+` includes commands @@ -41,9 +41,9 @@ The following example allows all `read` commands and the `SET` command: Module commands have several ACL limitations: -- [Redis modules]({{< relref "/operate/oss_and_stack/stack-with-enterprise" >}}) do not have command categories. +- [Redis modules](/content/operate/oss_and_stack/stack-with-enterprise/_index.md) do not have command categories. -- Other [command category]({{< relref "/operate/oss_and_stack/management/security/acl" >}}#command-categories) ACLs, such as `+@read` and `+@write`, do not include Redis module commands. `+@all` is the only exception because it allows all Redis commands. +- Other [command category](/content/operate/oss_and_stack/management/security/acl.md#command-categories) ACLs, such as `+@read` and `+@write`, do not include Redis module commands. `+@all` is the only exception because it allows all Redis commands. - You have to include individual module commands in a Redis ACL rule to allow them. @@ -73,7 +73,7 @@ The following example allows read and write access to all keys that start with " ### Pub/sub channels -The `&` prefix allows access to [pub/sub channels]({{< relref "/develop/pubsub" >}}) (only supported for databases with Redis version 6.2 or later). +The `&` prefix allows access to [pub/sub channels](/content/develop/pubsub/_index.md) (only supported for databases with Redis version 6.2 or later). To limit access to specific channels, include `resetchannels` before the allowed channels: @@ -83,7 +83,7 @@ resetchannels &channel1 &channel2 ### Selectors -[Selectors]({{< relref "/operate/oss_and_stack/management/security/acl" >}}#selectors) let you define multiple sets of rules in a single Redis ACL (only supported for databases with Redis version 7.2 or later). A command is allowed if it matches the base rule or any selector in the Redis ACL. +[Selectors](/content/operate/oss_and_stack/management/security/acl.md#selectors) let you define multiple sets of rules in a single Redis ACL (only supported for databases with Redis version 7.2 or later). A command is allowed if it matches the base rule or any selector in the Redis ACL. - `()` creates a new selector. @@ -97,7 +97,7 @@ In the following example, the base rule allows `GET key1` and the selector allow ## Default pub/sub permissions -Redis database version 6.2 introduced pub/sub ACL rules that determine which [pub/sub channels]({{< relref "/develop/pubsub" >}}) a user can access. +Redis database version 6.2 introduced pub/sub ACL rules that determine which [pub/sub channels](/content/develop/pubsub/_index.md) a user can access. The configuration option `acl-pubsub-default`, added in Redis Enterprise Software version 6.4.2, determines the cluster-wide default level of access for all pub/sub channels. Redis Enterprise Software uses the following pub/sub permissions by default: @@ -125,15 +125,14 @@ To secure pub/sub channels and prepare your cluster for future Redis Enterprise 1. If any issues occur, you can temporarily change the default pub/sub setting back to permissive. Resolve any problematic ACLs before making pub/sub permissions restrictive again. -{{}} -When you change the cluster's default pub/sub permissions to restrictive, `&*` is added to the **Full Access** ACL. Before you make this change, consider the following: - -- Because pub/sub ACL syntax was added in Redis 6.2, you can't associate the **Full Access** ACL with database versions 6.0 or lower after this change. - -- The **Full Access** ACL is not reverted if you change `acl-pubsub-default` to permissive again. - -- Every database with the default user enabled uses the **Full Access** ACL. -{{}} +> [!NOTE] +> When you change the cluster's default pub/sub permissions to restrictive, `&*` is added to the **Full Access** ACL. Before you make this change, consider the following: +> +> - Because pub/sub ACL syntax was added in Redis 6.2, you can't associate the **Full Access** ACL with database versions 6.0 or lower after this change. +> +> - The **Full Access** ACL is not reverted if you change `acl-pubsub-default` to permissive again. +> +> - Every database with the default user enabled uses the **Full Access** ACL. ### Change default pub/sub permissions @@ -145,7 +144,7 @@ As of Redis Enterprise version 6.4.2, you can configure `acl_pubsub_default`, wh To make default pub/sub permissions restrictive: -1. [Upgrade all databases]({{< relref "/operate/rs/7.8/installing-upgrading/upgrading/upgrade-database" >}}) in the cluster to Redis version 6.2 or later. +1. [Upgrade all databases](/content/operate/rs/7.8/installing-upgrading/upgrading/upgrade-database.md) in the cluster to Redis version 6.2 or later. 1. Set the default to restrictive (`resetchannels`) using one of the following methods: @@ -155,13 +154,13 @@ To make default pub/sub permissions restrictive: 1. For **Default permissions for Pub/Sub ACLs**, select **Restrictive**, then **Save**. - - [`rladmin tune cluster`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/tune#tune-cluster" >}}): + - [`rladmin tune cluster`](/content/operate/rs/7.8/references/cli-utilities/rladmin/tune.md#tune-cluster): ```sh rladmin tune cluster acl_pubsub_default resetchannels ``` - - [Update cluster policy]({{< relref "/operate/rs/7.8/references/rest-api/requests/cluster/policy#put-cluster-policy" >}}) REST API request: + - [Update cluster policy](/content/operate/rs/7.8/references/rest-api/requests/cluster/policy.md#put-cluster-policy) REST API request: ```sh PUT /v1/cluster/policy @@ -188,11 +187,11 @@ Redis ACLs also have the following differences in Redis Enterprise Software: To configure passwords in Redis Enterprise Software, use one of the following methods: - - [`rladmin cluster reset_password`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/cluster/reset_password" >}}): + - [`rladmin cluster reset_password`](/content/operate/rs/7.8/references/cli-utilities/rladmin/cluster/reset_password.md): ```sh rladmin cluster reset_password ``` - - REST API [`PUT /v1/users`]({{< relref "/operate/rs/7.8/references/rest-api/requests/users#put-user" >}}) request and provide `password` + - REST API [`PUT /v1/users`](/content/operate/rs/7.8/references/rest-api/requests/users/_index.md#put-user) request and provide `password` diff --git a/content/operate/rs/7.8/security/audit-events.md b/content/operate/rs/7.8/security/audit-events.md index 45bf71c961..0cf9d3f3b5 100644 --- a/content/operate/rs/7.8/security/audit-events.md +++ b/content/operate/rs/7.8/security/audit-events.md @@ -71,7 +71,7 @@ To enable auditing for your cluster, use: The socket file and path must be accessible by the user and group running Redis Enterprise Software. -- the [REST API]({{< relref "/operate/rs/7.8/references/rest-api/requests/cluster/auditing-db-conns#put-cluster-audit-db-conns" >}}) +- the [REST API](/content/operate/rs/7.8/references/rest-api/requests/cluster/auditing-db-conns.md#put-cluster-audit-db-conns) ``` PUT /v1/cluster/auditing/db_conns @@ -107,7 +107,7 @@ Once auditing is enabled for your cluster, you can audit individual databases. rladmin info cluster ``` -- the [REST API]({{< relref "/operate/rs/7.8/references/rest-api/requests/bdbs#put-bdbs" >}}) +- the [REST API](/content/operate/rs/7.8/references/rest-api/requests/bdbs/_index.md#put-bdbs) ``` PUT /v1/bdbs/1 @@ -135,7 +135,7 @@ To audit connections for new databases by default, use: To deactivate this policy, set `db_conns_auditing` to `disabled`. -- the [REST API]({{< relref "/operate/rs/7.8/references/rest-api/requests/cluster/policy#put-cluster-policy" >}}) +- the [REST API](/content/operate/rs/7.8/references/rest-api/requests/cluster/policy.md#put-cluster-policy) ``` PUT /v1/cluster/policy diff --git a/content/operate/rs/7.8/security/certificates/_index.md b/content/operate/rs/7.8/security/certificates/_index.md index fe8784b228..c56572815b 100644 --- a/content/operate/rs/7.8/security/certificates/_index.md +++ b/content/operate/rs/7.8/security/certificates/_index.md @@ -22,15 +22,15 @@ Here's the list of supported certificates that create secure, encrypted connecti | Certificate name | Autogenerated | Description | |------------------|:---------------:|-------------| -| `api` | ✅ | Encrypts [REST API]({{< relref "/operate/rs/7.8/references/rest-api/" >}}) requests and responses. | +| `api` | ✅ | Encrypts [REST API](/content/operate/rs/7.8/references/rest-api/_index.md) requests and responses. | | `cm` | ✅ | Secures connections to the Redis Enterprise Cluster Manager UI. | | `ldap_client` | :x: | Secures connections between LDAP clients and LDAP servers. | -| `metrics_exporter` | ✅ | Sends Redis Enterprise metrics to external [monitoring tools]({{< relref "/operate/rs/7.8/monitoring/" >}}) over a secure connection. | +| `metrics_exporter` | ✅ | Sends Redis Enterprise metrics to external [monitoring tools](/content/operate/rs/7.8/monitoring/_index.md) over a secure connection. | | `mtls_trusted_ca` | :x: | Required to enable certificate-based authentication for secure, passwordless access to the REST API. | | `proxy` | ✅ | Creates secure, encrypted connections between clients and databases. | -| `syncer` | ✅ | For [Active-Active]({{< relref "/operate/rs/7.8/databases/active-active/" >}}) or [Replica Of]({{< relref "/operate/rs/7.8/databases/import-export/replica-of/" >}}) databases, encrypts data during the synchronization of participating clusters. | +| `syncer` | ✅ | For [Active-Active](/content/operate/rs/7.8/databases/active-active/_index.md) or [Replica Of](/content/operate/rs/7.8/databases/import-export/replica-of/_index.md) databases, encrypts data during the synchronization of participating clusters. | -Certificates that are not autogenerated are optional unless you want to use certain features. For example, you must provide your own `ldap_client` certificate to enable [LDAP authentication]({{}}) or an `mtls_trusted_ca` certificate to enable certificate-based authentication. +Certificates that are not autogenerated are optional unless you want to use certain features. For example, you must provide your own `ldap_client` certificate to enable [LDAP authentication](/content/operate/rs/7.8/security/access-control/ldap/_index.md) or an `mtls_trusted_ca` certificate to enable certificate-based authentication. ## Accept self-signed certificates to access the Cluster Manager UI diff --git a/content/operate/rs/7.8/security/certificates/certificate-based-authentication.md b/content/operate/rs/7.8/security/certificates/certificate-based-authentication.md index b52e9b901c..c9d414c0c2 100644 --- a/content/operate/rs/7.8/security/certificates/certificate-based-authentication.md +++ b/content/operate/rs/7.8/security/certificates/certificate-based-authentication.md @@ -11,7 +11,7 @@ weight: 70 url: '/operate/rs/7.8/security/certificates/certificate-based-authentication/' --- -You can set up certificate-based authentication for specific users to enable secure, passwordless access to the Redis Enterprise Software [REST API]({{}}) and databases. +You can set up certificate-based authentication for specific users to enable secure, passwordless access to the Redis Enterprise Software [REST API](/content/operate/rs/7.8/references/rest-api/_index.md) and databases. ## Set up certificate-based authentication @@ -27,7 +27,7 @@ To set up certificate-based authentication: ### Add mtls_trusted_ca certificate {#add-cert} -Add a trusted CA certificate `mtls_trusted_ca` to the cluster using an [update cluster certificate]({{}}) request: +Add a trusted CA certificate `mtls_trusted_ca` to the cluster using an [update cluster certificate](/content/operate/rs/7.8/references/rest-api/requests/cluster/certificates/_index.md#put-cluster-update_cert) request: ```sh PUT /v1/cluster/update_cert @@ -39,7 +39,7 @@ PUT /v1/cluster/update_cert ### Configure cluster settings {#config-cluster} -[Update cluster settings]({{}}) with mutual TLS configuration. +[Update cluster settings](/content/operate/rs/7.8/references/rest-api/requests/cluster/_index.md#put-cluster) with mutual TLS configuration. For certificate validation by Subject Alternative Name (SAN), use: @@ -76,11 +76,11 @@ Replace the placeholder values `<>` with your client certificate's subject value ### Enable mutual TLS for databases {#enable-mtls-dbs} -Before you can connect to a database using certificate-based authentication, you must enable mutual TLS (mTLS). See [Enable TLS]({{}}) for detailed instructions. +Before you can connect to a database using certificate-based authentication, you must enable mutual TLS (mTLS). See [Enable TLS](/content/operate/rs/7.8/security/encryption/tls/enable-tls.md) for detailed instructions. ### Create certificate auth_method users {#create-cert-users} -When you [create new users]({{}}), include `"auth_method": "certificate"` and `certificate_subject_line` in the request body: +When you [create new users](/content/operate/rs/7.8/references/rest-api/requests/users/_index.md#post-user), include `"auth_method": "certificate"` and `certificate_subject_line` in the request body: ```sh POST /v1/users @@ -92,25 +92,24 @@ POST /v1/users Replace the placeholder values `<>` with your client certificate's subject values. -{{}} -The `certificate_subject_line` must: - -- Follow [RFC 2253](https://www.rfc-editor.org/rfc/rfc2253) format. - -- List the attributes in reverse order, starting with the Common Name (`CN`). - -- Not contain spaces after the commas that separate attributes. - -- Exactly match the certificate's RFC 2253 subject. - -- Contain only one Organizational Unit (`OU`) value. -{{}} +> [!NOTE] +> The `certificate_subject_line` must: +> +> - Follow [RFC 2253](https://www.rfc-editor.org/rfc/rfc2253) format. +> +> - List the attributes in reverse order, starting with the Common Name (`CN`). +> +> - Not contain spaces after the commas that separate attributes. +> +> - Exactly match the certificate's RFC 2253 subject. +> +> - Contain only one Organizational Unit (`OU`) value. ## Authenticate REST API requests To use the REST API with certificate-based authentication, you must provide a client certificate, signed by the trusted CA `mtls_trusted_ca`, and a private key. -The following example uses [cURL](https://curl.se/) to send a [REST API request]({{}}): +The following example uses [cURL](https://curl.se/) to send a [REST API request](/content/operate/rs/7.8/references/rest-api/requests/_index.md): ```sh curl --request --url https://:9443// --cert client.pem --key client.key @@ -118,9 +117,9 @@ curl --request --url https://:9443/}}) (`authentication_ssl_client_certs` in the REST API), or be signed by one of these certificates. +To connect to a database with certificate-based authentication, you must provide a client certificate, signed by a trusted CA, and a private key. The client certificate must either be one you previously added to the database to [enable mutual TLS](/content/operate/rs/7.8/security/encryption/tls/enable-tls.md#enable-mutual-tls) (`authentication_ssl_client_certs` in the REST API), or be signed by one of these certificates. -The following example shows how to connect to a Redis database with [`redis-cli`]({{}}): +The following example shows how to connect to a Redis database with [`redis-cli`](/content/operate/rs/7.8/references/cli-utilities/redis-cli/_index.md): ```sh redis-cli -h -p --tls --cacert .pem --cert redis_user.crt --key redis_user_private.key diff --git a/content/operate/rs/7.8/security/certificates/create-certificates.md b/content/operate/rs/7.8/security/certificates/create-certificates.md index 96cc053b42..5a06be6818 100644 --- a/content/operate/rs/7.8/security/certificates/create-certificates.md +++ b/content/operate/rs/7.8/security/certificates/create-certificates.md @@ -117,7 +117,7 @@ The following values are supported for the _\_ parameter: | `proxy` | The database endpoint | | `syncer` | The synchronization process | -You can also use the REST API. To learn more, see [Update certificates]({{< relref "/operate/rs/7.8/security/certificates/updating-certificates#how-to-update-certificates" >}}). +You can also use the REST API. To learn more, see [Update certificates](/content/operate/rs/7.8/security/certificates/updating-certificates.md#how-to-update-certificates). ## Create CA-signed certificates @@ -223,7 +223,7 @@ However you choose to create the certificates, be sure to incorporate the guidel 4. Upload the certificate to your cluster. - You can use [`rladmin`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/cluster/certificate" >}}) to replace the existing certificates with new certificates: + You can use [`rladmin`](/content/operate/rs/7.8/references/cli-utilities/rladmin/cluster/certificate.md) to replace the existing certificates with new certificates: ``` console $ rladmin cluster certificate set certificate_file \ @@ -232,5 +232,5 @@ However you choose to create the certificates, be sure to incorporate the guidel For a list of values supported by the `` parameter, see the [earlier table](#replace-self-signed). - You can also use the REST API. To learn more, see [Update certificates]({{< relref "/operate/rs/7.8/security/certificates/updating-certificates#how-to-update-certificates" >}}). + You can also use the REST API. To learn more, see [Update certificates](/content/operate/rs/7.8/security/certificates/updating-certificates.md#how-to-update-certificates). diff --git a/content/operate/rs/7.8/security/certificates/monitor-certificates.md b/content/operate/rs/7.8/security/certificates/monitor-certificates.md index 854b3a5be9..89728ec278 100644 --- a/content/operate/rs/7.8/security/certificates/monitor-certificates.md +++ b/content/operate/rs/7.8/security/certificates/monitor-certificates.md @@ -15,7 +15,7 @@ You can monitor certificates used by Redis Enterprise Software. ### Monitor certificates with Prometheus -Redis Enterprise Software exposes the expiration time (in seconds) of each certificate on each node. To learn how to monitor Redis Enterprise Software metrics using Prometheus, see the [Prometheus integration quick start]({{< relref "/integrate/prometheus-with-redis-enterprise/" >}}). +Redis Enterprise Software exposes the expiration time (in seconds) of each certificate on each node. To learn how to monitor Redis Enterprise Software metrics using Prometheus, see the [Prometheus integration quick start](/content/integrate/prometheus-with-redis-enterprise/_index.md). Here are some examples of the `node_cert_expiration_seconds` metric: @@ -27,7 +27,7 @@ node_cert_expiration_seconds{cluster="mycluster.local",logical_name="metrics_exp node_cert_expiration_seconds{cluster="mycluster.local",logical_name="syncer",node="1",path="/etc/opt/redislabs/syncer_cert.pem"} 31104000.0 ``` -The following certificates relate to [internode communication TLS encryption]({{< relref "/operate/rs/7.8/security/encryption/internode-encryption" >}}) and are automatically rotated by Redis Enterprise Software: +The following certificates relate to [internode communication TLS encryption](/content/operate/rs/7.8/security/encryption/internode-encryption.md) and are automatically rotated by Redis Enterprise Software: ```sh node_cert_expiration_seconds{cluster="mycluster.local",logical_name="ccs_internode_encryption",node="1",path="/etc/opt/redislabs/ccs_internode_encryption_cert.pem"} 2592000.0 diff --git a/content/operate/rs/7.8/security/certificates/ocsp-stapling.md b/content/operate/rs/7.8/security/certificates/ocsp-stapling.md index c951ada0ab..0d7f3bd62f 100644 --- a/content/operate/rs/7.8/security/certificates/ocsp-stapling.md +++ b/content/operate/rs/7.8/security/certificates/ocsp-stapling.md @@ -59,11 +59,11 @@ To set up OCSP stapling with the Redis Enterprise Cluster Manager UI: ### REST API method -To set up OCSP stapling with the [REST API]({{< relref "/operate/rs/7.8/references/rest-api" >}}): +To set up OCSP stapling with the [REST API](/content/operate/rs/7.8/references/rest-api/_index.md): -1. Use the REST API to [replace the proxy certificate]({{< relref "/operate/rs/7.8/security/certificates/updating-certificates#use-the-rest-api" >}}) with a certificate signed by your third-party CA. +1. Use the REST API to [replace the proxy certificate](/content/operate/rs/7.8/security/certificates/updating-certificates.md#use-the-rest-api) with a certificate signed by your third-party CA. -1. To configure and enable OCSP, send a [`PUT` request to the `/v1/ocsp`]({{< relref "/operate/rs/7.8/references/rest-api/requests/ocsp#put-ocsp" >}}) endpoint and include an [OCSP JSON object]({{< relref "/operate/rs/7.8/references/rest-api/objects/ocsp" >}}) in the request body: +1. To configure and enable OCSP, send a [`PUT` request to the `/v1/ocsp`](/content/operate/rs/7.8/references/rest-api/requests/ocsp/_index.md#put-ocsp) endpoint and include an [OCSP JSON object](/content/operate/rs/7.8/references/rest-api/objects/ocsp.md) in the request body: ```json { @@ -77,11 +77,11 @@ To set up OCSP stapling with the [REST API]({{< relref "/operate/rs/7.8/referenc ### `rladmin` method -To set up OCSP stapling with the [`rladmin`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin" >}}) command-line utility: +To set up OCSP stapling with the [`rladmin`](/content/operate/rs/7.8/references/cli-utilities/rladmin/_index.md) command-line utility: -1. Use [`rladmin`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/cluster/certificate" >}}) to [replace the proxy certificate]({{< relref "/operate/rs/7.8/security/certificates/updating-certificates#use-the-cli" >}}) with a certificate signed by your third-party CA. +1. Use [`rladmin`](/content/operate/rs/7.8/references/cli-utilities/rladmin/cluster/certificate.md) to [replace the proxy certificate](/content/operate/rs/7.8/security/certificates/updating-certificates.md#use-the-cli) with a certificate signed by your third-party CA. -1. Update the cluster's OCSP settings with the [`rladmin cluster ocsp config`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/cluster/ocsp#ocsp-config" >}}) command if you don't want to use their default values. +1. Update the cluster's OCSP settings with the [`rladmin cluster ocsp config`](/content/operate/rs/7.8/references/cli-utilities/rladmin/cluster/ocsp.md#ocsp-config) command if you don't want to use their default values. For example: diff --git a/content/operate/rs/7.8/security/certificates/updating-certificates.md b/content/operate/rs/7.8/security/certificates/updating-certificates.md index 7cf34c648e..e756cbcef5 100644 --- a/content/operate/rs/7.8/security/certificates/updating-certificates.md +++ b/content/operate/rs/7.8/security/certificates/updating-certificates.md @@ -11,25 +11,23 @@ weight: 20 url: '/operate/rs/7.8/security/certificates/updating-certificates/' --- -{{}} -When you update the certificates, the new certificate replaces the same certificates on all nodes in the cluster. -{{}} +> [!WARNING] +> When you update the certificates, the new certificate replaces the same certificates on all nodes in the cluster. ## Prerequisites -You need to create new certificates before you can update them in the cluster. To create replacement certificates, see [Renew self-signed certificates]({{}}) or [Create CA-signed certificates]({{}}) for detailed instructions. +You need to create new certificates before you can update them in the cluster. To create replacement certificates, see [Renew self-signed certificates](/content/operate/rs/7.8/security/certificates/create-certificates.md#renew-self-signed-certificates) or [Create CA-signed certificates](/content/operate/rs/7.8/security/certificates/create-certificates.md#create-ca-signed-certificates) for detailed instructions. ## How to update certificates -You can use the [`rladmin`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin" >}}) command-line interface (CLI) or the [REST API]({{< relref "/operate/rs/7.8/references/rest-api" >}}) to update certificates. The Cluster Manager UI lets you update proxy and syncer certificates on the **Cluster > Security > Certificates** screen. +You can use the [`rladmin`](/content/operate/rs/7.8/references/cli-utilities/rladmin/_index.md) command-line interface (CLI) or the [REST API](/content/operate/rs/7.8/references/rest-api/_index.md) to update certificates. The Cluster Manager UI lets you update proxy and syncer certificates on the **Cluster > Security > Certificates** screen. The new certificates are used the next time the clients connect to the database. When you upgrade Redis Enterprise Software, the upgrade process copies the certificates that are on the first upgraded node to all of the nodes in the cluster. -{{}} -Don't manually overwrite the files located in `/etc/opt/redislabs`. Instead, upload new certificates to a temporary location on one of the cluster nodes, such as the `/tmp` directory. -{{}} +> [!NOTE] +> Don't manually overwrite the files located in `/etc/opt/redislabs`. Instead, upload new certificates to a temporary location on one of the cluster nodes, such as the `/tmp` directory. ### Use the Cluster Manager UI @@ -55,7 +53,7 @@ To replace proxy or syncer certificates using the Cluster Manager UI: ### Use the CLI -To replace certificates with the `rladmin` CLI, run the [`cluster certificate set`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/cluster/certificate" >}}) command: +To replace certificates with the `rladmin` CLI, run the [`cluster certificate set`](/content/operate/rs/7.8/references/cli-utilities/rladmin/cluster/certificate.md) command: ```sh rladmin cluster certificate set certificate_file .pem key_file .pem @@ -63,7 +61,7 @@ To replace certificates with the `rladmin` CLI, run the [`cluster certificate se Replace the following variables with your own values: -- `` - The name of the certificate you want to replace. See the [certificates table]({{< relref "/operate/rs/7.8/security/certificates" >}}) for the list of valid certificate names. +- `` - The name of the certificate you want to replace. See the [certificates table](/content/operate/rs/7.8/security/certificates/_index.md) for the list of valid certificate names. - `` - The name of your certificate file - `` - The name of your key file @@ -75,7 +73,7 @@ rladmin cluster certificate set cm certificate_file cluster.pem key_file key.pem ### Use the REST API -To replace a certificate using the REST API, use [`PUT /v1/cluster/update_cert`]({{< relref "/operate/rs/7.8/references/rest-api/requests/cluster/certificates#put-cluster-update_cert" >}}): +To replace a certificate using the REST API, use [`PUT /v1/cluster/update_cert`](/content/operate/rs/7.8/references/rest-api/requests/cluster/certificates/_index.md#put-cluster-update_cert): ```sh PUT https://[host][:port]/v1/cluster/update_cert @@ -84,14 +82,13 @@ PUT https://[host][:port]/v1/cluster/update_cert Replace the following variables with your own values: -- `` - The name of the certificate to replace. See the [certificates table]({{< relref "/operate/rs/7.8/security/certificates" >}}) for the list of valid certificate names. +- `` - The name of the certificate to replace. See the [certificates table](/content/operate/rs/7.8/security/certificates/_index.md) for the list of valid certificate names. - `` - The contents of the \*\_key.pem file - {{< tip >}} - - The key file contains `\n` end of line characters (EOL) that you cannot paste into the API call. - You can use `sed -z 's/\n/\\\n/g'` to escape the EOL characters. - {{< /tip >}} + > [!TIP] + > The key file contains `\n` end of line characters (EOL) that you cannot paste into the API call. + > You can use `sed -z 's/\n/\\\n/g'` to escape the EOL characters. + > - `` - The contents of the \*\_cert.pem file @@ -105,11 +102,10 @@ To update the proxy certificate on clusters running Replica Of databases: 1. Use the Cluster Manager UI, `rladmin`, or the REST API to update the proxy certificate on the source database cluster. -1. From the Cluster Manager UI, update the destination database (_replica_) configuration with the [new certificate]({{< relref "/operate/rs/7.8/databases/import-export/replica-of/create#encrypt-replica-database-traffic" >}}). +1. From the Cluster Manager UI, update the destination database (_replica_) configuration with the [new certificate](/content/operate/rs/7.8/databases/import-export/replica-of/create.md#encrypt-replica-database-traffic). -{{}} -- Perform step 2 as quickly as possible after performing step 1. Connections using the previous certificate are rejected after applying the new certificate. Until both steps are performed, recovery of the database sync cannot be established. -{{}} +> [!NOTE] +> - Perform step 2 as quickly as possible after performing step 1. Connections using the previous certificate are rejected after applying the new certificate. Until both steps are performed, recovery of the database sync cannot be established. ## Active-Active database certificates @@ -119,16 +115,15 @@ To update proxy certificate on clusters running Active-Active databases: 1. Use the Cluster Manager UI, `rladmin`, or the REST API to update proxy certificates on a single cluster, multiple clusters, or all participating clusters. -1. Use the [`crdb-cli`]({{< relref "/operate/rs/7.8/references/cli-utilities/crdb-cli" >}}) utility to update Active-Active database configuration from the command line. Run the following command once for each Active-Active database residing on the modified clusters: +1. Use the [`crdb-cli`](/content/operate/rs/7.8/references/cli-utilities/crdb-cli/_index.md) utility to update Active-Active database configuration from the command line. Run the following command once for each Active-Active database residing on the modified clusters: ```sh crdb-cli crdb update --crdb-guid --force ``` -{{}} -- Perform step 2 as quickly as possible after performing step 1. Connections using the previous certificate are rejected after applying the new certificate. Until both steps are performed, recovery of the database sync cannot be established.
    -- Do not run any other `crdb-cli crdb update` operations between the two steps. -{{
    }} +> [!NOTE] +> - Perform step 2 as quickly as possible after performing step 1. Connections using the previous certificate are rejected after applying the new certificate. Until both steps are performed, recovery of the database sync cannot be established.
    +> - Do not run any other `crdb-cli crdb update` operations between the two steps. ### Update syncer certificates {#update-aa-syncer-certs} @@ -136,14 +131,13 @@ To update your syncer certificate on clusters running Active-Active databases, f 1. Update your syncer certificate on one or more of the participating clusters using the Cluster Manager UI, `rladmin`, or the REST API. You can update a single cluster, multiple clusters, or all participating clusters. -1. Update the Active-Active database configuration from the command line with the [`crdb-cli`]({{< relref "/operate/rs/7.8/references/cli-utilities/crdb-cli" >}}) utility. Run this command once for each Active-Active database that resides on the modified clusters: +1. Update the Active-Active database configuration from the command line with the [`crdb-cli`](/content/operate/rs/7.8/references/cli-utilities/crdb-cli/_index.md) utility. Run this command once for each Active-Active database that resides on the modified clusters: ```sh crdb-cli crdb update --crdb-guid --force ``` -{{}} -- Run step 2 as quickly as possible after step 1. Between the two steps, new syncer connections that use the ‘old’ certificate will get rejected by the cluster that has been updated with the new certificate (in step 1).
    -- Do not run any other `crdb-cli crdb update` operations between the two steps.
    -- **Known limitation**: Updating syncer certificate on versions prior to 6.0.20-81 will restart the proxy and syncer connections. In these cases, we recommend scheduling certificate replacement carefully to minimize customer impact. -{{
    }} +> [!NOTE] +> - Run step 2 as quickly as possible after step 1. Between the two steps, new syncer connections that use the ‘old’ certificate will get rejected by the cluster that has been updated with the new certificate (in step 1).
    +> - Do not run any other `crdb-cli crdb update` operations between the two steps.
    +> - **Known limitation**: Updating syncer certificate on versions prior to 6.0.20-81 will restart the proxy and syncer connections. In these cases, we recommend scheduling certificate replacement carefully to minimize customer impact. diff --git a/content/operate/rs/7.8/security/encryption/_index.md b/content/operate/rs/7.8/security/encryption/_index.md index 999b2df5be..00279b3536 100644 --- a/content/operate/rs/7.8/security/encryption/_index.md +++ b/content/operate/rs/7.8/security/encryption/_index.md @@ -19,7 +19,7 @@ Redis Enterprise Software uses encryption to secure communications between clust ### TLS -Redis Enterprise Software uses [Transport Layer Security (TLS)]({{}}) to encrypt communications for the following: +Redis Enterprise Software uses [Transport Layer Security (TLS)](/content/operate/rs/7.8/security/encryption/tls/_index.md) to encrypt communications for the following: - Cluster Manager UI @@ -29,23 +29,23 @@ Redis Enterprise Software uses [Transport Layer Security (TLS)]({{}}) for the following: +You can also [enable TLS authentication](/content/operate/rs/7.8/security/encryption/tls/enable-tls.md) for the following: - Communication from clients or applications to your database -- Communication from your database to other clusters for replication using [Replica Of]({{< relref "/operate/rs/7.8/databases/import-export/replica-of/" >}}) +- Communication from your database to other clusters for replication using [Replica Of](/content/operate/rs/7.8/databases/import-export/replica-of/_index.md) -- Communication to and from your database to other clusters for [Active-Active]({{< relref "/operate/rs/7.8/databases/active-active/_index.md" >}}) synchronization +- Communication to and from your database to other clusters for [Active-Active](/content/operate/rs/7.8/databases/active-active/_index.md) synchronization ### Internode encryption -[Internode encryption]({{}}) uses TLS to encrypt data in transit between cluster nodes. +[Internode encryption](/content/operate/rs/7.8/security/encryption/internode-encryption.md) uses TLS to encrypt data in transit between cluster nodes. -By default, internode encryption is enabled for the control plane, which manages the cluster and databases. If you also want to encrypt replication and proxy communications between database shards on different nodes, [enable data internode encryption]({{< relref "/operate/rs/7.8/security/encryption/internode-encryption#enable-data-internode-encryption" >}}). +By default, internode encryption is enabled for the control plane, which manages the cluster and databases. If you also want to encrypt replication and proxy communications between database shards on different nodes, [enable data internode encryption](/content/operate/rs/7.8/security/encryption/internode-encryption.md#enable-data-internode-encryption). ### Require HTTPS for REST API endpoints -By default, the Redis Enterprise Software API supports communication over HTTP and HTTPS. However, you can [turn off HTTP support]({{< relref "/operate/rs/7.8/references/rest-api/encryption" >}}) to ensure that API requests are encrypted. +By default, the Redis Enterprise Software API supports communication over HTTP and HTTPS. However, you can [turn off HTTP support](/content/operate/rs/7.8/references/rest-api/encryption.md) to ensure that API requests are encrypted. ## Encrypt data at rest @@ -55,7 +55,7 @@ To encrypt data stored on disk, use file system-based encryption capabilities av ### Private key encryption -Enable PEM encryption to [encrypt all private keys]({{< relref "/operate/rs/7.8/security/encryption/pem-encryption" >}}) on disk. +Enable PEM encryption to [encrypt all private keys](/content/operate/rs/7.8/security/encryption/pem-encryption.md) on disk. ## Encrypt data in use diff --git a/content/operate/rs/7.8/security/encryption/internode-encryption.md b/content/operate/rs/7.8/security/encryption/internode-encryption.md index 3bb398d34a..d72eb2b9c5 100644 --- a/content/operate/rs/7.8/security/encryption/internode-encryption.md +++ b/content/operate/rs/7.8/security/encryption/internode-encryption.md @@ -42,7 +42,7 @@ To enable internode encryption for a database (also called _data internode encry - Use the Cluster Manager UI to enable the **Internode Encryption** setting from the database **Security** screen. -- Use the `rladmin` command-line utility to set the [data_internode_encryption]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/tune#tune-db" >}}) setting for the database: +- Use the `rladmin` command-line utility to set the [data_internode_encryption](/content/operate/rs/7.8/references/cli-utilities/rladmin/tune.md#tune-db) setting for the database: ``` shell rladmin tune db data_internode_encryption enabled @@ -75,13 +75,13 @@ To enable internode encryption for new databases by default, use one of the foll 1. Select **Save**. -- [rladmin tune cluster]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/tune#tune-cluster" >}}): +- [rladmin tune cluster](/content/operate/rs/7.8/references/cli-utilities/rladmin/tune.md#tune-cluster): ```sh rladmin tune cluster data_internode_encryption enabled ``` -- [Update cluster policy]({{< relref "/operate/rs/7.8/references/rest-api/requests/cluster/policy#put-cluster-policy" >}}) REST API request: +- [Update cluster policy](/content/operate/rs/7.8/references/rest-api/requests/cluster/policy.md#put-cluster-policy) REST API request: ```sh PUT /v1/cluster/policy diff --git a/content/operate/rs/7.8/security/encryption/pem-encryption.md b/content/operate/rs/7.8/security/encryption/pem-encryption.md index cbe03c2cbc..a47cacad0e 100644 --- a/content/operate/rs/7.8/security/encryption/pem-encryption.md +++ b/content/operate/rs/7.8/security/encryption/pem-encryption.md @@ -18,16 +18,16 @@ When certificates are rotated, the encrypted private keys are also rotated. ## Enable PEM encryption -To enable PEM encryption and encrypt private keys on the disk, use [`rladmin`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin" >}}) or the [REST API]({{< relref "/operate/rs/7.8/references/rest-api" >}}). +To enable PEM encryption and encrypt private keys on the disk, use [`rladmin`](/content/operate/rs/7.8/references/cli-utilities/rladmin/_index.md) or the [REST API](/content/operate/rs/7.8/references/rest-api/_index.md). -- [`rladmin cluster config`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/cluster/config" >}}): +- [`rladmin cluster config`](/content/operate/rs/7.8/references/cli-utilities/rladmin/cluster/config.md): ```sh rladmin cluster config encrypt_pkeys enabled ``` -- [Update cluster settings]({{< relref "/operate/rs/7.8/references/rest-api/requests/cluster#put-cluster" >}}) REST API request: +- [Update cluster settings](/content/operate/rs/7.8/references/rest-api/requests/cluster/_index.md#put-cluster) REST API request: ```sh PUT /v1/cluster @@ -36,15 +36,15 @@ To enable PEM encryption and encrypt private keys on the disk, use [`rladmin`]({ ## Deactivate PEM encryption -To deactivate PEM encryption and decrypt private keys on the disk, use [`rladmin`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin" >}}) or the [REST API]({{< relref "/operate/rs/7.8/references/rest-api" >}}). +To deactivate PEM encryption and decrypt private keys on the disk, use [`rladmin`](/content/operate/rs/7.8/references/cli-utilities/rladmin/_index.md) or the [REST API](/content/operate/rs/7.8/references/rest-api/_index.md). -- [`rladmin cluster config`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/cluster/config" >}}): +- [`rladmin cluster config`](/content/operate/rs/7.8/references/cli-utilities/rladmin/cluster/config.md): ```sh rladmin cluster config encrypt_pkeys disabled ``` -- [Update cluster settings]({{< relref "/operate/rs/7.8/references/rest-api/requests/cluster#put-cluster" >}}) REST API request: +- [Update cluster settings](/content/operate/rs/7.8/references/rest-api/requests/cluster/_index.md#put-cluster) REST API request: ```sh PUT /v1/cluster diff --git a/content/operate/rs/7.8/security/encryption/tls/_index.md b/content/operate/rs/7.8/security/encryption/tls/_index.md index 76f23d8b43..58a06dcf2f 100644 --- a/content/operate/rs/7.8/security/encryption/tls/_index.md +++ b/content/operate/rs/7.8/security/encryption/tls/_index.md @@ -13,14 +13,14 @@ url: '/operate/rs/7.8/security/encryption/tls/' --- [Transport Layer Security (TLS)](https://en.wikipedia.org/wiki/Transport_Layer_Security), a successor to SSL, ensures the privacy of data sent between applications and Redis databases. TLS also secures connections between Redis Enterprise Software nodes. -You can [use TLS authentication]({{< relref "/operate/rs/7.8/security/encryption/tls/enable-tls" >}}) for the following types of communication: +You can [use TLS authentication](/content/operate/rs/7.8/security/encryption/tls/enable-tls.md) for the following types of communication: - Communication from clients (applications) to your database -- Communication from your database to other clusters for replication using [Replica Of]({{< relref "/operate/rs/7.8/databases/import-export/replica-of" >}}) -- Communication to and from your database to other clusters for synchronization using [Active-Active]({{< relref "/operate/rs/7.8/databases/active-active/" >}}) +- Communication from your database to other clusters for replication using [Replica Of](/content/operate/rs/7.8/databases/import-export/replica-of/_index.md) +- Communication to and from your database to other clusters for synchronization using [Active-Active](/content/operate/rs/7.8/databases/active-active/_index.md) ## Protocols and ciphers TLS protocols and ciphers define the overall suite of algorithms that clients are able to connect to the servers with. -You can change the [TLS protocols]({{< relref "/operate/rs/7.8/security/encryption/tls/tls-protocols" >}}) and [ciphers]({{< relref "/operate/rs/7.8/security/encryption/tls/ciphers" >}}) to improve the security of your Redis Enterprise cluster and databases. The default settings are in line with industry best practices, but you can customize them to match the security policy of your organization. +You can change the [TLS protocols](/content/operate/rs/7.8/security/encryption/tls/tls-protocols.md) and [ciphers](/content/operate/rs/7.8/security/encryption/tls/ciphers.md) to improve the security of your Redis Enterprise cluster and databases. The default settings are in line with industry best practices, but you can customize them to match the security policy of your organization. diff --git a/content/operate/rs/7.8/security/encryption/tls/ciphers.md b/content/operate/rs/7.8/security/encryption/tls/ciphers.md index 2fb537744a..f29e28c8ed 100644 --- a/content/operate/rs/7.8/security/encryption/tls/ciphers.md +++ b/content/operate/rs/7.8/security/encryption/tls/ciphers.md @@ -19,7 +19,7 @@ Ciphers are algorithms that help secure connections between clients and servers. |------------|--------------|-------------| | control_cipher_suites | ✅ Yes | Cipher list for TLS 1.2 communications for cluster administration (control plane) | | data_cipher_list | ✅ Yes | Cipher list for TLS 1.2 communications between applications and databases (data plane) | -| sentinel_cipher_suites | ✅ Yes | Cipher list for [discovery service]({{< relref "/operate/rs/7.8/databases/durability-ha/discovery-service" >}}) (Sentinel) TLS 1.2 communications | +| sentinel_cipher_suites | ✅ Yes | Cipher list for [discovery service](/content/operate/rs/7.8/databases/durability-ha/discovery-service.md) (Sentinel) TLS 1.2 communications | ## TLS 1.3 cipher suites @@ -27,26 +27,24 @@ Ciphers are algorithms that help secure connections between clients and servers. |------------|--------------|-------------| | control_cipher_suites_tls_1_3 | ❌ No | Cipher list for TLS 1.3 communications for cluster administration (control plane) | | data_cipher_suites_tls_1_3 | ✅ Yes | Cipher list for TLS 1.3 communications between applications and databases (data plane) | -| sentinel_cipher_suites_tls_1_3 | ❌ No | Cipher list for [discovery service]({{< relref "/operate/rs/7.8/databases/durability-ha/discovery-service" >}}) (Sentinel) TLS 1.3 communications | +| sentinel_cipher_suites_tls_1_3 | ❌ No | Cipher list for [discovery service](/content/operate/rs/7.8/databases/durability-ha/discovery-service.md) (Sentinel) TLS 1.3 communications | ## Configure cipher suites -You can configure ciphers with the [Cluster Manager UI](#edit-ciphers-ui), [`rladmin`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/cluster/config" >}}), or the [REST API]({{< relref "/operate/rs/7.8/references/rest-api/requests/cluster#put-cluster" >}}). +You can configure ciphers with the [Cluster Manager UI](#edit-ciphers-ui), [`rladmin`](/content/operate/rs/7.8/references/cli-utilities/rladmin/cluster/config.md), or the [REST API](/content/operate/rs/7.8/references/rest-api/requests/cluster/_index.md#put-cluster). -{{}} -Configuring cipher suites overwrites existing ciphers rather than appending new ciphers to the list. -{{}} +> [!WARNING] +> Configuring cipher suites overwrites existing ciphers rather than appending new ciphers to the list. When you modify your cipher suites, make sure: - The configured TLS version matches the required cipher suites. - The certificates in use are properly signed to support the required cipher suites. -{{}} -- Redis Enterprise Software doesn't support static [Diffie–Hellman (`DH`) key exchange](https://en.wikipedia.org/wiki/Diffie%E2%80%93Hellman_key_exchange) ciphers. - -- Support for Ephemeral Diffie–Hellman (ECDHE) key exchange ciphers depends on the operating system version and security policy. -{{}} +> [!NOTE] +> - Redis Enterprise Software doesn't support static [Diffie–Hellman (`DH`) key exchange](https://en.wikipedia.org/wiki/Diffie%E2%80%93Hellman_key_exchange) ciphers. +> +> - Support for Ephemeral Diffie–Hellman (ECDHE) key exchange ciphers depends on the operating system version and security policy. ### Edit cipher suites in the UI {#edit-ciphers-ui} @@ -70,7 +68,7 @@ As of Redis Enterprise Software version 6.0.12, control plane cipher suites can #### Configure TLS 1.2 control plane cipher suites -To configure TLS 1.2 cipher suites for cluster communication, use the following [`rladmin`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin" >}}) command syntax: +To configure TLS 1.2 cipher suites for cluster communication, use the following [`rladmin`](/content/operate/rs/7.8/references/cli-utilities/rladmin/_index.md) command syntax: ```sh rladmin cluster config control_cipher_suites @@ -81,9 +79,8 @@ See the example below to configure cipher suites for the control plane: ```sh rladmin cluster config control_cipher_suites ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305 ``` -{{}} -- The deprecated 3DES and RC4 cipher suites are no longer supported. -{{}} +> [!NOTE] +> - The deprecated 3DES and RC4 cipher suites are no longer supported. ### Data plane cipher suites {#data-plane-ciphers-tls-1-2} @@ -92,7 +89,7 @@ Data plane cipher suites use the OpenSSL library format in Redis Enterprise Soft #### Configure TLS 1.2 data plane cipher suites -To configure TLS 1.2 cipher suites for communications between applications and databases, use the following [`rladmin`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin" >}}) command syntax: +To configure TLS 1.2 cipher suites for communications between applications and databases, use the following [`rladmin`](/content/operate/rs/7.8/references/cli-utilities/rladmin/_index.md) command syntax: ```sh rladmin cluster config data_cipher_list @@ -103,13 +100,12 @@ See the example below to configure cipher suites for the data plane: ```sh rladmin cluster config data_cipher_list AES128-SHA:AES256-SHA ``` -{{}} -- The deprecated 3DES and RC4 cipher suites are no longer supported. -{{}} +> [!NOTE] +> - The deprecated 3DES and RC4 cipher suites are no longer supported. #### Configure TLS 1.3 data plane cipher suites -To configure TLS 1.3 cipher suites for communications between applications and databases, use the following [`rladmin`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin" >}}) command syntax: +To configure TLS 1.3 cipher suites for communications between applications and databases, use the following [`rladmin`](/content/operate/rs/7.8/references/cli-utilities/rladmin/_index.md) command syntax: ```sh rladmin cluster config data_cipher_suites_tls_1_3 @@ -123,11 +119,11 @@ rladmin cluster config data_cipher_suites_tls_1_3 TLS_AES_256_GCM_SHA384:TLS_CHA ### Discovery service cipher suites {#discovery-service-ciphers-tls-1-2} -Sentinel service cipher suites use the golang.org OpenSSL format for [discovery service]({{< relref "/operate/rs/7.8/databases/durability-ha/discovery-service" >}}) TLS connections in Redis Enterprise Software version 6.0.20 or later. See their documentation for a list of [available configurations](https://golang.org/src/crypto/tls/cipher_suites.go). +Sentinel service cipher suites use the golang.org OpenSSL format for [discovery service](/content/operate/rs/7.8/databases/durability-ha/discovery-service.md) TLS connections in Redis Enterprise Software version 6.0.20 or later. See their documentation for a list of [available configurations](https://golang.org/src/crypto/tls/cipher_suites.go). #### Configure TLS 1.2 discovery service cipher suites -To configure TLS 1.2 cipher suites for the discovery service cipher suites, use the following [`rladmin`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin" >}}) command syntax: +To configure TLS 1.2 cipher suites for the discovery service cipher suites, use the following [`rladmin`](/content/operate/rs/7.8/references/cli-utilities/rladmin/_index.md) command syntax: ```sh rladmin cluster config sentinel_cipher_suites diff --git a/content/operate/rs/7.8/security/encryption/tls/enable-tls.md b/content/operate/rs/7.8/security/encryption/tls/enable-tls.md index e18d03a902..e67e6bb183 100644 --- a/content/operate/rs/7.8/security/encryption/tls/enable-tls.md +++ b/content/operate/rs/7.8/security/encryption/tls/enable-tls.md @@ -14,12 +14,11 @@ url: '/operate/rs/7.8/security/encryption/tls/enable-tls/' You can use TLS authentication for one or more of the following types of communication: - Communication from clients (applications) to your database -- Communication from your database to other clusters for replication using [Replica Of]({{< relref "/operate/rs/7.8/databases/import-export/replica-of/" >}}) -- Communication to and from your database to other clusters for synchronization using [Active-Active]({{< relref "/operate/rs/7.8/databases/active-active/_index.md" >}}) +- Communication from your database to other clusters for replication using [Replica Of](/content/operate/rs/7.8/databases/import-export/replica-of/_index.md) +- Communication to and from your database to other clusters for synchronization using [Active-Active](/content/operate/rs/7.8/databases/active-active/_index.md) -{{}} -When you enable or turn off TLS, the change applies to new connections but does not affect existing connections. You must update TLS parameters in the client's connection configuration, then clients must close existing connections and reconnect to apply the change. -{{}} +> [!NOTE] +> When you enable or turn off TLS, the change applies to new connections but does not affect existing connections. You must update TLS parameters in the client's connection configuration, then clients must close existing connections and reconnect to apply the change. ## Enable TLS for client connections {#client} @@ -72,13 +71,13 @@ Optionally, you can enable mutual TLS for client connections: {{An example that shows adding a certificate validation with multiple organizational units.}} - **Breaking change:** If you use the [REST API]({{< relref "/operate/rs/7.8/references/rest-api" >}}) instead of the Cluster Manager UI to configure additional certificate validations, note that `authorized_names` is deprecated as of Redis Enterprise v6.4.2. Use `authorized_subjects` instead. See the [BDB object reference]({{< relref "/operate/rs/7.8/references/rest-api/objects/bdb" >}}) for more details. + **Breaking change:** If you use the [REST API](/content/operate/rs/7.8/references/rest-api/_index.md) instead of the Cluster Manager UI to configure additional certificate validations, note that `authorized_names` is deprecated as of Redis Enterprise v6.4.2. Use `authorized_subjects` instead. See the [BDB object reference](/content/operate/rs/7.8/references/rest-api/objects/bdb/_index.md) for more details. 1. Select **Save**. ### Validate client certificate expiration -By default, Redis Enterprise Software validates client certificate expiration dates. You can use [`rladmin tune db`]({{}}) to turn off this behavior. +By default, Redis Enterprise Software validates client certificate expiration dates. You can use [`rladmin tune db`](/content/operate/rs/7.8/references/cli-utilities/rladmin/tune.md#tune-db) to turn off this behavior. ```sh rladmin tune db < db:id | name > mtls_allow_outdated_certs { enabled | disabled } @@ -86,7 +85,7 @@ rladmin tune db < db:id | name > mtls_allow_outdated_certs { enabled | disabled ### Connect over TLS -To connect to a Redis Enterprise Software database over TLS using [`redis-cli`]({{}}): +To connect to a Redis Enterprise Software database over TLS using [`redis-cli`](/content/operate/rs/7.8/references/cli-utilities/redis-cli/_index.md): 1. Download or copy the server (or proxy) certificate from the Cluster Manager UI (**Cluster > Security > Certificates > Server authentication**) or from a cluster node (`/etc/opt/redislabs/proxy_cert.pem`). @@ -107,15 +106,15 @@ To connect to a Redis Enterprise Software database over TLS using [`redis-cli`]( ## Enable TLS for Active-Active cluster connections -You can enable TLS for Active-Active cluster connections when you create a database using the Cluster Manager UI, [`crdb-cli`]({{}}), or the [REST API]({{}}). +You can enable TLS for Active-Active cluster connections when you create a database using the Cluster Manager UI, [`crdb-cli`](/content/operate/rs/7.8/references/cli-utilities/crdb-cli/_index.md), or the [REST API](/content/operate/rs/7.8/references/rest-api/_index.md). -If you need to enable or turn off TLS after the Active-Active database is created, you must use [`crdb-cli`]({{}}) or the [REST API]({{}}). +If you need to enable or turn off TLS after the Active-Active database is created, you must use [`crdb-cli`](/content/operate/rs/7.8/references/cli-utilities/crdb-cli/_index.md) or the [REST API](/content/operate/rs/7.8/references/rest-api/_index.md). ### Enable TLS during database creation To enable TLS for Active-Active cluster connections using the Cluster Manager UI: -1. During [database creation]({{}}), expand the **TLS** configuration section. +1. During [database creation](/content/operate/rs/7.8/databases/active-active/create.md), expand the **TLS** configuration section. 1. Select **On** to enable TLS. @@ -133,7 +132,7 @@ You can enable TLS for an existing Active-Active database using either `crdb-cli tab1="CLI" tab2="REST API" >}} -Run the following [`crdb-cli crdb update`]({{}}) command: +Run the following [`crdb-cli crdb update`](/content/operate/rs/7.8/references/cli-utilities/crdb-cli/crdb/update.md) command: ```sh crdb-cli crdb update --crdb-guid --encryption true @@ -143,7 +142,7 @@ Replace `` with your Active-Active database's globally unique identifier. -tab-sep- -You can use an [update database configuration]({{}}) request to enable TLS. +You can use an [update database configuration](/content/operate/rs/7.8/references/rest-api/requests/bdbs/_index.md#put-bdbs) request to enable TLS. To enable TLS for Active-Active database communications only: diff --git a/content/operate/rs/7.8/security/encryption/tls/tls-protocols.md b/content/operate/rs/7.8/security/encryption/tls/tls-protocols.md index 2c9165f30e..db2f766447 100644 --- a/content/operate/rs/7.8/security/encryption/tls/tls-protocols.md +++ b/content/operate/rs/7.8/security/encryption/tls/tls-protocols.md @@ -19,23 +19,21 @@ The communications for which you can modify TLS protocols are: - Control plane - The TLS configuration for cluster administration. - Data plane - The TLS configuration for the communication between applications and databases. -- Discovery service (Sentinel) - The TLS configuration for the [discovery service]({{< relref "/operate/rs/7.8/databases/durability-ha/discovery-service.md" >}}). +- Discovery service (Sentinel) - The TLS configuration for the [discovery service](/content/operate/rs/7.8/databases/durability-ha/discovery-service.md). -You can configure TLS protocols with the [Cluster Manager UI](#edit-tls-ui), [`rladmin`]({{< relref "/operate/rs/7.8/references/cli-utilities/rladmin/cluster/config" >}}), or the [REST API]({{< relref "/operate/rs/7.8/references/rest-api/requests/cluster#put-cluster" >}}). +You can configure TLS protocols with the [Cluster Manager UI](#edit-tls-ui), [`rladmin`](/content/operate/rs/7.8/references/cli-utilities/rladmin/cluster/config.md), or the [REST API](/content/operate/rs/7.8/references/rest-api/requests/cluster/_index.md#put-cluster). -{{}} -- After you set the minimum TLS version, Redis Enterprise Software does not accept communications with TLS versions older than the specified version. - -- If you set TLS 1.3 as the minimum TLS version, clients must support TLS 1.3 to connect to Redis Enterprise. -{{}} +> [!WARNING] +> - After you set the minimum TLS version, Redis Enterprise Software does not accept communications with TLS versions older than the specified version. +> +> - If you set TLS 1.3 as the minimum TLS version, clients must support TLS 1.3 to connect to Redis Enterprise. TLS support depends on the operating system. You cannot enable support for protocols or versions that aren't supported by the operating system running Redis Enterprise Software. In addition, updates to the operating system or to Redis Enterprise Software can impact protocol and version support. If you have trouble enabling specific versions of TLS, verify that they're supported by your operating system and that they're configured correctly. -{{}} -TLSv1.2 is generally recommended as the minimum TLS version for encrypted communications. Check with your security team to confirm which TLS protocols meet your organization's policies. -{{}} +> [!NOTE] +> TLSv1.2 is generally recommended as the minimum TLS version for encrypted communications. Check with your security team to confirm which TLS protocols meet your organization's policies. ### Edit TLS settings in the UI {#edit-tls-ui} diff --git a/content/operate/rs/7.8/security/recommended-security-practices.md b/content/operate/rs/7.8/security/recommended-security-practices.md index 4337a971bb..6dad130fd0 100644 --- a/content/operate/rs/7.8/security/recommended-security-practices.md +++ b/content/operate/rs/7.8/security/recommended-security-practices.md @@ -22,9 +22,9 @@ When deploying Redis Enterprise Software to production, we recommend the followi If you are replacing your existing antivirus solution or installing/supporting Redis Enterprise, make sure that the below paths are excluded: - {{< note >}} -For antivirus solutions that intercept processes, binary files may have to be excluded directly depending on the requirements of your anti-virus vendor. - {{< /note >}} + > [!NOTE] + > For antivirus solutions that intercept processes, binary files may have to be excluded directly depending on the requirements of your anti-virus vendor. + > | **Path** | **Description** | |------------|-----------------| @@ -34,7 +34,7 @@ For antivirus solutions that intercept processes, binary files may have to be ex | /opt/redislabs/lib | System library files | | /opt/redislabs/sbin | System binaries for tweaking provisioning | -- **Send logs to a remote logging server**: Redis Enterprise is configured to send logs by default to syslog. To send these logs to a remote logging server you must [configure syslog]({{}}) based the requirements of the remote logging server vendor. Remote logging helps ensure that the logs are not deleted so that you can rotate the logs to prevent your server disk from filling up. +- **Send logs to a remote logging server**: Redis Enterprise is configured to send logs by default to syslog. To send these logs to a remote logging server you must [configure syslog](/content/operate/rs/7.8/clusters/logging/log-security.md) based the requirements of the remote logging server vendor. Remote logging helps ensure that the logs are not deleted so that you can rotate the logs to prevent your server disk from filling up. - **Deploy clusters with an odd number of 3 or more nodes**: Redis is an available and partition-tolerant database. We recommend that Redis Enterprise be deployed in a cluster of an odd number of 3 or more nodes so that you are able to successfully failover in the event of a failure. @@ -44,11 +44,11 @@ For antivirus solutions that intercept processes, binary files may have to be ex ## Cluster security -- **Control the level of access to your system**: Redis Enterprise lets you decide which users can access the cluster, which users can access databases, and which users can access both. We recommend preventing database users from accessing the cluster. See [Access control]({{}}) for more information. +- **Control the level of access to your system**: Redis Enterprise lets you decide which users can access the cluster, which users can access databases, and which users can access both. We recommend preventing database users from accessing the cluster. See [Access control](/content/operate/rs/7.8/security/access-control/_index.md) for more information. - **Enable LDAP authentication**: If your organization uses the Lightweight Directory Access Protocol (LDAP), we recommend enabling Redis Enterprise Software support for role-based LDAP authentication. -- **Require HTTPS for API endpoints**: Redis Enterprise comes with a REST API to help automate tasks. This API is available in both an encrypted and unencrypted endpoint for backward compatibility. You can [disable the unencrypted endpoint]({{}}) with no loss in functionality. +- **Require HTTPS for API endpoints**: Redis Enterprise comes with a REST API to help automate tasks. This API is available in both an encrypted and unencrypted endpoint for backward compatibility. You can [disable the unencrypted endpoint](/content/operate/rs/7.8/references/rest-api/encryption.md#require-https-for-api-endpoints) with no loss in functionality. ## Database security @@ -56,12 +56,12 @@ Redis Enterprise offers several database security controls to help protect your - **Use strong Redis passwords**: A frequent recommendation in the security industry is to use strong passwords to authenticate users. This helps to prevent brute force password guessing attacks against your database. Its important to check that your password aligns with your organizations security policy. -- **Deactivate default user access**: Redis Enterprise comes with a "default" user for backwards compatibility with applications designed with versions of Redis prior to Redis Enterprise 6. The default user is turned on by default. This allows you to access the database without specifying a username and only using a shared secret. For applications designed to use access control lists, we recommend that you [deactivate default user access]({{}}). +- **Deactivate default user access**: Redis Enterprise comes with a "default" user for backwards compatibility with applications designed with versions of Redis prior to Redis Enterprise 6. The default user is turned on by default. This allows you to access the database without specifying a username and only using a shared secret. For applications designed to use access control lists, we recommend that you [deactivate default user access](/content/operate/rs/7.8/security/access-control/manage-users/default-user.md#deactivate-default-user). -- **Configure Transport Layer Security (TLS)**: Similar to the control plane, you can also [configure TLS protocols]({{}}) to help support your security and compliance needs. +- **Configure Transport Layer Security (TLS)**: Similar to the control plane, you can also [configure TLS protocols](/content/operate/rs/7.8/security/encryption/tls/tls-protocols.md) to help support your security and compliance needs. -- **Enable client certificate authentication**: To prevent unauthorized access to your data, Redis Enterprise databases support the [TLS protocol]({{}}), which includes authentication and encryption. Client certificate authentication can be used to ensure only authorized hosts can access the database. +- **Enable client certificate authentication**: To prevent unauthorized access to your data, Redis Enterprise databases support the [TLS protocol](/content/operate/rs/7.8/security/encryption/tls/_index.md#client-certificate-authentication), which includes authentication and encryption. Client certificate authentication can be used to ensure only authorized hosts can access the database. -- **Install trusted certificates**: Redis implements self-signed certificates for the database proxy and replication service, but many organizations prefer to [use their own certificates]({{}}). +- **Install trusted certificates**: Redis implements self-signed certificates for the database proxy and replication service, but many organizations prefer to [use their own certificates](/content/operate/rs/7.8/security/certificates/create-certificates.md). -- **Configure and verify database backups**: Implementing a disaster recovery strategy is an important part of data security. Redis Enterprise supports [database backups to many destinations]({{}}). +- **Configure and verify database backups**: Implementing a disaster recovery strategy is an important part of data security. Redis Enterprise supports [database backups to many destinations](/content/operate/rs/7.8/databases/import-export/schedule-backups.md). From b2f1d533e3395c9fc12b644120ec6557c97b64dc Mon Sep 17 00:00:00 2001 From: Andy Stark Date: Thu, 24 Sep 2026 11:15:22 +0100 Subject: [PATCH 2/2] DOC-7104: Address review -- canonical /commands links, dead-link prefix, malformed anchor (same as #4095) Co-Authored-By: Claude Sonnet 5 --- content/operate/rs/7.8/_index.md | 2 +- .../operate/rs/7.8/databases/import-export/flush.md | 2 +- .../operate/rs/7.8/new-features-redis-enterprise.md | 12 ++++++------ .../security/access-control/redis-acl-overview.md | 2 +- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/content/operate/rs/7.8/_index.md b/content/operate/rs/7.8/_index.md index 8157a57f80..8cc9b33832 100644 --- a/content/operate/rs/7.8/_index.md +++ b/content/operate/rs/7.8/_index.md @@ -56,7 +56,7 @@ Create and manage a [Redis database](/content/operate/rs/7.8/databases/_index.md Use command-line utilities and the REST API to manage the cluster and databases. - [rladmin](/content/operate/rs/7.8/references/cli-utilities/rladmin/_index.md), [crdb-cli](/content/operate/rs/7.8/references/cli-utilities/crdb-cli/_index.md), & [other utilities](/content/operate/rs/7.8/references/cli-utilities/_index.md) - [REST API reference](/content/operate/rs/7.8/references/rest-api/_index.md) & [examples](/content/operate/rs/7.8/references/rest-api/quick-start.md) -- [Redis commands](/commands) +- [Redis commands](/content/commands) ## Archive diff --git a/content/operate/rs/7.8/databases/import-export/flush.md b/content/operate/rs/7.8/databases/import-export/flush.md index bbcf78f542..193707327f 100644 --- a/content/operate/rs/7.8/databases/import-export/flush.md +++ b/content/operate/rs/7.8/databases/import-export/flush.md @@ -38,7 +38,7 @@ redis-cli -h redis-12345.cluster.local -p 9443 -a xyz flushall ``` > [!NOTE] -> Port 9443 is the default [port configuration](/content/operate/rs/7.8/networking/port-configurations.md#https://docs.redis.com/latest/rs/networking/port-configurations#ports-and-port-ranges-used-by-redis-enterprise-software). +> Port 9443 is the default [port configuration](/content/operate/rs/7.8/networking/port-configurations.md#ports-and-port-ranges-used-by-redis-enterprise-software). ## Flush data from an Active-Active database diff --git a/content/operate/rs/7.8/new-features-redis-enterprise.md b/content/operate/rs/7.8/new-features-redis-enterprise.md index 02bea0ecb6..0aca9b1c70 100644 --- a/content/operate/rs/7.8/new-features-redis-enterprise.md +++ b/content/operate/rs/7.8/new-features-redis-enterprise.md @@ -27,7 +27,7 @@ provide smart and automatic conflict resolution based on the data type's intent. For more information, go here. For information, go to [Developing with -Active-Active databases](/operate/rs/7.8/developing/crdbs). +Active-Active databases](/content/operate/rs/7.8/developing/crdbs). ## Redis modules @@ -41,17 +41,17 @@ Enterprise is known for. Redis developed and certified these modules for use with Redis Enterprise Software: -- [RedisBloom](/operate/modules/redisbloom) +- [RedisBloom](/content/operate/modules/redisbloom) - Enables Redis to have a scalable bloom filter as a data type. Bloom filters are probabilistic data structures that quickly determine if something is contained within a set. - RedisGraph - RedisGraph is the first queryable Property Graph database to use sparse matrices to represent the adjacency matrix in graphs and linear algebra to query the graph. RedisGraph uses [Cypher](https://www.opencypher.org/) as its query language. -- [RedisJSON](/operate/modules/redisjson) +- [RedisJSON](/content/operate/modules/redisjson) - Now you have the convenience JSON as a built-in data type and easily able to address nested data via a path. -- [RediSearch](/operate/modules/redisearch) +- [RediSearch](/content/operate/modules/redisearch) - This module turns Redis into a distributed in-memory full-text indexing and search beast. @@ -70,7 +70,7 @@ easily and quickly test several containers to build the scalable and highly available cluster Redis Enterprise Software is famous for. For more information go to [quick start with Redis Enterprise Software -on Docker.](/operate/rs/7.8/installing-upgrading/get-started-docker.md) +on Docker.](/content/operate/rs/7.8/installing-upgrading/get-started-docker.md) ## LDAP integration @@ -81,4 +81,4 @@ accounts can be used for administering resources on the cluster via command line, Rest API, or admin console. For more information see [LDAP -Integration](/operate/rs/7.8/security/passwords-users-roles.md#setting-up-ldap). +Integration](/content/operate/rs/7.8/security/passwords-users-roles.md#setting-up-ldap). diff --git a/content/operate/rs/7.8/security/access-control/redis-acl-overview.md b/content/operate/rs/7.8/security/access-control/redis-acl-overview.md index f2ffd7a9cc..05795ba881 100644 --- a/content/operate/rs/7.8/security/access-control/redis-acl-overview.md +++ b/content/operate/rs/7.8/security/access-control/redis-acl-overview.md @@ -23,7 +23,7 @@ Redis ACLs are defined by a [Redis syntax](/content/operate/oss_and_stack/manage ### Commands and categories -Redis ACL rules can allow or block specific [Redis commands](/commands) or [command categories](/content/operate/oss_and_stack/management/security/acl.md#command-categories). +Redis ACL rules can allow or block specific [Redis commands](/content/commands) or [command categories](/content/operate/oss_and_stack/management/security/acl.md#command-categories). - `+` includes commands