diff --git a/content/embeds/rs-prometheus-metrics-v2.md b/content/embeds/rs-prometheus-metrics-v2.md index 2121cd245f..ff05a885dc 100644 --- a/content/embeds/rs-prometheus-metrics-v2.md +++ b/content/embeds/rs-prometheus-metrics-v2.md @@ -2,6 +2,7 @@ | Metric | Type | Description | | :-------- | :--- | :---------- | +| endpoint_accepted_connections | counter | Number of incoming accepted client connections | | endpoint_client_connections | counter | Number of client connection establishment events | | endpoint_client_disconnections | counter | Number of client disconnections initiated by the client | | endpoint_client_connection_expired | counter | Total number of client connections with expired TTL (Time To Live) | @@ -9,9 +10,11 @@ | endpoint_client_expiration_refresh | counter | Number of expiration time changes of clients | | endpoint_client_tracking_off_requests | counter | Total number of `CLIENT TRACKING OFF` requests | | endpoint_client_tracking_on_requests | counter | Total number of `CLIENT TRACKING ON` requests | +| endpoint_connections_rate | gauge | The rate of incoming connections. Computed as `n_accepted / N` for the last interval where `n_accepted` is the number of accepted connections in this interval, and `N` is the interval in seconds. | | endpoint_disconnected_cba_client | counter | Number of certificate-based clients disconnected | | endpoint_disconnected_ldap_client | counter | Number of LDAP clients disconnected | | endpoint_disconnected_user_password_client | counter | Number of user&password clients disconnected | +| endpoint_dispatch_failures | counter | Number of clients closed due to failure to be dispatched to workers | | endpoint_disposed_commands_after_client_caching | counter | Total number of client caching commands that were disposed due to misuse | | endpoint_egress | counter | Number of egress bytes | | endpoint_egress_pending | counter | Number of send-pending bytes | @@ -26,6 +29,8 @@ | endpoint_other_requests_latency_histogram_bucket | histogram | Latency histograms for commands other than read or write commands. Can be used to represent different latency percentiles.
p99.9 example:
`histogram_quantile(0.999, sum(rate(endpoint_other_requests_latency_histogram_bucket{cluster="$cluster", db="$db"}[$__rate_interval]) ) by (le, db))` | | endpoint_other_responses | counter | Number of other responses | | endpoint_proxy_disconnections | counter | Number of client disconnections initiated by the proxy | +| endpoint_rate_limit_ok | gauge | Rate limit status based on the last 2 intervals.
0 = rate limit was recently exceeded
1 = rate limit was not recently exceeded | +| endpoint_rate_limit_overflows | counter | Total number of rate limit overflows | | endpoint_read_requests | counter | Number of read requests | | endpoint_read_requests_latency_histogram | histogram | Latency (in µs) histogram of read commands | | endpoint_read_requests_latency_histogram_bucket | histogram | Latency histograms for read commands. Can be used to represent different latency percentiles.
p99.9 example:
`histogram_quantile(0.999, sum(rate(endpoint_read_requests_latency_histogram_bucket{cluster="$cluster", db="$db"}[$__rate_interval]) ) by (le, db))` | @@ -37,9 +42,6 @@ | endpoint_write_requests_latency_histogram | histogram | Latency (in µs) histogram of write commands | | endpoint_write_requests_latency_histogram_bucket | histogram | Latency histograms for write commands. Can be used to represent different latency percentiles.
p99.9 example:
`histogram_quantile(0.999, sum(rate(endpoint_write_requests_latency_histogram_bucket{cluster="$cluster", db="$db"}[$__rate_interval]) ) by (le, db))` | | endpoint_write_responses | counter | Number of write responses | -| proxy_connections_rate | gauge | The rate of incoming connections. Computed as `n_accepted / N` for the last interval where `n_accepted` is the number of accepted connections in this interval, and `N` is the interval in seconds. | -| proxy_rate_limit_ok | gauge | Rate limit status based on the last 2 intervals.
0 = rate limit was recently exceeded
1 = rate limit was not recently exceeded | -| proxy_rate_limit_overflows | counter | Total number of rate limit overflows | ## Node metrics @@ -76,6 +78,7 @@ | total_node_count{cluster_wd=} | gauge| Number of nodes | | total_primary_selection_ended{cluster_wd=} | counter | Monotonic counter for each selection process that ended | | total_primary_selections{cluster_wd=} | counter | Monotonic counter for each selection process that started| +| users_count | gauge | Current number of users on the cluster | ## Replication metrics diff --git a/content/embeds/rs-upgrade-paths.md b/content/embeds/rs-upgrade-paths.md index 26d10e922a..120cc05aca 100644 --- a/content/embeds/rs-upgrade-paths.md +++ b/content/embeds/rs-upgrade-paths.md @@ -4,12 +4,13 @@ :x: Not supported – You cannot upgrade directly from the current Redis Software cluster version. You must first upgrade to a supported intermediate version. -| Current Redis Software cluster version | Upgrade to Redis Software 6.2.x | Upgrade to Redis Software 6.4.x | Upgrade to Redis Software 7.2.x | Upgrade to Redis Software 7.4.x | Upgrade to Redis Software 7.8.x | Upgrade to Redis Software 7.22.x | +| Current Redis Software cluster version | Upgrade to Redis Software 6.4.x | Upgrade to Redis Software 7.2.x | Upgrade to Redis Software 7.4.x | Upgrade to Redis Software 7.8.x | Upgrade to Redis Software 7.22.x | Upgrade to Redis Software 8.0.x | |:-----------------------:|:----------------:|:----------------:|:----------------:|:----------------:|:----------------:|:----------------:| -| 6.0.x | | | | :x: | :x: | :x: | -| 6.2.4
6.2.8 | | | | | :x: | :x: | -| 6.2.10
6.2.12
6.2.18 | | | | | | :x: | -| 6.4.x | – | | | | | | -| 7.2.x | – | – | | | | | -| 7.4.x | – | – | – | | | | -| 7.8.x | – | – | – | – | | | +| 6.0.x | | | :x: | :x: | :x: | :x: | +| 6.2.4
6.2.8 | | | | :x: | :x: | :x: | +| 6.2.10
6.2.12
6.2.18 | | | | | :x: | :x: | +| 6.4.x | | | | | | | +| 7.2.x | – | | | | | | +| 7.4.x | – | – | | | | | +| 7.8.x | – | – | – | | | | +| 7.22.x | – | – | – | – | | | diff --git a/content/embeds/supported-platforms-embed.md b/content/embeds/supported-platforms-embed.md index 5dee18bb4b..ec6938aa50 100644 --- a/content/embeds/supported-platforms-embed.md +++ b/content/embeds/supported-platforms-embed.md @@ -7,23 +7,23 @@ Redis Enterprise Software is supported on several operating systems, cloud envi :warning: Deprecation warning – The platform is still supported for this version of Redis Enterprise Software, but support will be removed in a future release. -| Redis Software
major versions | 7.22 | 7.8 | 7.4 | 7.2 | 6.4 | 6.2 | -|---------------------------------|:-----:|:-----:|:-----:|:-----:|:-----:|:-----:| -| **Release date** | May 2025 | Nov 2024 | Feb 2024 | Aug 2023 | Feb 2023 | Aug 2021 | -| [**End-of-life date**]({{< relref "/operate/rs/installing-upgrading/product-lifecycle#endoflife-schedule" >}}) | Determined after
next major release | May 2027 | Nov 2026 | Feb 2026 | Aug 2025 | Feb 2025 | -| **Platforms** | | | | | | | -| RHEL 9 &
compatible distros[1](#table-note-1) | | | | – | – | – | -| RHEL 9
FIPS mode[5](#table-note-5) | | | – | – | – | – | -| RHEL 8 &
compatible distros[1](#table-note-1) | | | | | | | -| RHEL 7 &
compatible distros[1](#table-note-1) | – | – | – | :warning: | | | -| Ubuntu 22.04[2](#table-note-2) | | | – | – | – | – | -| Ubuntu 20.04[2](#table-note-2) | | | | | | – | -| Ubuntu 18.04[2](#table-note-2) | – | – | :warning: | :warning: | | | -| Ubuntu 16.04[2](#table-note-2) | – | – | – | :warning: | | | -| Amazon Linux 2 | | | | | | – | -| Amazon Linux 1 | – | – | – | | | | -| Kubernetes[3](#table-note-3) | | | | | | | -| Docker[4](#table-note-4) | | | | | | | +| Redis Software
major versions | 8.0 | 7.22 | 7.8 | 7.4 | 7.2 | 6.4 | 6.2 | +|---------------------------------|:-----:|:-----:|:-----:|:-----:|:-----:|:-----:|:-----:| +| **Release date** | Oct 2025 | May 2025 | Nov 2024 | Feb 2024 | Aug 2023 | Feb 2023 | Aug 2021 | +| [**End-of-life date**]({{< relref "/operate/rs/installing-upgrading/product-lifecycle#endoflife-schedule" >}}) | Determined after
next major release | Oct 2027 | May 2027 | Nov 2026 | Feb 2026 | Aug 2025 | Feb 2025 | +| **Platforms** | | | | | | | | +| RHEL 9 &
compatible distros[1](#table-note-1) | | | | | – | – | – | +| RHEL 9
FIPS mode[5](#table-note-5) | | | | – | – | – | – | +| RHEL 8 &
compatible distros[1](#table-note-1) | | | | | | | | +| RHEL 7 &
compatible distros[1](#table-note-1) | – | – | – | – | :warning: | | | +| Ubuntu 22.04[2](#table-note-2) | | | | – | – | – | – | +| Ubuntu 20.04[2](#table-note-2) | | | | | | | – | +| Ubuntu 18.04[2](#table-note-2) | – | – | – | :warning: | :warning: | | | +| Ubuntu 16.04[2](#table-note-2) | – | – | – | – | :warning: | | | +| Amazon Linux 2 | | | | | | | – | +| Amazon Linux 1 | – | – | – | – | | | | +| Kubernetes[3](#table-note-3) | | | | | | | | +| Docker[4](#table-note-4) | | | | | | | | 1. The RHEL-compatible distributions CentOS, CentOS Stream, Alma, and Rocky are supported if they have full RHEL compatibility. Oracle Linux running the Red Hat Compatible Kernel (RHCK) is supported, but the Unbreakable Enterprise Kernel (UEK) is not supported. diff --git a/content/integrate/prometheus-with-redis-enterprise/prometheus-metrics-definitions.md b/content/integrate/prometheus-with-redis-enterprise/prometheus-metrics-definitions.md index 1cf3fb5bb4..94ad91ced7 100644 --- a/content/integrate/prometheus-with-redis-enterprise/prometheus-metrics-definitions.md +++ b/content/integrate/prometheus-with-redis-enterprise/prometheus-metrics-definitions.md @@ -1,5 +1,5 @@ --- -Title: Prometheus metrics v2 preview +Title: Prometheus metrics v2 alwaysopen: false categories: - docs @@ -14,10 +14,6 @@ weight: 50 tocEmbedHeaders: true --- -{{}} -While the metrics stream engine is in preview, this document provides only a partial list of v2 metrics. More metrics will be added. -{{}} - You can [integrate Redis Enterprise Software with Prometheus and Grafana]({{}}) to create dashboards for important metrics. The v2 metrics in the following tables are available as of Redis Enterprise Software version 7.8.0. For help transitioning from v1 metrics to v2 PromQL, see [Prometheus v1 metrics and equivalent v2 PromQL]({{}}). diff --git a/content/operate/oss_and_stack/stack-with-enterprise/enterprise-capabilities.md b/content/operate/oss_and_stack/stack-with-enterprise/enterprise-capabilities.md index e6f7b1c290..c0071191ee 100644 --- a/content/operate/oss_and_stack/stack-with-enterprise/enterprise-capabilities.md +++ b/content/operate/oss_and_stack/stack-with-enterprise/enterprise-capabilities.md @@ -56,7 +56,7 @@ For details about individual features, see the corresponding documentation. [^2]: RediSearch version 1.6 supported Replica Of only between databases with the same number of shards. This limitation was fixed in v2.0. -[^3]: You cannot use search and query with the [OSS Cluster API]({{< relref "/operate/rs/databases/configure/oss-cluster-api" >}}). +[^3]: You cannot use search and query with the [OSS Cluster API]({{< relref "/operate/rs/databases/configure/oss-cluster-api" >}}). This limitation was fixed in Redis Enterprise Software version 8.0. [^4]: You currently cannot combine Auto Tiering with Redis Open Source features in Redis Cloud. diff --git a/content/operate/oss_and_stack/stack-with-enterprise/search/_index.md b/content/operate/oss_and_stack/stack-with-enterprise/search/_index.md index 48bfe57b22..774649f45c 100644 --- a/content/operate/oss_and_stack/stack-with-enterprise/search/_index.md +++ b/content/operate/oss_and_stack/stack-with-enterprise/search/_index.md @@ -64,7 +64,7 @@ Because the index on the new shard is created synchronously though, it's expecte ## Limitations -- You cannot use search and query capabilities with the [OSS Cluster API]({{< relref "/operate/rs/databases/configure/oss-cluster-api" >}}). +- You cannot use search and query capabilities with the [OSS Cluster API]({{< relref "/operate/rs/databases/configure/oss-cluster-api" >}}). This limitation was fixed in Redis Enterprise Software version 8.0. ## More info diff --git a/content/operate/rs/7.4/references/rest-api/objects/cluster_settings.md b/content/operate/rs/7.4/references/rest-api/objects/cluster_settings.md index 41da2f9461..c8b7bbebd1 100644 --- a/content/operate/rs/7.4/references/rest-api/objects/cluster_settings.md +++ b/content/operate/rs/7.4/references/rest-api/objects/cluster_settings.md @@ -16,52 +16,52 @@ Cluster resources management policy | Name | Type/Value | Description | |------|------------|-------------| | acl_pubsub_default | `resetchannels`
`allchannels` | Default pub/sub ACL rule for all databases in the cluster:
•`resetchannels` blocks access to all channels (restrictive)
•`allchannels` allows access to all channels (permissive) | -| auto_recovery | boolean (default: false) | Defines whether to use automatic recovery after shard failure | -| automatic_node_offload | boolean (default: true) | Defines whether the cluster will automatically migrate shards from a node, in case the node is overbooked | -| bigstore_migrate_node_threshold | integer | Minimum free memory (excluding reserved memory) allowed on a node before automatic migration of shards from it to free more memory | -| bigstore_migrate_node_threshold_p | integer | Minimum free memory (excluding reserved memory) allowed on a node before automatic migration of shards from it to free more memory | -| bigstore_provision_node_threshold | integer | Minimum free memory (excluding reserved memory) allowed on a node before new shards can no longer be added to it | -| bigstore_provision_node_threshold_p | integer | Minimum free memory (excluding reserved memory) allowed on a node before new shards can no longer be added to it | +| auto_recovery | boolean (default: false) | Defines whether to use automatic recovery after shard failure | +| automatic_node_offload | boolean (default: true) | Defines whether the cluster will automatically migrate shards from a node, in case the node is overbooked | +| bigstore_migrate_node_threshold | integer | Minimum free memory (excluding reserved memory) allowed on a node before automatic migration of shards from it to free more memory | +| bigstore_migrate_node_threshold_p | integer | Minimum free memory (excluding reserved memory) allowed on a node before automatic migration of shards from it to free more memory | +| bigstore_provision_node_threshold | integer | Minimum free memory (excluding reserved memory) allowed on a node before new shards can no longer be added to it | +| bigstore_provision_node_threshold_p | integer | Minimum free memory (excluding reserved memory) allowed on a node before new shards can no longer be added to it | | data_internode_encryption | boolean | Enable/deactivate encryption of the data plane internode communication | | db_conns_auditing | boolean | [Audit connections]({{< relref "/operate/rs/7.4/security/audit-events" >}}) for new databases by default if set to true. | -| default_concurrent_restore_actions | integer | Default number of restore actions allowed at the same time. Set to 0 to allow any number of simultaneous restore actions. | +| default_concurrent_restore_actions | integer | Default number of restore actions allowed at the same time. Set to 0 to allow any number of simultaneous restore actions. | | default_fork_evict_ram | boolean | If true, the bdbs should evict data from RAM to ensure successful replication or persistence | -| default_non_sharded_proxy_policy | `single`

`all-master-shards`

`all-nodes` | Default proxy_policy for newly created non-sharded databases' endpoints | -| default_provisioned_redis_version | string | Default Redis version | -| default_sharded_proxy_policy | `single`

`all-master-shards`

`all-nodes` | Default proxy_policy for newly created sharded databases' endpoints | +| default_non_sharded_proxy_policy | `single`

`all-master-shards`

`all-nodes` | Default proxy_policy for newly created non-sharded databases' endpoints | +| default_provisioned_redis_version | string | Default Redis version | +| default_sharded_proxy_policy | `single`

`all-master-shards`

`all-nodes` | Default proxy_policy for newly created sharded databases' endpoints | | default_shards_placement | `dense`
`sparse` | Default shards_placement for a newly created databases | | diskless_repl | `yes`
`no` (default: `yes`) | If `yes`, enables the default Redis diskless replication mechanism | -| endpoint_rebind_propagation_grace_time | integer | Time to wait between the addition and removal of a proxy | +| endpoint_rebind_propagation_grace_time | integer | Time to wait between the addition and removal of a proxy | | evict_node_use_free_memory | boolean | When evicting a node, use the free memory instead of the provisional memory to check if the shards from the old node fit on the new one | -| expose_hostnames_for_all_suffixes | boolean (default: false) | If true, enables exposing hostnames for non-default DNS suffixes | -| failure_detection_sensitivity | `high`
`low` | Predefined thresholds and timeouts for failure detection (previously known as `watchdog_profile`)
• `high` (previously `local-network`) – high failure detection sensitivity, lower thresholds, faster failure detection and failover
• `low` (previously `cloud`) – low failure detection sensitivity, higher tolerance for latency variance (also called network jitter) | -| hide_user_data_from_log | boolean (default: false) | Set to `true` to enable the `hide-user-data-from-log` Redis configuration setting, which avoids logging user data | -| login_lockout_counter_reset_after | integer | Number of seconds that must elapse between failed sign in attempts before the lockout counter is reset to 0. | +| expose_hostnames_for_all_suffixes | boolean (default: false) | If true, enables exposing hostnames for non-default DNS suffixes | +| failure_detection_sensitivity | `high`
`low` | Predefined thresholds and timeouts for failure detection (previously known as `watchdog_profile`)
• `high` (previously `local-network`) – high failure detection sensitivity, lower thresholds, faster failure detection and failover
• `low` (previously `cloud`) – low failure detection sensitivity, higher tolerance for latency variance (also called network jitter) | +| hide_user_data_from_log | boolean (default: false) | Set to `true` to enable the `hide-user-data-from-log` Redis configuration setting, which avoids logging user data | +| login_lockout_counter_reset_after | integer | Number of seconds that must elapse between failed sign in attempts before the lockout counter is reset to 0. | | login_lockout_duration | integer | Duration (in secs) of account lockout. If set to 0, the account lockout will persist until released by an admin. | | login_lockout_threshold | integer | Number of failed sign in attempts allowed before locking a user account | -| master_healthcheck_api_auth | boolean (default: true) | Defines if authentication is required by the local `master_healthcheck` API | +| master_healthcheck_api_auth | boolean (default: true) | Defines if authentication is required by the local `master_healthcheck` API | | max_redis_forks | integer (default: 0) | Maximum number of background processes forked from shards that can exist on the node at any given time. 0 means unlimited. | | max_saved_events_per_type | integer | Maximum saved events per event type | | max_slave_full_syncs | integer (default: 0) | Maximum number of simultaneous replica full syncs that can run at any given time. 0 means unlimited. | | max_simultaneous_backups | integer (default: 4) | Maximum number of backup processes allowed at the same time | -| oss_cluster_api_preferred_endpoint_type | `ip`
`hostname` (default: ip) | Determines the default endpoint type in the OSS Cluster API for new endpoints | -| oss_cluster_api_preferred_ip_type | `internal`
`external` (default: internal) | Determines the default IP type in the OSS Cluster API for new endpoints | +| oss_cluster_api_preferred_endpoint_type | `ip`
`hostname` (default: ip) | Determines the default endpoint type in the OSS Cluster API for new endpoints | +| oss_cluster_api_preferred_ip_type | `internal`
`external` (default: internal) | Determines the default IP type in the OSS Cluster API for new endpoints | | parallel_shards_upgrade | integer | Maximum number of shards to upgrade in parallel | -| persistence_cleanup_grace_time | integer | Time in seconds before an unmodified file is considered to be stale and to be removed by persistence cleanup | -| persistence_cleanup_scan_interval | string | [CRON expression](https://en.wikipedia.org/wiki/Cron#CRON_expression) that defines the Redis cleanup schedule | +| persistence_cleanup_grace_time | integer | Time in seconds before an unmodified file is considered to be stale and to be removed by persistence cleanup | +| persistence_cleanup_scan_interval | string | [CRON expression](https://en.wikipedia.org/wiki/Cron#CRON_expression) that defines the Redis cleanup schedule | | persistent_node_removal | boolean | When removing a node, wait for persistence files to be created for all migrated shards | | rack_aware | boolean | Cluster operates in a rack-aware mode | -| redis_migrate_node_threshold | integer | Minimum free memory (excluding reserved memory) allowed on a node before automatic migration of shards from it to free more memory | -| redis_migrate_node_threshold_p | integer | Minimum free memory (excluding reserved memory) allowed on a node before automatic migration of shards from it to free more memory | -| redis_provision_node_threshold | integer | Minimum free memory (excluding reserved memory) allowed on a node before new shards can no longer be added to it | -| redis_provision_node_threshold_p | integer | Minimum free memory (excluding reserved memory) allowed on a node before new shards can no longer be added to it | +| redis_migrate_node_threshold | integer | Minimum free memory (excluding reserved memory) allowed on a node before automatic migration of shards from it to free more memory | +| redis_migrate_node_threshold_p | integer | Minimum free memory (excluding reserved memory) allowed on a node before automatic migration of shards from it to free more memory | +| redis_provision_node_threshold | integer | Minimum free memory (excluding reserved memory) allowed on a node before new shards can no longer be added to it | +| redis_provision_node_threshold_p | integer | Minimum free memory (excluding reserved memory) allowed on a node before new shards can no longer be added to it | | redis_upgrade_policy | **`major`**
`latest` | Create/upgrade Redis Enterprise software on databases in the cluster by compatibility with major versions or latest versions of Redis Open Source | -| resp3_default | boolean (default: true) | Determines the default value of the `resp3` option upon upgrading a database to version 7.2 | +| resp3_default | boolean (default: true) | Determines the default value of the `resp3` option upon upgrading a database to version 7.2 | | shards_overbooking | boolean | If true, all databases' memory_size is ignored during shards placement | | show_internals | boolean | Show internal databases (and their shards and endpoints) REST APIs | -| show_metrics_during_state_machine | boolean | Show metrics during state machine operations | +| show_metrics_during_state_machine | boolean | Show metrics during state machine operations | | slave_ha | boolean | Enable the replica high-availability mechanism. Deprecated as of Redis Enterprise Software v7.2.4. | -| slave_ha_bdb_cooldown_period | integer | Time in seconds between runs of the replica high-availability mechanism on different nodes on the same database | +| slave_ha_bdb_cooldown_period | integer | Time in seconds between runs of the replica high-availability mechanism on different nodes on the same database | | slave_ha_cooldown_period | integer | Time in seconds between runs of the replica high-availability mechanism on different nodes on the same database | | slave_ha_grace_period | integer | Time in seconds between a node failure and when the replica high-availability mechanism starts relocating shards | | slow_log_max_len | integer (default: 1024) | Set max slow log entries in debug info | diff --git a/content/operate/rs/7.8/references/rest-api/objects/cluster_settings.md b/content/operate/rs/7.8/references/rest-api/objects/cluster_settings.md index a2b83042df..9da80050e6 100644 --- a/content/operate/rs/7.8/references/rest-api/objects/cluster_settings.md +++ b/content/operate/rs/7.8/references/rest-api/objects/cluster_settings.md @@ -16,59 +16,59 @@ Cluster resources management policy | Name | Type/Value | Description | |------|------------|-------------| | acl_pubsub_default | `resetchannels`
`allchannels` | Default pub/sub ACL rule for all databases in the cluster:
•`resetchannels` blocks access to all channels (restrictive)
•`allchannels` allows access to all channels (permissive) | -| auto_recovery | boolean (default: false) | Defines whether to use automatic recovery after shard failure | -| automatic_node_offload | boolean (default: true) | Defines whether the cluster will automatically migrate shards from a node, in case the node is overbooked | -| bigstore_migrate_node_threshold | integer | Minimum free memory (excluding reserved memory) allowed on a node before automatic migration of shards from it to free more memory | -| bigstore_migrate_node_threshold_p | integer | Minimum free memory (excluding reserved memory) allowed on a node before automatic migration of shards from it to free more memory | -| bigstore_provision_node_threshold | integer | Minimum free memory (excluding reserved memory) allowed on a node before new shards can no longer be added to it | -| bigstore_provision_node_threshold_p | integer | Minimum free memory (excluding reserved memory) allowed on a node before new shards can no longer be added to it | +| auto_recovery | boolean (default: false) | Defines whether to use automatic recovery after shard failure | +| automatic_node_offload | boolean (default: true) | Defines whether the cluster will automatically migrate shards from a node, in case the node is overbooked | +| bigstore_migrate_node_threshold | integer | Minimum free memory (excluding reserved memory) allowed on a node before automatic migration of shards from it to free more memory | +| bigstore_migrate_node_threshold_p | integer | Minimum free memory (excluding reserved memory) allowed on a node before automatic migration of shards from it to free more memory | +| bigstore_provision_node_threshold | integer | Minimum free memory (excluding reserved memory) allowed on a node before new shards can no longer be added to it | +| bigstore_provision_node_threshold_p | integer | Minimum free memory (excluding reserved memory) allowed on a node before new shards can no longer be added to it | | data_internode_encryption | boolean | Enable/deactivate encryption of the data plane internode communication | | db_conns_auditing | boolean | [Audit connections]({{< relref "/operate/rs/7.8/security/audit-events" >}}) for new databases by default if set to true. | -| default_concurrent_restore_actions | integer | Default number of restore actions allowed at the same time. Set to 0 to allow any number of simultaneous restore actions. | +| default_concurrent_restore_actions | integer | Default number of restore actions allowed at the same time. Set to 0 to allow any number of simultaneous restore actions. | | default_fork_evict_ram | boolean | If true, the bdbs should evict data from RAM to ensure successful replication or persistence | -| default_non_sharded_proxy_policy | `single`

`all-master-shards`

`all-nodes` | Default proxy_policy for newly created non-sharded databases' endpoints | +| default_non_sharded_proxy_policy | `single`

`all-master-shards`

`all-nodes` | Default proxy_policy for newly created non-sharded databases' endpoints | | default_oss_sharding | boolean (default: false) | Default hashing policy to use for new databases. This field is for future use only and should not be changed. | -| default_provisioned_redis_version | string | Default Redis version | -| default_sharded_proxy_policy | `single`

`all-master-shards`

`all-nodes` | Default proxy_policy for newly created sharded databases' endpoints | +| default_provisioned_redis_version | string | Default Redis version | +| default_sharded_proxy_policy | `single`

`all-master-shards`

`all-nodes` | Default proxy_policy for newly created sharded databases' endpoints | | default_shards_placement | `dense`
`sparse` | Default shards_placement for a newly created databases | -| default_recovery_wait_time | integer (default: -1) | The default time for new databases to wait for the persistence file to be available during automatic recovery. -1 means wait forever. | -| default_tracking_table_max_keys_policy | integer (default: 1000000) | Defines the default value of the client-side caching invalidation table size for new databases. 0 makes the cache unlimited. | +| default_recovery_wait_time | integer (default: -1) | The default time for new databases to wait for the persistence file to be available during automatic recovery. -1 means wait forever. | +| default_tracking_table_max_keys_policy | integer (default: 1000000) | Defines the default value of the client-side caching invalidation table size for new databases. 0 makes the cache unlimited. | | diskless_repl | `yes`
`no` (default: yes) | If `yes`, enable default Redis diskless replication mechanism (deprecated; use `repl_diskless` instead) | -| endpoint_rebind_propagation_grace_time | integer | Time to wait between the addition and removal of a proxy | -| evict_node_use_free_memory | boolean | When evicting a node, use the free memory instead of the provisional memory to check if the shards from the old node fit on the new one | -| expose_hostnames_for_all_suffixes | boolean (default: false) | If true, enables exposing hostnames for non-default DNS suffixes | -| failure_detection_sensitivity | `high`
`low` | Predefined thresholds and timeouts for failure detection (previously known as `watchdog_profile`)
• `high` (previously `local-network`) – high failure detection sensitivity, lower thresholds, faster failure detection and failover
• `low` (previously `cloud`) – low failure detection sensitivity, higher tolerance for latency variance (also called network jitter) | -| hide_user_data_from_log | boolean (default: false) | Set to `true` to enable the `hide-user-data-from-log` Redis configuration setting, which avoids logging user data | -| login_lockout_counter_reset_after | integer | Number of seconds that must elapse between failed sign in attempts before the lockout counter is reset to 0. | +| endpoint_rebind_propagation_grace_time | integer | Time to wait between the addition and removal of a proxy | +| evict_node_use_free_memory | boolean | When evicting a node, use the free memory instead of the provisional memory to check if the shards from the old node fit on the new one | +| expose_hostnames_for_all_suffixes | boolean (default: false) | If true, enables exposing hostnames for non-default DNS suffixes | +| failure_detection_sensitivity | `high`
`low` | Predefined thresholds and timeouts for failure detection (previously known as `watchdog_profile`)
• `high` (previously `local-network`) – high failure detection sensitivity, lower thresholds, faster failure detection and failover
• `low` (previously `cloud`) – low failure detection sensitivity, higher tolerance for latency variance (also called network jitter) | +| hide_user_data_from_log | boolean (default: false) | Set to `true` to enable the `hide-user-data-from-log` Redis configuration setting, which avoids logging user data | +| login_lockout_counter_reset_after | integer | Number of seconds that must elapse between failed sign in attempts before the lockout counter is reset to 0. | | login_lockout_duration | integer | Duration (in secs) of account lockout. If set to 0, the account lockout will persist until released by an admin. | | login_lockout_threshold | integer | Number of failed sign in attempts allowed before locking a user account | -| master_healthcheck_api_auth | boolean (default: true) | Defines if authentication is required by the local `master_healthcheck` API | +| master_healthcheck_api_auth | boolean (default: true) | Defines if authentication is required by the local `master_healthcheck` API | | max_redis_forks | integer (default: 0) | Maximum number of background processes forked from shards that can exist on the node at any given time. 0 means unlimited. | | max_saved_events_per_type | integer | Maximum saved events per event type | | max_slave_full_syncs | integer (default: 0) | Maximum number of simultaneous replica full syncs that can run at any given time. 0 means unlimited. | | max_simultaneous_backups | integer (default: 4) | Maximum number of backup processes allowed at the same time | -| metrics_exporter_expose_bdb_name | boolean (default: false) | If true, adds a label with the database name to relevant metrics | -| oss_cluster_api_preferred_endpoint_type | `ip`
`hostname` (default: ip) | Determines the default endpoint type in the OSS Cluster API for new endpoints | -| oss_cluster_api_preferred_ip_type | `internal`
`external` (default: internal) | Determines the default IP type in the OSS Cluster API for new endpoints | +| metrics_exporter_expose_bdb_name | boolean (default: false) | If true, adds a label with the database name to relevant metrics | +| oss_cluster_api_preferred_endpoint_type | `ip`
`hostname` (default: ip) | Determines the default endpoint type in the OSS Cluster API for new endpoints | +| oss_cluster_api_preferred_ip_type | `internal`
`external` (default: internal) | Determines the default IP type in the OSS Cluster API for new endpoints | | parallel_shards_upgrade | integer | Maximum number of shards to upgrade in parallel | -| persistence_cleanup_grace_time | integer | Time in seconds before an unmodified file is considered to be stale and to be removed by persistence cleanup | -| persistence_cleanup_scan_interval | string | [CRON expression](https://en.wikipedia.org/wiki/Cron#CRON_expression) that defines the Redis cleanup schedule | +| persistence_cleanup_grace_time | integer | Time in seconds before an unmodified file is considered to be stale and to be removed by persistence cleanup | +| persistence_cleanup_scan_interval | string | [CRON expression](https://en.wikipedia.org/wiki/Cron#CRON_expression) that defines the Redis cleanup schedule | | persistent_node_removal | boolean | When removing a node, wait for persistence files to be created for all migrated shards | | rack_aware | boolean | Cluster operates in a rack-aware mode | -| redis_migrate_node_threshold | integer | Minimum free memory (excluding reserved memory) allowed on a node before automatic migration of shards from it to free more memory | -| redis_migrate_node_threshold_p | integer | Minimum free memory (excluding reserved memory) allowed on a node before automatic migration of shards from it to free more memory | -| redis_provision_node_threshold | integer | Minimum free memory (excluding reserved memory) allowed on a node before new shards can no longer be added to it | -| redis_provision_node_threshold_p | integer | Minimum free memory (excluding reserved memory) allowed on a node before new shards can no longer be added to it | +| redis_migrate_node_threshold | integer | Minimum free memory (excluding reserved memory) allowed on a node before automatic migration of shards from it to free more memory | +| redis_migrate_node_threshold_p | integer | Minimum free memory (excluding reserved memory) allowed on a node before automatic migration of shards from it to free more memory | +| redis_provision_node_threshold | integer | Minimum free memory (excluding reserved memory) allowed on a node before new shards can no longer be added to it | +| redis_provision_node_threshold_p | integer | Minimum free memory (excluding reserved memory) allowed on a node before new shards can no longer be added to it | | redis_upgrade_policy | **`major`**
`latest` | Create/upgrade Redis Enterprise software on databases in the cluster by compatibility with major versions or latest versions of Redis Open Source | | repl_diskless | boolean (default: true) | If true, enables the default Redis diskless replication mechanism | -| resp3_default | boolean (default: true) | Determines the default value of the `resp3` option upon upgrading a database to version 7.2 | +| resp3_default | boolean (default: true) | Determines the default value of the `resp3` option upon upgrading a database to version 7.2 | | shards_overbooking | boolean | If true, all databases' memory_size is ignored during shards placement | | show_internals | boolean | Show internal databases (and their shards and endpoints) REST APIs | -| show_metrics_during_state_machine | boolean | Show metrics during state machine operations | +| show_metrics_during_state_machine | boolean | Show metrics during state machine operations | | slave_ha | boolean | Enable the replica high-availability mechanism. Deprecated as of Redis Enterprise Software v7.2.4. | -| slave_ha_bdb_cooldown_period | integer | Time in seconds between runs of the replica high-availability mechanism on different nodes on the same database | +| slave_ha_bdb_cooldown_period | integer | Time in seconds between runs of the replica high-availability mechanism on different nodes on the same database | | slave_ha_cooldown_period | integer | Time in seconds between runs of the replica high-availability mechanism on different nodes on the same database | | slave_ha_grace_period | integer | Time in seconds between a node failure and when the replica high-availability mechanism starts relocating shards | | slow_log_max_len | integer (default: 1024) | Set max slow log entries in debug info | | use_librdb | boolean | If true, new databases use the new RDB parser instead of the old one | -| witness_disk_update_frequency_divisor | integer (default: 3) | Redis Enterprise Software updates the witness disk every `node_max_update_time / witness_disk_update_frequency_divisor` seconds | +| witness_disk_update_frequency_divisor | integer (default: 3) | Redis Enterprise Software updates the witness disk every `node_max_update_time / witness_disk_update_frequency_divisor` seconds | diff --git a/content/operate/rs/databases/configure/oss-cluster-api.md b/content/operate/rs/databases/configure/oss-cluster-api.md index d3ab29a985..49d36b51ed 100644 --- a/content/operate/rs/databases/configure/oss-cluster-api.md +++ b/content/operate/rs/databases/configure/oss-cluster-api.md @@ -24,7 +24,7 @@ The database must: 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/gears-v1" >}}) modules. +- Use [RedisTimeSeries]({{< relref "/operate/oss_and_stack/stack-with-enterprise/timeseries" >}}) or [RedisGears]({{< relref "/operate/oss_and_stack/stack-with-enterprise/gears-v1" >}}) modules. The OSS Cluster API setting applies to individual databases instead of the entire cluster. diff --git a/content/operate/rs/installing-upgrading/install/install-script.md b/content/operate/rs/installing-upgrading/install/install-script.md index 35472cbd0b..d8d2df588e 100644 --- a/content/operate/rs/installing-upgrading/install/install-script.md +++ b/content/operate/rs/installing-upgrading/install/install-script.md @@ -25,4 +25,4 @@ The following options are supported: | `--os-user `| Operating system user account associated with install; default: `redislabs`
See [Customize user and group]({{< relref "/operate/rs/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/installing-upgrading/install/customize-user-and-group" >}}) *(new installs only)* | | `--skip-dns-port-verification` | Skip DNS port verification during installation | -|
`--skip-updating-env-path` | Skip adding paths related to Redis Enterprise Software to root's PATH environment variable
See [Manage install questions]({{< relref "/operate/rs/installing-upgrading/install/manage-installation-questions" >}}) | +| `--update-env-path` | Add paths related to Redis Enterprise Software to root's PATH environment variable
See [Manage install questions]({{< relref "/operate/rs/installing-upgrading/install/manage-installation-questions" >}}) | diff --git a/content/operate/rs/installing-upgrading/install/manage-installation-questions.md b/content/operate/rs/installing-upgrading/install/manage-installation-questions.md index aaaa670145..a649f56d00 100644 --- a/content/operate/rs/installing-upgrading/install/manage-installation-questions.md +++ b/content/operate/rs/installing-upgrading/install/manage-installation-questions.md @@ -89,7 +89,7 @@ Use an answer file to manage your response: | `ignore_swap` | `yes`
`no` | Continue even if swap is enabled. If `no`, stops installation if swap is enabled. | | `ntp` | `yes`
`no` | Configure NTP for time synchronization. | | `rlcheck` | `yes`
`no` | Run `rlcheck` after installation to validate the system. | - | `skip_updating_env_path` | `yes`
`no` | Skip adding Redis Enterprise Software paths to the PATH environment variable. | + | `update_env_path` | `yes`
`no` | Add Redis Enterprise Software paths to the PATH environment variable. | | `systune` | `yes`
`no` | Automatically tune system performance (CPU, sysctl). If `yes`, answers `yes` to all system tuning questions. | Example answer file: @@ -101,7 +101,7 @@ Use an answer file to manage your response: firewall=no rlcheck=yes ignore_existing_osuser_osgroup=no - skip_updating_env_path=yes + update_env_path=no ignore_master_version=no ``` diff --git a/content/operate/rs/installing-upgrading/product-lifecycle.md b/content/operate/rs/installing-upgrading/product-lifecycle.md index b401ba5bf8..ae88cf6cf3 100644 --- a/content/operate/rs/installing-upgrading/product-lifecycle.md +++ b/content/operate/rs/installing-upgrading/product-lifecycle.md @@ -40,7 +40,8 @@ This update to the EOL policy allows a lead time of at least 24 months to upgrad | Version - Release date | End of Life (EOL) | | ----------------------------------------- | ------------------ | -| 7.22 – May 2025 | - | +| 8.0 – October 2025 | - | +| 7.22 – May 2025 | October 30, 2027 | | 7.8 – November 2024 | May 30, 2027 | | 7.4 – February 2024 | November 30, 2026 | | 7.2 – August 2023 | February 28, 2026 | diff --git a/content/operate/rs/installing-upgrading/upgrading/upgrade-active-active.md b/content/operate/rs/installing-upgrading/upgrading/upgrade-active-active.md index 8ffe7c742e..f35c67034f 100644 --- a/content/operate/rs/installing-upgrading/upgrading/upgrade-active-active.md +++ b/content/operate/rs/installing-upgrading/upgrading/upgrade-active-active.md @@ -107,36 +107,15 @@ without upgrading the CRDB protocol version. 700140c5-478e-49d7-ad3c-64d517ddc486 aatest 2 aatest2.example.com ``` -1. Update module information in the CRDB configuration using the following command syntax: +1. Update module information in the CRDB configuration using the following command: ```sh - crdb-cli crdb update --crdb-guid --default-db-config \ - '{ "module_list": - [ - { - "module_name": "", - "semantic_version": "" - }, - { - "module_name": "", - "semantic_version": "" - } - ]}' + crdb-cli crdb update --crdb-guid --update-db-config-modules true ``` - For example: + `crdb-cli` will ask you to verify all Active-Active database instances and their modules have been updated before you enter `y` to continue. - ```sh - crdb-cli crdb update --crdb-guid 82a80988-f5fe-4fa5-bca0-aef2a0fd60db --default-db-config \ - '{ "module_list": - [ - { - "module_name": "search", - "semantic_version": "2.4.6" - }, - { - "module_name": "ReJSON", - "semantic_version": "2.4.5" - } - ]}' + ``` + Verify that all CRDB database instances and their modules have been updated. + Do you want to continue? (y/n): y ``` diff --git a/content/operate/rs/installing-upgrading/upgrading/upgrade-database.md b/content/operate/rs/installing-upgrading/upgrading/upgrade-database.md index 6a064b042e..82a1b4cb9d 100644 --- a/content/operate/rs/installing-upgrading/upgrading/upgrade-database.md +++ b/content/operate/rs/installing-upgrading/upgrading/upgrade-database.md @@ -14,9 +14,6 @@ weight: 50 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/references/rest-api/requests/bdbs" >}}) or [`rladmin upgrade db`]({{< relref "/operate/rs/references/cli-utilities/rladmin/upgrade#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. - To view available Redis database versions: - In the Cluster Manager UI, see **Redis database versions** on the **Cluster > Configuration** screen. @@ -28,6 +25,7 @@ The default Redis database version differs between Redis Enterprise releases as | Redis
Software | Bundled Redis
DB versions | Default DB version
(upgraded/new databases) | |-------|----------|-----| +| 8.0.x | 6.2, 7.2, 7.4, 8.2 | 8.2 | | 7.22.x | 6.2, 7.2, 7.4 | 7.4 | | 7.8.x | 6.2, 7.2, 7.4 | 7.4 | | 7.4.x | 6.0, 6.2, 7.2 | 7.2 | @@ -35,9 +33,6 @@ The default Redis database version differs between Redis Enterprise releases as | 6.4.2 | 6.0, 6.2 | 6.2 | | 6.2.x | 6.0, 6.2 | 6.0 | - -The upgrade policy is only relevant for Redis Enterprise Software versions 6.2.4 through 6.2.18. For more information about upgrade policies, see the [6.2 version of this document](https://docs.redis.com/6.2/rs/installing-upgrading/upgrading/#redis-upgrade-policy). - ## Upgrade prerequisites Before upgrading a database: diff --git a/content/operate/rs/monitoring/_index.md b/content/operate/rs/monitoring/_index.md index 8308cc327b..6520942a0b 100644 --- a/content/operate/rs/monitoring/_index.md +++ b/content/operate/rs/monitoring/_index.md @@ -22,11 +22,11 @@ In the Redis Enterprise Cluster Manager UI, you can view metrics, configure aler See [Metrics and alerts for monitoring v1]({{}}) for more information. -## Metrics stream engine preview +## Metrics stream engine -A preview of the new metrics stream engine is available as of [Redis Enterprise Software version 7.8.2]({{}}). 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. +The new metrics stream engine is generally available as of [Redis Enterprise Software version 8.0]({{}}) 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 for monitoring v2]({{}}) for more information. ## Integrate with external monitoring tools diff --git a/content/operate/rs/monitoring/metrics_stream_engine.md b/content/operate/rs/monitoring/metrics_stream_engine.md index d257dd201a..a3a7fba064 100644 --- a/content/operate/rs/monitoring/metrics_stream_engine.md +++ b/content/operate/rs/monitoring/metrics_stream_engine.md @@ -1,18 +1,18 @@ --- -Title: Metrics stream engine preview for monitoring v2 +Title: Metrics stream engine for monitoring v2 alwaysopen: false categories: - docs - operate - rs - kubernetes -description: Preview the new metrics stream engine for monitoring Redis Enterprise Software. +description: The new metrics stream engine for monitoring Redis Enterprise Software. hideListLinks: true -linkTitle: Metrics stream engine preview for monitoring v2 +linkTitle: Metrics stream engine for monitoring v2 weight: 60 --- -A preview of the new metrics stream engine is available as of [Redis Enterprise Software version 7.8.2]({{}}). +The new metrics stream engine is generally available as of [Redis Enterprise Software version 8.0]({{}}). The new metrics stream engine: diff --git a/content/operate/rs/references/cli-utilities/crdb-cli/crdb/update.md b/content/operate/rs/references/cli-utilities/crdb-cli/crdb/update.md index 2e6ae9a4d7..a9432bb2c9 100644 --- a/content/operate/rs/references/cli-utilities/crdb-cli/crdb/update.md +++ b/content/operate/rs/references/cli-utilities/crdb-cli/crdb/update.md @@ -28,6 +28,7 @@ crdb-cli crdb update --crdb-guid [--bigstore-ram-size ] [--eviction-policy { noeviction | allkeys-lru | allkeys-lfu | allkeys-random | volatile-lru | volatile-lfu | volatile-random | volatile-ttl }] [--update-module name=,featureset_version=] + [--update-db-config-modules { true | false } ] ``` If you want to change the configuration of the local instance only, use [`rladmin`]({{< relref "/operate/rs/references/cli-utilities/rladmin" >}}) instead. @@ -51,6 +52,7 @@ If you want to change the configuration of the local instance only, use [`rladmi | eviction-policy | noeviction
allkeys-lru
allkeys-lfu
allkeys-random
volatile-lru
volatile-lfu
volatile-random
volatile-ttl | Updates [eviction policy]({{< relref "/operate/rs/databases/memory-performance/eviction-policy" >}}) | | featureset-version | true
false | Updates to latest FeatureSet version | | update-module name=\,featureset_version=\ | strings | Update a module to the specified version | +| update-db-config-modules | true
false | Updates module information in the CRDB configuration (default-db-config) based on the latest module data for the database. Use this option only after all CRDB database instances have upgraded their modules. | ### Returns diff --git a/content/operate/rs/references/compatibility/commands/cluster.md b/content/operate/rs/references/compatibility/commands/cluster.md index 945cfa8579..fc2c242d2f 100644 --- a/content/operate/rs/references/compatibility/commands/cluster.md +++ b/content/operate/rs/references/compatibility/commands/cluster.md @@ -15,7 +15,7 @@ weight: 10 Redis Enterprise blocks most [cluster commands]({{< relref "/commands" >}}?group=cluster). If you try to use a blocked cluster command, it returns an error. -| Command | Redis
Enterprise | Redis
Cloud | Notes | +| Command | Redis
Software | Redis
Cloud | Notes | |:--------|:----------------------|:-----------------|:------| | [ASKING]({{< relref "/commands/asking" >}}) | ❌ Standard
❌ Active-Active | ❌ Standard
❌ Active-Active | | | [CLUSTER ADDSLOTS]({{< relref "/commands/cluster-addslots" >}}) | ❌ Standard
❌ Active-Active | ❌ Standard
❌ Active-Active | | @@ -45,6 +45,7 @@ Redis Enterprise blocks most [cluster commands]({{< relref "/commands" >}}?group | [CLUSTER SETSLOT]({{< relref "/commands/cluster-setslot" >}}) | ❌ Standard
❌ Active-Active | ❌ Standard
❌ Active-Active | | | [CLUSTER SHARDS]({{< relref "/commands/cluster-shards" >}}) | ❌ Standard
❌ Active-Active | ❌ Standard
❌ Active-Active | | | [CLUSTER SLAVES]({{< relref "/commands/cluster-slaves" >}}) | ❌ Standard
❌ Active-Active | ❌ Standard
❌ Active-Active | Deprecated as of Redis v5.0.0. | +| [CLUSTER SLOT-STATS]({{< relref "/commands/cluster-slot-stats" >}}) | ❌ Standard
❌ Active-Active | ❌ Standard
❌ Active-Active | | | [CLUSTER SLOTS]({{< relref "/commands/cluster-slots" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | Only supported with the [OSS cluster API]({{< relref "/operate/rs/databases/configure/oss-cluster-api" >}}). Deprecated as of Redis v7.0.0. | | [READONLY]({{< relref "/commands/readonly" >}}) | ❌ Standard
❌ Active-Active | ❌ Standard
❌ Active-Active | | | [READWRITE]({{< relref "/commands/readwrite" >}}) | ❌ Standard
❌ Active-Active | ❌ Standard
❌ Active-Active | | diff --git a/content/operate/rs/references/compatibility/commands/connection.md b/content/operate/rs/references/compatibility/commands/connection.md index 7110646292..3f18e40b38 100644 --- a/content/operate/rs/references/compatibility/commands/connection.md +++ b/content/operate/rs/references/compatibility/commands/connection.md @@ -14,7 +14,7 @@ weight: 10 The following tables show which Redis Open Source [connection management commands]({{< relref "/commands" >}}?group=connection) are compatible with standard and Active-Active databases in Redis Enterprise Software and Redis Cloud. -| Command | Redis
Enterprise | Redis
Cloud | Notes | +| Command | Redis
Software | Redis
Cloud | Notes | |:--------|:----------------------|:-----------------|:------| | [AUTH]({{< relref "/commands/auth" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [CLIENT CACHING]({{< relref "/commands/client-caching" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | diff --git a/content/operate/rs/references/compatibility/commands/data-types.md b/content/operate/rs/references/compatibility/commands/data-types.md index fe58e7815d..ffc2d0b506 100644 --- a/content/operate/rs/references/compatibility/commands/data-types.md +++ b/content/operate/rs/references/compatibility/commands/data-types.md @@ -17,7 +17,7 @@ The following tables show which Redis Open Source data type commands are compati ## Bitmap commands -| Command | Redis
Enterprise | Redis
Cloud | Notes | +| Command | Redis
Software | Redis
Cloud | Notes | |:--------|:----------------------|:-----------------|:------| | [BITCOUNT]({{< relref "/commands/bitcount" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [BITFIELD]({{< relref "/commands/bitfield" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | @@ -30,7 +30,7 @@ The following tables show which Redis Open Source data type commands are compati ## Geospatial indices commands -| Command | Redis
Enterprise | Redis
Cloud | Notes | +| Command | Redis
Software | Redis
Cloud | Notes | |:--------|:----------------------|:-----------------|:------| | [GEOADD]({{< relref "/commands/geoadd" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [GEODIST]({{< relref "/commands/geodist" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | @@ -46,7 +46,7 @@ The following tables show which Redis Open Source data type commands are compati ## Hash commands -| Command | Redis
Enterprise | Redis
Cloud | Notes | +| Command | Redis
Software | Redis
Cloud | Notes | |:--------|:----------------------|:-----------------|:------| | [HDEL]({{< relref "/commands/hdel" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [HEXISTS]({{< relref "/commands/hexists" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | @@ -55,6 +55,8 @@ The following tables show which Redis Open Source data type commands are compati | [HEXPIRETIME]({{< relref "/commands/hexpiretime" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [HGET]({{< relref "/commands/hget" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [HGETALL]({{< relref "/commands/hgetall" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | +| [HGETDEL]({{< relref "/commands/hgetdel" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | +| [HGETEX]({{< relref "/commands/hgetex" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [HINCRBY]({{< relref "/commands/hincrby" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [HINCRBYFLOAT]({{< relref "/commands/hincrbyfloat" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [HKEYS]({{< relref "/commands/hkeys" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | @@ -69,6 +71,7 @@ The following tables show which Redis Open Source data type commands are compati | [HRANDFIELD]({{< relref "/commands/hrandfield" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [HSCAN]({{< relref "/commands/hscan" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [HSET]({{< relref "/commands/hset" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | +| [HSETEX]({{< relref "/commands/hsetex" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [HSETNX]({{< relref "/commands/hsetnx" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [HSTRLEN]({{< relref "/commands/hstrlen" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [HTTL]({{< relref "/commands/httl" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | @@ -77,7 +80,7 @@ The following tables show which Redis Open Source data type commands are compati ## HyperLogLog commands -| Command | Redis
Enterprise | Redis
Cloud | Notes | +| Command | Redis
Software | Redis
Cloud | Notes | |:--------|:----------------------|:-----------------|:------| | [PFADD]({{< relref "/commands/pfadd" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [PFCOUNT]({{< relref "/commands/pfcount" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | @@ -88,7 +91,7 @@ The following tables show which Redis Open Source data type commands are compati ## List commands -| Command | Redis
Enterprise | Redis
Cloud | Notes | +| Command | Redis
Software | Redis
Cloud | Notes | |:--------|:----------------------|:-----------------|:------| | [BLMOVE]({{< relref "/commands/blmove" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [BLMPOP]({{< relref "/commands/blmpop" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | @@ -116,7 +119,7 @@ The following tables show which Redis Open Source data type commands are compati ## Set commands -| Command | Redis
Enterprise | Redis
Cloud | Notes | +| Command | Redis
Software | Redis
Cloud | Notes | |:--------|:----------------------|:-----------------|:------| | [SADD]({{< relref "/commands/sadd" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [SCARD]({{< relref "/commands/scard" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | @@ -139,7 +142,7 @@ The following tables show which Redis Open Source data type commands are compati ## Sorted set commands -| Command | Redis
Enterprise | Redis
Cloud | Notes | +| Command | Redis
Software | Redis
Cloud | Notes | |:--------|:----------------------|:-----------------|:------| | [BZMPOP]({{< relref "/commands/bzmpop" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [BZPOPMAX]({{< relref "/commands/bzpopmax" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | @@ -180,13 +183,15 @@ The following tables show which Redis Open Source data type commands are compati ## Stream commands -| Command | Redis
Enterprise | Redis
Cloud | Notes | +| Command | Redis
Software | Redis
Cloud | Notes | |:--------|:----------------------|:-----------------|:------| | [XACK]({{< relref "/commands/xack" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | +| [XACKDEL]({{< relref "/commands/xackdel" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [XADD]({{< relref "/commands/xadd" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [XAUTOCLAIM]({{< relref "/commands/xautoclaim" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [XCLAIM]({{< relref "/commands/xclaim" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [XDEL]({{< relref "/commands/xdel" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | +| [XDELEX]({{< relref "/commands/xdelex" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [XGROUP]({{< relref "/commands/xgroup" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [XINFO]({{< relref "/commands/xinfo" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [XLEN]({{< relref "/commands/xlen" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | @@ -201,7 +206,7 @@ The following tables show which Redis Open Source data type commands are compati ## String commands -| Command | Redis
Enterprise | Redis
Cloud | Notes | +| Command | Redis
Software | Redis
Cloud | Notes | |:--------|:----------------------|:-----------------|:------| | [APPEND]({{< relref "/commands/append" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [DECR]({{< relref "/commands/decr" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | @@ -226,3 +231,21 @@ The following tables show which Redis Open Source data type commands are compati | STRALGO | ❌ Standard
❌ Active-Active | ❌ Standard
❌ Active-Active | Deprecated as of Redis v7.0.0. | | [STRLEN]({{< relref "/commands/strlen" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [SUBSTR]({{< relref "/commands/substr" >}}) | ❌ Standard
❌ Active-Active | ❌ Standard
❌ Active-Active | Deprecated as of Redis v2.0.0. | + + +## Vector set commands + +| Command | Redis
Software | Redis
Cloud | Notes | +|:--------|:----------------------|:-----------------|:------| +| [VADD]({{< relref "/commands/vadd" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | +| [VCARD]({{< relref "/commands/vcard" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | +| [VDIM]({{< relref "/commands/vdim" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | +| [VEMB]({{< relref "/commands/vemb" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | +| [VGETATTR]({{< relref "/commands/vgetattr" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | +| [VINFO]({{< relref "/commands/vinfo" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | +| [VISMEMBER]({{< relref "/commands/vismember" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | +| [VLINKS]({{< relref "/commands/vlinks" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | +| [VRANDMEMBER]({{< relref "/commands/vrandmember" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | +| [VREM]({{< relref "/commands/vrem" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | +| [VSETATTR]({{< relref "/commands/vsetattr" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | +| [VSIM]({{< relref "/commands/vsim" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | diff --git a/content/operate/rs/references/compatibility/commands/generic.md b/content/operate/rs/references/compatibility/commands/generic.md index 41c877807a..b079f4d8c1 100644 --- a/content/operate/rs/references/compatibility/commands/generic.md +++ b/content/operate/rs/references/compatibility/commands/generic.md @@ -13,7 +13,7 @@ weight: 10 The following table shows which Redis Open Source [key (generic) commands]({{< relref "/commands" >}}?group=generic) are compatible with standard and Active-Active databases in Redis Enterprise Software and Redis Cloud. -| Command | Redis
Enterprise | Redis
Cloud | Notes | +| Command | Redis
Software | Redis
Cloud | Notes | |:--------|:----------------------|:-----------------|:------| | [COPY]({{< relref "/commands/copy" >}}) | ✅ Standard
✅ Active-Active\* | ✅ Standard
✅ Active-Active\* | For Active-Active or clustered databases, the source and destination keys must be in the same hash slot.

\*Not supported for stream consumer group info. | | [DEL]({{< relref "/commands/del" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | diff --git a/content/operate/rs/references/compatibility/commands/pub-sub.md b/content/operate/rs/references/compatibility/commands/pub-sub.md index 61e2d6b508..4b9c6f60dd 100644 --- a/content/operate/rs/references/compatibility/commands/pub-sub.md +++ b/content/operate/rs/references/compatibility/commands/pub-sub.md @@ -13,7 +13,7 @@ weight: 10 The following table shows which Redis Open Source [pub/sub commands]({{< relref "/commands" >}}?group=pubsub) are compatible with standard and Active-Active databases in Redis Enterprise Software and Redis Cloud. -| Command | Redis
Enterprise | Redis
Cloud | Notes | +| Command | Redis
Software | Redis
Cloud | Notes | |:--------|:----------------------|:-----------------|:------| | [PSUBSCRIBE]({{< relref "/commands/psubscribe" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [PUBLISH]({{< relref "/commands/publish" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | diff --git a/content/operate/rs/references/compatibility/commands/scripting.md b/content/operate/rs/references/compatibility/commands/scripting.md index d044af3a58..a45552a276 100644 --- a/content/operate/rs/references/compatibility/commands/scripting.md +++ b/content/operate/rs/references/compatibility/commands/scripting.md @@ -15,7 +15,7 @@ The following table shows which Redis Open Source [scripting and function comman ## Function commands -| Command | Redis
Enterprise | Redis
Cloud | Notes | +| Command | Redis
Software | Redis
Cloud | Notes | |:--------|:----------------------|:-----------------|:------| | [FCALL]({{< relref "/commands/fcall" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [FCALL_RO]({{< relref "/commands/fcall_ro" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | @@ -31,7 +31,7 @@ The following table shows which Redis Open Source [scripting and function comman ## Scripting commands -| Command | Redis
Enterprise | Redis
Cloud | Notes | +| Command | Redis
Software | Redis
Cloud | Notes | |:--------|:----------------------|:-----------------|:------| | [EVAL]({{< relref "/commands/eval" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [EVAL_RO]({{< relref "/commands/eval_ro" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | diff --git a/content/operate/rs/references/compatibility/commands/server.md b/content/operate/rs/references/compatibility/commands/server.md index cd5800b4fb..4a61b941fd 100644 --- a/content/operate/rs/references/compatibility/commands/server.md +++ b/content/operate/rs/references/compatibility/commands/server.md @@ -18,7 +18,7 @@ The following tables show which Redis Open Source [server management commands]({ Several access control list (ACL) commands are not available in Redis Enterprise. Instead, you can manage access controls from the [Redis Enterprise Software Cluster Manager UI]({{< relref "/operate/rs/security/access-control" >}}) and the [Redis Cloud console]({{< relref "/operate/rc/security/access-control/data-access-control/role-based-access-control.md" >}}). -| Command | Redis
Enterprise | Redis
Cloud | Notes | +| Command | Redis
Software | Redis
Cloud | Notes | |:--------|:----------------------|:-----------------|:------| | [ACL CAT]({{< relref "/commands/acl-cat" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | Not supported for [scripts]({{}}). | | [ACL DELUSER]({{< relref "/commands/acl-deluser" >}}) | ❌ Standard
❌ Active-Active | ❌ Standard
❌ Active-Active | | @@ -37,7 +37,7 @@ Several access control list (ACL) commands are not available in Redis Enterprise ## Configuration commands -| Command | Redis
Enterprise | Redis
Cloud | Notes | +| Command | Redis
Software | Redis
Cloud | Notes | |:--------|:----------------------|:-----------------|:------| | [CONFIG GET]({{< relref "/commands/config-get" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | [Only supports a subset of configuration settings.]({{< relref "/operate/rs/references/compatibility/config-settings" >}}) | | [CONFIG RESETSTAT]({{< relref "/commands/config-resetstat" >}}) | ❌ Standard
❌ Active-Active | ❌ Standard
❌ Active-Active | | @@ -47,7 +47,7 @@ Several access control list (ACL) commands are not available in Redis Enterprise ## General server commands -| Command | Redis
Enterprise | Redis
Cloud | Notes | +| Command | Redis
Software | Redis
Cloud | Notes | |:--------|:----------------------|:-----------------|:------| | [COMMAND]({{< relref "/commands/command" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [COMMAND COUNT]({{< relref "/commands/command-count" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | @@ -72,7 +72,7 @@ For Redis Enterprise Software, you can [manage Redis modules]({{< relref "/opera Redis Cloud manages modules for you and lets you [enable modules]({{< relref "/operate/rc/databases/create-database#modules" >}}) when you create a database. -| Command | Redis
Enterprise | Redis
Cloud | Notes | +| Command | Redis
Software | Redis
Cloud | Notes | |:--------|:----------------------|:-----------------|:------| | [MODULE HELP]({{< relref "/commands/module-help" >}}) | ❌ Standard
❌ Active-Active | ❌ Standard
❌ Active-Active | | | [MODULE LIST]({{< relref "/commands/module-list" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | @@ -85,7 +85,7 @@ Redis Cloud manages modules for you and lets you [enable modules]({{< relref "/o Although Redis Enterprise does not support certain monitoring commands, you can use the Cluster Manager UI to view Redis Enterprise Software [metrics]({{< relref "/operate/rs/monitoring" >}}) and [logs]({{< relref "/operate/rs/clusters/logging" >}}) or the Redis Cloud console to view Redis Cloud [metrics]({{< relref "/operate/rc/databases/monitor-performance" >}}) and [logs]({{< relref "/operate/rc/logs-reports/system-logs" >}}). -| Command | Redis
Enterprise | Redis
Cloud | Notes | +| Command | Redis
Software | Redis
Cloud | Notes | |:--------|:----------------------|:-----------------|:------| | [DBSIZE]({{< relref "/commands/dbsize" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [INFO]({{< relref "/commands/info" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | In Redis Enterprise, `INFO` returns a different set of fields than Redis Open Source.
Not supported for [scripts]({{}}). | @@ -112,7 +112,7 @@ Although Redis Enterprise does not support certain monitoring commands, you can Data persistence and backup commands are not available in Redis Enterprise. Instead, you can [manage data persistence]({{< relref "/operate/rs/databases/configure/database-persistence" >}}) and [backups]({{< relref "/operate/rs/databases/import-export/schedule-backups" >}}) from the Redis Enterprise Software Cluster Manager UI and the [Redis Cloud console]({{< relref "/operate/rc/databases/view-edit-database#durability-section" >}}). -| Command | Redis
Enterprise | Redis
Cloud | Notes | +| Command | Redis
Software | Redis
Cloud | Notes | |:--------|:----------------------|:-----------------|:------| | [BGREWRITEAOF]({{< relref "/commands/bgrewriteaof" >}}) | ❌ Standard
❌ Active-Active | ❌ Standard
❌ Active-Active | | | [BGSAVE]({{< relref "/commands/bgsave" >}}) | ❌ Standard
❌ Active-Active | ❌ Standard
❌ Active-Active | | @@ -124,7 +124,7 @@ Data persistence and backup commands are not available in Redis Enterprise. Inst Redis Enterprise automatically manages [replication]({{< relref "/operate/rs/databases/durability-ha/replication" >}}). -| Command | Redis
Enterprise | Redis
Cloud | Notes | +| Command | Redis
Software | Redis
Cloud | Notes | |:--------|:----------------------|:-----------------|:------| | [FAILOVER]({{< relref "/commands/failover" >}}) | ❌ Standard
❌ Active-Active | ❌ Standard
❌ Active-Active | | | [MIGRATE]({{< relref "/commands/migrate" >}}) | ❌ Standard
❌ Active-Active | ❌ Standard
❌ Active-Active | | diff --git a/content/operate/rs/references/compatibility/commands/transactions.md b/content/operate/rs/references/compatibility/commands/transactions.md index 727e14f50e..8336546e58 100644 --- a/content/operate/rs/references/compatibility/commands/transactions.md +++ b/content/operate/rs/references/compatibility/commands/transactions.md @@ -13,7 +13,7 @@ weight: 10 The following table shows which Redis Open Source [transaction commands]({{< relref "/commands" >}}?group=transactions) are compatible with standard and Active-Active databases in Redis Enterprise Software and Redis Cloud. -| Command | Redis
Enterprise | Redis
Cloud | Notes | +| Command | Redis
Software | Redis
Cloud | Notes | |:--------|:----------------------|:-----------------|:------| | [DISCARD]({{< relref "/commands/discard" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | | [EXEC]({{< relref "/commands/exec" >}}) | ✅ Standard
✅ Active-Active | ✅ Standard
✅ Active-Active | | diff --git a/content/operate/rs/references/metrics/_index.md b/content/operate/rs/references/metrics/_index.md index 4589d882db..cec36f39eb 100644 --- a/content/operate/rs/references/metrics/_index.md +++ b/content/operate/rs/references/metrics/_index.md @@ -28,7 +28,7 @@ you can connect your [Prometheus](https://prometheus.io/) and [Grafana](https:// See [Prometheus integration]({{< relref "/operate/rs/monitoring/prometheus_and_grafana" >}}) to learn how to connect Prometheus and Grafana to your Redis Enterprise database. -Redis Enterprise Software version 7.8.2 introduces a preview of the new metrics stream engine that exposes the v2 Prometheus scraping endpoint at `https://:8070/v2`. +The new metrics stream engine that exposes the v2 Prometheus scraping endpoint at `https://:8070/v2` is generally available as of Redis Enterprise Software version 8.0. This new engine exports all time-series metrics to external monitoring tools such as Grafana, DataDog, NewRelic, and Dynatrace using Prometheus. The new engine enables real-time monitoring, including full monitoring during maintenance operations, providing full visibility into performance during events such as shards' failovers and scaling operations. @@ -37,7 +37,7 @@ For a list of available metrics, see the following references: - [Prometheus metrics v1]({{}}) -- [Prometheus metrics v2 preview]({{}}) +- [Prometheus metrics v2]({{}}) If you are already using the existing scraping endpoint for integration, follow [this guide]({{}}) to transition and try the new engine. 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/references/metrics/prometheus-metrics-v2.md b/content/operate/rs/references/metrics/prometheus-metrics-v2.md index 5d7c064bec..599944df36 100644 --- a/content/operate/rs/references/metrics/prometheus-metrics-v2.md +++ b/content/operate/rs/references/metrics/prometheus-metrics-v2.md @@ -1,5 +1,5 @@ --- -Title: Prometheus metrics v2 preview +Title: Prometheus metrics v2 alwaysopen: false categories: - docs @@ -14,10 +14,6 @@ weight: 50 tocEmbedHeaders: true --- -{{}} -While the metrics stream engine is in preview, this document provides only a partial list of v2 metrics. More metrics will be added. -{{}} - You can [integrate Redis Enterprise Software with Prometheus and Grafana]({{}}) to create dashboards for important metrics. The v2 metrics in the following tables are available as of Redis Enterprise Software version 7.8.0. For help transitioning from v1 metrics to v2 PromQL, see [Prometheus v1 metrics and equivalent v2 PromQL]({{}}). diff --git a/content/operate/rs/references/rest-api/objects/bdb/_index.md b/content/operate/rs/references/rest-api/objects/bdb/_index.md index e978c937a8..6703f636c3 100644 --- a/content/operate/rs/references/rest-api/objects/bdb/_index.md +++ b/content/operate/rs/references/rest-api/objects/bdb/_index.md @@ -34,6 +34,8 @@ An API object that represents a managed database in the cluster. | authentication_ssl_crdt_certs | {{}}[{
"client_cert": string
}, ...]{{
}} List of authorized CRDT certificates
**client_cert**: X.509 PEM (base64) encoded certificate | | authorized_names | array of strings; Additional certified names (deprecated as of Redis Enterprise v6.4.2; use authorized_subjects instead) | | authorized_subjects | {{}}[{
"CN": string,
"O": string,
"OU": [array of strings],
"L": string,
"ST": string,
"C": string
}, ...]{{
}} A list of valid subjects used for additional certificate validations during TLS client authentication. All subject attributes are case-sensitive.
**Required subject fields**:
"CN" for Common Name
**Optional subject fields:**
"O" for Organization
"OU" for Organizational Unit (array of strings)
"L" for Locality (city)
"ST" for State/Province
"C" for 2-letter country code | +| auto_shards_balancing | boolean (default: false); Automatically balance database shards | +| auto_shards_balancing_grace_period | integer (default: 120); Time to wait before auto sharding is initiated | | auto_upgrade | boolean (default: false); Upgrade the database automatically after a cluster upgrade | | avoid_nodes | array of strings; Cluster node UIDs to avoid when placing the database's shards and binding its endpoints | | background_op | Deprecated as of Redis Enterprise Software v7.8.2. Use [`GET /v1/actions/bdb/`]({{}}) instead.
{{}}[{
"status": string,
"name": string,
"error": object,
"progress": number
}, ...]{{
}} (read-only); **progress**: Percent of completed steps in current operation | @@ -48,9 +50,11 @@ An API object that represents a managed database in the cluster. | bigstore | boolean (default: false); Database bigstore option | | bigstore_ram_size | integer (default: 0); Memory size of bigstore RAM part. | | bigstore_ram_weights | {{}}[{
"shard_uid": integer,
"weight": number
}, ...]{{
}} List of shard UIDs and their bigstore RAM weights;
**shard_uid**: Shard UID;
**weight**: Relative weight of RAM distribution | -| bigstore_version | The database's `bigstore_version`:
• `1` for Auto Tiering (Redis on Flash version 1). Default version.
• `2` for Redis Flex (Redis on Flash version 2) on databases that support it. Can only be used with the `speedb` driver. | +| bigstore_version | The database's `bigstore_version`:
• `1` for Auto Tiering (Redis on Flash version 1). Default version.
• `2` for Redis Flex (Redis on Flash version 2) on databases that support it. Can only be used with the `speedb` driver.

You can only choose the `bigstore_version` for databases with Redis version 7.4. Database versions earlier than 7.4 use `bigstore_version` `1`. Database versions 8.0 and later use `bigstore_version` `2`. | | client_cert_subject_validation_type | Enables additional certificate validations that further limit connections to clients with valid certificates during TLS client authentication.
Values:
**disabled**: Authenticates clients with valid certificates. No additional validations are enforced.
**san_cn**: A client certificate is valid only if its Common Name (CN) matches an entry in the list of valid subjects. Ignores other Subject attributes.
**full_subject**: A client certificate is valid only if its Subject attributes match an entry in the list of valid subjects. | | conns | integer (default 5); Number of internal proxy connections | +| conns_global_maximum_dedicated | integer (default: 0); Defines the maximum number of dedicated server connections for a given database. The total number across all workers. The default is 0 for unlimited. | +| conns_minimum_dedicated | integer (default: 2); Number of dedicated server connections the DMC has per worker per shard | | conns_type | Connections limit type
Values:
**‘per-thread’**
‘per-shard’ | | crdt | boolean (default: false); Use CRDT-based data types for multi-master replication | | crdt_causal_consistency | boolean (default: false); Causal consistent CRDB. | @@ -76,6 +80,7 @@ An API object that represents a managed database in the cluster. | db_conns_auditing | boolean; Enables/deactivates [database connection auditing]({{< relref "/operate/rs/security/audit-events" >}}) | | default_user | boolean (default: true); Allow/disallow a default user to connect | | disabled_commands | string (default: ); Redis commands which are disabled in db | +| disconnect_clients_on_password_removal | boolean (default: false); Controls whether client connections using removed, revoked, or rotated passwords are actively disconnected | | dns_address_master | string; Database private address endpoint FQDN (read-only) (deprecated as of Redis Enterprise v4.3.3) | | email_alerts | boolean (default: false); Send email alerts for this DB | | endpoint | string; Latest bound endpoint. Used when reconfiguring an endpoint via update | @@ -101,6 +106,7 @@ An API object that represents a managed database in the cluster. | last_backup_time | string; Time of last successful backup (read-only) | | last_changed_time | string; Last administrative configuration change (read-only) | | last_export_time | string; Time of last successful export (read-only) | +| link_sconn_on_full_request | Feature-flag for DMC behaviour on linking client request
Values:
'enabled'
**'disabled'**
'ssl_only' | | max_aof_file_size | integer; Maximum size for shard's AOF file (bytes). Default 300GB, (on bigstore DB 150GB) | | max_aof_load_time | integer (default: 3600); Maximum time shard's AOF reload should take (seconds). | | max_client_pipeline | integer (default: 200); Maximum number of pipelined commands per connection. Maximum value is 2047. | @@ -111,7 +117,7 @@ An API object that represents a managed database in the cluster. | memory_size | integer (default: 0); Database memory limit (0 is unlimited), expressed in bytes. | | metrics_export_all | boolean; Enable/disable exposing all shard metrics through the metrics exporter | | mkms | boolean (default: true); Are MKMS (Multi Key Multi Slots) commands supported? | -| module_list | {{}}[{
"module_id": string,
"module_args": [
u'string',
u'null'],
"module_name": string,
"semantic_version": string
}, ...]{{
}} List of modules associated with the database

**module_id**: Module UID (deprecated; use `module_name` instead)
**module_args**: Module command-line arguments (pattern does not allow special characters &,\<,>,")
**module_name**: Module's name
**semantic_version**: Module's semantic version (deprecated; use `module_args` instead)

**module_id** and **semantic_version** are optional as of Redis Enterprise Software v7.4.2 and deprecated as of v7.8.2. | +| module_list | {{}}[{
"module_id": string,
"module_args": [
u'string',
u'null'],
"module_name": string,
"semantic_version": string
}, ...]{{
}} List of modules associated with the database

**module_id**: Module UID (deprecated; use `module_name` instead)
**module_args**: Module command-line arguments (deprecated; use the module objects for [search]({{}}), [timeseries]({{}}), and [probabilistic]({{}}) instead)
**module_name**: Module's name
**semantic_version**: Module's semantic version (deprecated; use `module_args` instead)

**module_id** and **semantic_version** are optional as of Redis Enterprise Software v7.4.2 and deprecated as of v7.8.2.
**module_args** is deprecated as of Redis Enterprise Software v8.0. | | mtls_allow_outdated_certs | boolean; An optional mTLS relaxation flag for certs verification | | mtls_allow_weak_hashing | boolean; An optional mTLS relaxation flag for certs verification | | multi_commands_opt | If set to `batch`, it reduces the overhead of transaction management by batching multiple commands into a single transaction.
Values:
**disabled**: Turns off the optimization.
**batch**: Enables the optimization.
**auto**: Uses the [cluster's `multi_commands_opt` setting]({{}}). | @@ -120,13 +126,18 @@ An API object that represents a managed database in the cluster. | oss_cluster_api_preferred_endpoint_type | Endpoint type in the OSS cluster API
Values:
**‘ip’**
‘hostname’ | | oss_cluster_api_preferred_ip_type | Internal/external IP type in OSS cluster API. Default value for new endpoints
Values:
**'internal'**
'external' | | oss_sharding | boolean (default: false); An alternative to `shard_key_regex` for using the common case of the OSS shard hashing policy | +| partial_request_timeout_seconds | integer (default: 3); When a client connection sends a command, takes a server connection, and stops writing before the command is complete, it causes head-of-line blocking on this server connection. Such commands will time out after this many seconds and the client connection will be closed. | | port | integer; TCP port on which the database is available. Generated automatically if omitted and returned as 0 | +| preemptive_drain_timeout_seconds | integer (default: 2); Timeout in seconds for preemptive drain of client connections before a shard is taken down | +| probabilistic | [complex object]({{< relref "/operate/rs/references/rest-api/objects/bdb/probabilistic" >}}); Configuration fields for probabilistic data structures. | | proxy_policy | The default policy used for proxy binding to endpoints
Values:
'single'
'all-master-shards'
'all-nodes' | +| query_performance_factor | [complex object]({{< relref "/operate/rs/references/rest-api/objects/bdb/query_performance_factor" >}}); Configures query performance factor and related fields | | rack_aware | boolean (default: false); Require the database to always replicate across multiple racks | | recovery_wait_time | integer (default: -1); Defines how many seconds to wait for the persistence file to become available during auto recovery. After the wait time expires, auto recovery completes with potential data loss. The default `-1` means to wait forever. | | redis_version | string; Version of the redis-server processes: e.g. 6.0, 5.0-big | | repl_backlog_size | string; Redis replication backlog size ('auto' or size in bytes) | | replica_read_only | boolean (default: false); If `true`, enables an Active-Passive setup where Replica Of databases only allow read operations. Only configurable during database creation and cannot be changed later. | +| replica_sconns_on_demand | Reduces DMC internode connections by at least 50%, conserving sockets, file descriptors, and KEEPALIVE traffic.
Values:
**'enabled'**
'disabled' | | replica_sources | array of [syncer_sources]({{< relref "/operate/rs/references/rest-api/objects/bdb/syncer_sources" >}}) objects; Remote endpoints of database to sync from. See the 'bdb -\> replica_sources' section | | [replica_sync]({{< relref "/operate/rs/references/rest-api/objects/bdb/replica_sync" >}}) | Enable, disable, or pause syncing from specified replica_sources
Values:
'enabled'
**'disabled'**
'paused'
'stopped' | | replica_sync_connection_alarm_timeout_seconds | integer (default: 0); If the syncer takes longer than the specified number of seconds to connect to a replica, raise a connection alarm | @@ -135,9 +146,12 @@ An API object that represents a managed database in the cluster. | resp3 | boolean (default: true); Enables or deactivates RESP3 support | | roles_permissions | {{}}[{
"role_uid": integer,
"redis_acl_uid": integer
}, ...]{{
}} | | sched_policy | Controls how server-side connections are used when forwarding traffic to shards.
Values:
**cmp**: Closest to max_pipelined policy. Pick the connection with the most pipelined commands that has not reached the max_pipelined limit.
**mru**: Try to use most recently used connections.
**spread**: Try to use all connections.
**mnp**: Minimal pipeline policy. Pick the connection with the least pipelined commands. | +| search | [complex object]({{< relref "/operate/rs/references/rest-api/objects/bdb/search" >}}); Configuration fields for search and query. | | shard_block_crossslot_keys | boolean (default: false); In Lua scripts, prevent use of keys from different hash slots within the range owned by the current shard | | shard_block_foreign_keys | boolean (default: true); In Lua scripts, `foreign_keys` prevent use of keys which could reside in a different shard (foreign keys) | | shard_key_regex | Custom keyname-based sharding rules.
`[{"regex": string}, ...]`
To use the default rules you should set the value to:
`[{"regex": ".*\\{(?.*)\\}.*"}, {"regex": "(?.*)"}]` | +| shard_imbalance_threshold | number (default: 314572800); Automatically balances shards only if their imbalance is greater than this threshold | +| shard_imbalance_threshold_percentage | integer (default: 20); Automatically balances shards only if their imbalance percentage is greater than this threshold | | shard_list | array of integers; Cluster unique IDs of all database shards. | | sharding | boolean (default: false); Cluster mode (server-side sharding). When true, shard hashing rules must be provided by either `oss_sharding` or `shard_key_regex` | | shards_count | integer, (range: 1-512) (default: 1); Number of database server-side shards | @@ -156,9 +170,11 @@ An API object that represents a managed database in the cluster. | syncer_log_level | Minimum syncer log level to log. Only logs with this level or higher will be logged.
Values:
‘crit’
‘error’
‘warn’
**‘info’**
‘trace’
‘debug’ | | syncer_mode | The syncer for replication between database instances is either on a single node (centralized) or on each node that has a proxy according to the proxy policy (distributed). (read-only)
Values:
'distributed'
'centralized' | | tags | {{}}[{
"key": string,
"value": string
}, ...]{{
}} Optional list of tag objects attached to the database. Each tag requires a key-value pair.
**key**: Represents the tag's meaning and must be unique among tags (pattern does not allow special characters &,\<,>,")
**value**: The tag's value.| +| timeseries | [complex object]({{< relref "/operate/rs/references/rest-api/objects/bdb/timeseries" >}}); Configuration fields for timeseries. | | tls_mode | Require TLS-authenticated and encrypted connections to the database
Values:
'enabled'
**'disabled'**
'replica_ssl' | | tracking_table_max_keys | integer; The client-side caching invalidation table size. 0 makes the cache unlimited. | | type | Type of database
Values:
**'redis'**
'memcached' | | use_nodes | array of strings; Cluster node UIDs to use for database shards and bound endpoints | +| use_selective_flush | boolean (default: true); If true, enable selective flush of destination shards | | version | string; Database compatibility version: full Redis/memcached version number, such as 6.0.6. This value can only change during database creation and database upgrades.| | wait_command | boolean (default: true); Supports Redis wait command (read-only) | diff --git a/content/operate/rs/references/rest-api/objects/bdb/probabilistic.md b/content/operate/rs/references/rest-api/objects/bdb/probabilistic.md new file mode 100644 index 0000000000..a063e89762 --- /dev/null +++ b/content/operate/rs/references/rest-api/objects/bdb/probabilistic.md @@ -0,0 +1,24 @@ +--- +Title: Probabilistic data structures configuration object +alwaysopen: false +categories: +- docs +- operate +- rs +description: Configuration object for probabilistic data structures +linkTitle: probabilistic +weight: $weight +--- + +Configuration fields for probabilistic data structures. + +| Field | Type/Value | Description | +|-------|------------|-------------| +| bf-error-rate | number (range: 0-1) (default: 0.01) | Error ratio for new Bloom filters. These defaults are applied to each new Bloom filter upon its creation. | +| bf-initial-size | integer (range: 1-1048576) (default: 100) | Initial capacity for new Bloom filters. These defaults are applied to each new Bloom filter upon its creation. | +| bf-expansion-factor | integer (range: 0-32768) (default: 2) | Expansion factor for new Bloom filters. These defaults are applied to each new Bloom filter upon its creation. | +| cf-initial-size | integer (range: 1-1048576) (default: 1024) | Initial capacity for new Cuckoo filters. These defaults are applied to each new Cuckoo filter upon its creation. | +| cf-bucket-size | integer (range: 1-255) (default: 2) | Number of items in each bucket for new Cuckoo filters. These defaults are applied to each new Cuckoo filter upon its creation. | +| cf-max-iterations | integer (range: 1-65535) (default: 20) | Maximum iterations for new Cuckoo filters. These defaults are applied to each new Cuckoo filter upon its creation. | +| cf-expansion-factor | integer (range: 0-32768) (default: 1) | Expansion factor for new Cuckoo filters. These defaults are applied to each new Cuckoo filter upon its creation. | +| cf-max-expansions | integer (range: 1-65536) (default: 32) | Maximum expansions for new Cuckoo filters. These defaults are applied to each new Cuckoo filter upon its creation. | diff --git a/content/operate/rs/references/rest-api/objects/bdb/query_performance_factor.md b/content/operate/rs/references/rest-api/objects/bdb/query_performance_factor.md new file mode 100644 index 0000000000..3ca0208b0b --- /dev/null +++ b/content/operate/rs/references/rest-api/objects/bdb/query_performance_factor.md @@ -0,0 +1,19 @@ +--- +Title: Query performance factor object +alwaysopen: false +categories: +- docs +- operate +- rs +description: Configuration object for query performance factor +linkTitle: query_performance_factor +weight: $weight +--- + +Configures [query performance factor]({{}}) and related fields. + +| Field | Type/Value | Description | +|-------|------------|-------------| +| active | boolean (default: false) | If true, enables query performance factor for the database | +| scaling_factor | integer (range: 0-16) (default: 0) | Scales the magnitude of the query performance factor | + diff --git a/content/operate/rs/references/rest-api/objects/bdb/search.md b/content/operate/rs/references/rest-api/objects/bdb/search.md new file mode 100644 index 0000000000..000ec657fe --- /dev/null +++ b/content/operate/rs/references/rest-api/objects/bdb/search.md @@ -0,0 +1,57 @@ +--- +Title: Search and query configuration object +alwaysopen: false +categories: +- docs +- operate +- rs +description: Configuration object for search and query. +linkTitle: search +weight: $weight +--- + +Configuration fields for search and query. + +| Field | Type/Value | Description | +|-------|------------|-------------| +| search-timeout | integer (range: 1-9223372036854775807) (default: 500) | The maximum amount of time in milliseconds that a search query is allowed to run. | +| search-ext-load | string | If present, RediSearch will try to load an extension dynamic library from its specified file path. Requires a database restart to take effect. | +| search-max-doctablesize | integer (range: 1-18446744073709551615) (default: 1000000) | The maximum size of the internal hash table used for storing the documents. Requires a database restart to take effect. | +| search-friso-ini | string | If present, load the custom Chinese dictionary from the specified path. Requires a database restart to take effect. | +| search-cursor-max-idle | integer (range: 1-9223372036854775807) (default: 300000) | The maximum idle time in milliseconds that can be set to the cursor api. | +| search-partial-indexed-docs | integer (range: 0-9223372036854775807) (default: 0) | Enable or turn off the Redis command filter. Requires a database restart to take effect. | +| search-gc-scan-size | integer (range: 1-9223372036854775807) (default: 100) | The bulk size of the internal GC used for cleaning up indexes. Requires a database restart to take effect. | +| search-no-gc | boolean (default: false) | If set, Garbage Collection is deactivated for all indexes. Requires a database restart to take effect. | +| search-fork-gc-run-interval | integer (range: 1-9223372036854775807) (default: 30) | Interval in seconds between two consecutive fork GC runs. | +| search-fork-gc-retry-interval | integer (range: 1-9223372036854775807) (default: 5) | Interval in seconds in which RediSearch will retry to run fork GC in case of a failure. | +| search-fork-gc-clean-threshold | integer (range: 1-9223372036854775807) (default: 100) | The fork GC will only start to clean when the number of not cleaned documents exceeds this threshold; otherwise, it will skip this run. | +| search-vss-max-resize | integer (range: 0-4294967295) (default: 0) | The maximum memory resize for vector similarity indexes in bytes. | +| search-union-iterator-heap | integer (range: 1-9223372036854775807) (default: 20) | The minimum number of iterators in a union from which the iterator will switch to heap-based implementation. | +| search-min-phonetic-term-len | integer (range: 1-9223372036854775807) (default: 3) | Minimum length of term to be considered for phonetic matching. | +| search-multi-text-slop | integer (range: 1-4294967295) (default: 100) | Set RediSearch delta used to increase positional offsets between array slots for multi-text values. Requires a database restart to take effect. | +| search-raw-docid-encoding | boolean (default: false) | Turn off compression for DocID inverted index. Boost CPU performance. Requires a database restart to take effect. | +| search-_print-profile-clock | boolean (default: true) | Turn off print of time for ft.profile. For testing only. | +| search-_free-resource-on-thread | boolean (default: true) | Determine whether some index resources are free on a second thread | +| search-_numeric-compress | boolean (default: false) | Enable legacy compression of double to float. | +| search-bg-index-sleep-gap | integer (range: 1-4294967295) (default: 100) | The number of iterations to run while performing background indexing before we call usleep(1) (sleep for 1 micro-second) and make sure that we allow Redis to process other commands. Requires a database restart to take effect. | +| search-_numeric-ranges-parents | integer (range: 0-2) (default: 0) | Keep numeric ranges in numeric tree parent nodes of leaves for `x` | +| search-fork-gc-sleep-before-exit | integer (range: 0-9223372036854775807) (default: 0) | Set the number of seconds for the fork GC to sleep before exists, should always be set to 0 (other then on tests). | +| search-no-mem-pools | boolean (default: false) | Set RediSearch to run without memory pools. Requires a database restart to take effect. | +| search-_prioritize-intersect-union-children | boolean (default: false) | Intersection iterator orders the children iterators by their relative estimated number of results in ascending order. If the first iterators have a lower count of results, skips a larger number of results, which translates into faster iteration. If this flag is set, we use this optimization in a way where union iterators are being factorized by the number of their own children, so that we sort by the number of children times the overall estimated number of results instead. | +| search-conn-per-shard | integer (range: 0-9223372036854775807) (default: 0) | Number of connections to each shard in the cluster. Default to 0. If 0, the number of connections is set to `WORKERS` + 1. | +| search-cursor-reply-threshold | integer (range: 1-9223372036854775807) (default: 1) | Maximum number of replies to accumulate before triggering `_FT.CURSOR READ` on the shards | +| search-threads | integer | Maximum number of replies to accumulate before triggering `_FT.CURSOR READ` on the shards. Requires a database restart to take effect. | +| search-default-dialect | integer (range: 1-4) (default: 1) | The default DIALECT to be used by FT.CREATE, FT.AGGREGATE, FT.EXPLAIN, FT.EXPLAINCLI, and FT.SPELLCHECK. | +| search-topology-validation-timeout | integer (range: 0-9223372036854775807) (default: 30000) | Sets the timeout for topology validation (in milliseconds). After this timeout, any pending requests will be processed, even if the topology is not fully connected. | +| search-workers | integer (range: 0-8192) (default: 0) | Number of worker threads to use for query processing and background tasks. | +| search-min-operation-workers | integer (range: 0-8192) (default: 4) | Number of worker threads to use for background tasks when the server is in an operation event. | +| search-tiered-hnsw-buffer-limit | integer (range: 0-9223372036854775807) (default: 1024) | Sets the buffer limit threshold for vector similarity tiered HNSW index. If using WORKERS for indexing and the number of vectors waiting in the buffer to be indexed exceeds this limit, inserts new vectors directly into HNSW. Requires a database restart to take effect. | +| search-workers-priority-bias-threshold | integer (range: 0-9223372036854775807) (default: 1) | The number of high-priority tasks to run at any given time by the worker thread pool, before executing low-priority tasks. After this number of high-priority tasks are running, the worker thread pool will run high and low-priority tasks alternately. Requires a database restart to take effect. | +| search-on-timeout | "RETURN"
"FAIL"
(default: "RETURN") | The response policy for queries that exceed the TIMEOUT setting can be one of the following: RETURN / FAIL | +| search-min-prefix | integer (range: 1-9223372036854775807) (default: 2) | The minimum number of characters allowed for prefix queries (e.g., hel*) | +| search-min-stem-len | integer (range: 2-4294967295) (default: 4) | The minimum word length to stem | +| search-max-prefix-expansions | integer (range: 1-9223372036854775807) (default: 200) | The maximum number of expansions allowed for query prefixes | +| search-max-search-results | integer (range: 0-9223372036854775807) (default: 1000000) | The maximum number of results to be returned by the FT.SEARCH command if LIMIT is used | +| search-max-aggregate-results | integer (range: 0-9223372036854775807) (default: 2147483648) | The maximum number of results to be returned by the FT.AGGREGATE command if LIMIT is used | +| search-io-threads | integer (range: 1-256) (default: 1) | The number of threads the coordinator is using for IO threads to handle network to/from other shards | +| search-enable-unstable-features | boolean (default: false) | Enable unstable features. | diff --git a/content/operate/rs/references/rest-api/objects/bdb/timeseries.md b/content/operate/rs/references/rest-api/objects/bdb/timeseries.md new file mode 100644 index 0000000000..d9481a3238 --- /dev/null +++ b/content/operate/rs/references/rest-api/objects/bdb/timeseries.md @@ -0,0 +1,24 @@ +--- +Title: Timeseries configuration object +alwaysopen: false +categories: +- docs +- operate +- rs +description: Configuration object timeseries. +linkTitle: timeseries +weight: $weight +--- + +Configuration fields for timeseries. + +| Field | Type/Value | Description | +|-------|------------|-------------| +| ts-num-threads | integer (range: 1-16) | Number of threads for time series operations. Requires a database restart to take effect. | +| ts-compaction-policy | string | Default compaction rules. This default value is applied to each new time series upon its creation | +| ts-retention-policy | integer (range: 0-9223372036854775807) (default: 0) | Default retention period, in milliseconds. This default value is applied to each new time series upon its creation, but if COMPACTION_POLICY is specified, it is overridden for created compactions as specified in COMPACTION_POLICY. | +| ts-duplicate-policy | "BLOCK"
"FIRST"
"LAST"
"MIN"
"MAX"
"SUM"
(default: "BLOCK") | Default policy for handling insertion of multiple samples with identical timestamps. This default value is applied to each new time series upon its creation. | +| ts-encoding | "COMPRESSED"
"UNCOMPRESSED"
(default: "COMPRESSED") | Default chunk encoding for automatically-created compacted time series. This default value is applied to each new compacted time series automatically created due to the creation of a new time series when COMPACTION_POLICY is specified. | +| ts-chunk-size-bytes | integer (range: 48-1048576) (default: 4096) | Default initial allocation size, in bytes, for the data part of each new chunk. This default value is applied to each new time series upon its creation. | +| ts-ignore-max-time-diff | integer (range: 0-9223372036854775807) (default: 0) | Default maximum time difference that can be expired to consider a new insertion to be a duplicate. This default value is applied to each new time series upon its creation. | +| ts-ignore-max-val-diff | number (default: 0) | Default maximum value difference for a new insertion to be considered a duplicate. This default value is applied to each new time series upon its creation. | diff --git a/content/operate/rs/references/rest-api/objects/bootstrap/_index.md b/content/operate/rs/references/rest-api/objects/bootstrap/_index.md index 9b14b1d6e1..df3331d459 100644 --- a/content/operate/rs/references/rest-api/objects/bootstrap/_index.md +++ b/content/operate/rs/references/rest-api/objects/bootstrap/_index.md @@ -18,9 +18,9 @@ A bootstrap configuration object. | action | 'create_cluster'
'join_cluster'
'recover_cluster' | Action to perform | | cluster | [cluster_identity]({{< relref "/operate/rs/references/rest-api/objects/bootstrap/cluster_identity" >}}) object | Cluster to join or create | | cnm_https_port | integer | Port to join a cluster with non-default cnm_https port | -| crdb_coordinator_port | integer, (range: 1024-65535) (default: 9081) | CRDB coordinator port | +| crdb_coordinator_port | integer, (range: 1024-65535) (default: 9081) | CRDB coordinator port | | credentials | [credentials]({{< relref "/operate/rs/references/rest-api/objects/bootstrap/credentials" >}}) object | Cluster admin credentials | -| dns_suffixes | {{}} +| dns_suffixes | object | Explicit configuration of DNS suffixes
{{}} [{ "name": string, "cluster_default": boolean, @@ -28,14 +28,14 @@ A bootstrap configuration object. "use_internal_addr": boolean, "slaves": array }, ...] -{{}} | Explicit configuration of DNS suffixes
**name**: DNS suffix name
**cluster_default**: Should this suffix be the default cluster suffix
**use_aaaa_ns**: Should AAAA records be published for NS records
**use_internal_addr**: Should internal cluster IPs be published for databases
**slaves**: List of replica servers that should be published as NS and notified | -| envoy_admin_port | integer, (range: 1024-65535) | Envoy admin port. Changing this port during runtime might result in an empty response because envoy serves as the cluster gateway.| -| envoy_mgmt_server_port | integer, (range: 1024-65535) | Envoy management server port| -| gossip_envoy_admin_port | integer, (range: 1024-65535) | Gossip envoy admin port| +{{
}}
**name**: DNS suffix name
**cluster_default**: Should this suffix be the default cluster suffix
**use_aaaa_ns**: Should AAAA records be published for NS records
**use_internal_addr**: Should internal cluster IPs be published for databases
**slaves**: List of replica servers that should be published as NS and notified | +| envoy_admin_port | integer, (range: 1024-65535) | Envoy admin port. Changing this port during runtime might result in an empty response because envoy serves as the cluster gateway.| +| envoy_mgmt_server_port | integer, (range: 1024-65535) | Envoy management server port| +| gossip_envoy_admin_port | integer, (range: 1024-65535) | Gossip envoy admin port| | license | string | License string. If not provided, a trial license is set by default. | | max_retries | integer | Max number of retries in case of recoverable errors | | node | [node_identity]({{< relref "/operate/rs/references/rest-api/objects/bootstrap/node_identity" >}}) object | Node description | -| policy | [policy]({{< relref "/operate/rs/references/rest-api/objects/bootstrap/policy" >}}) object | Policy object | +| policy | [policy]({{< relref "/operate/rs/references/rest-api/objects/bootstrap/policy" >}}) object | Policy object (deprecated; use [`PUT /v1/cluster/policy`]({{< relref "/operate/rs/references/rest-api/requests/cluster/policy#put-cluster-policy" >}}) after cluster creation instead) | | recovery_filename | string | Name of backup file to recover from | | required_version | string | This node can only join the cluster if all nodes in the cluster have a version greater than the required_version (deprecated as of Redis Enterprise Software v7.8.6) | | retry_time | integer | Max waiting time between retries (in seconds) | diff --git a/content/operate/rs/references/rest-api/objects/cluster/_index.md b/content/operate/rs/references/rest-api/objects/cluster/_index.md index 34f740a945..a6723a379a 100644 --- a/content/operate/rs/references/rest-api/objects/cluster/_index.md +++ b/content/operate/rs/references/rest-api/objects/cluster/_index.md @@ -16,70 +16,73 @@ An API object that represents the cluster. | Name | Type/Value | Description | |------|------------|-------------| | alert_settings | [alert_settings]({{< relref "/operate/rs/references/rest-api/objects/cluster/alert_settings" >}}) object | Cluster and node alert settings | -| bigstore_driver | 'speedb'
'rocksdb' | Storage engine for [Auto Tiering]({{}}) | -| cluster_ssh_public_key | string | Cluster's autogenerated SSH public key | -| cm_port | integer, (range: 1024-65535) | UI HTTPS listening port | -| cm_session_timeout_minutes | integer (default: 15) | The timeout (in minutes) for the session to the CM | +| bigstore_driver | "speedb"
"rocksdb" | Storage engine for [Auto Tiering]({{}}) | +| cluster_ssh_public_key | string | Cluster's autogenerated SSH public key | +| cm_port | integer, (range: 1024-65535) | UI HTTPS listening port | +| cm_session_timeout_minutes | integer (default: 15) | The timeout (in minutes) for the session to the CM | | cnm_http_max_threads_per_worker | integer (default: 10) | Maximum number of threads per worker in the `cnm_http` service (deprecated) | -| cnm_http_port | integer, (range: 1024-65535) | API HTTP listening port | +| cnm_http_port | integer, (range: 1024-65535) | API HTTP listening port | | cnm_http_workers | integer (default: 1) | Number of workers in the `cnm_http` service | -| cnm_https_port | integer, (range: 1024-65535) | API HTTPS listening port | +| cnm_https_port | integer, (range: 1024-65535) | API HTTPS listening port | | control_cipher_suites | string | Specifies the enabled ciphers for the control plane. The ciphers are specified in the format understood by the BoringSSL library. | | control_cipher_suites_tls_1_3 | string | Specifies the enabled TLS 1.3 ciphers for the control plane. The ciphers are specified in the format understood by the BoringSSL library. (read-only) | -| crdb_coordinator_port | integer, (range: 1024-65535) (default: 9081) | CRDB coordinator port | -| crdt_rest_client_retries | integer | Maximum number of retries for the REST client used by the Active-Active management API | -| crdt_rest_client_timeout | integer | Timeout for REST client used by the Active-Active management API | +| crdb_coordinator_port | integer, (range: 1024-65535) (default: 9081) | CRDB coordinator port | +| crdt_rest_client_retries | integer | Maximum number of retries for the REST client used by the Active-Active management API | +| crdt_rest_client_timeout | integer | Timeout for REST client used by the Active-Active management API | | created_time | string | Cluster creation date (read-only) | | data_cipher_list | string | Specifies the enabled ciphers for the data plane. The ciphers are specified in the format understood by the OpenSSL library. | | data_cipher_suites_tls_1_3 | string | Specifies the enabled TLS 1.3 ciphers for the data plane. | | debuginfo_path | string | Path to a local directory used when generating support packages | -| default_non_sharded_proxy_policy | string (default: single) | Default proxy_policy for newly created non-sharded databases' endpoints (read-only) | -| default_sharded_proxy_policy | string (default: all-master-shards) | Default proxy_policy for newly created sharded databases' endpoints (read-only) | -| email_alerts | boolean (default: false) | Send node/cluster email alerts (requires valid SMTP and email_from settings) | +| default_non_sharded_proxy_policy | string (default: single) | Default proxy_policy for newly created non-sharded databases' endpoints (read-only) | +| default_sharded_proxy_policy | string (default: all-master-shards) | Default proxy_policy for newly created sharded databases' endpoints (read-only) | +| disconnect_clients_on_password_removal | "enabled"
"disabled"
**"auto"** | This flag controls whether client connections using removed, revoked, or rotated passwords are actively disconnected | +| email_alerts | boolean (default: false) | Send node/cluster email alerts (requires valid SMTP and email_from settings) | | email_from | string | Sender email for automated emails | -| encrypt_pkeys | boolean (default: false) | Enable or turn off encryption of private keys | -| envoy_admin_port | integer, (range: 1024-65535) | Envoy admin port. Changing this port during runtime might result in an empty response because envoy serves as the cluster gateway.| -| envoy_max_downstream_connections | integer, (range: 100-2048) | The max downstream connections envoy is allowed to open | -| envoy_mgmt_server_port | integer, (range: 1024-65535) | Envoy management server port| -| gossip_envoy_admin_port | integer, (range: 1024-65535) | Gossip envoy admin port| -| handle_redirects | boolean (default: false) | Handle API HTTPS requests and redirect to the master node internally | -| http_support | boolean (default: false) | Enable or turn off HTTP support | +| encrypt_pkeys | boolean (default: false) | Enable or turn off encryption of private keys | +| envoy_admin_port | integer, (range: 1024-65535) | Envoy admin port. Changing this port during runtime might result in an empty response because envoy serves as the cluster gateway.| +| envoy_max_downstream_connections | integer, (range: 100-2048) | The max downstream connections envoy is allowed to open | +| envoy_mgmt_server_port | integer, (range: 1024-65535) | Envoy management server port| +| gossip_envoy_admin_port | integer, (range: 1024-65535) | Gossip envoy admin port| +| handle_redirects | boolean (default: false) | Handle API HTTPS requests and redirect to the master node internally | +| http_support | boolean (default: false) | Enable or turn off HTTP support | | logrotate_settings | [logrotate_settings]({{}}) object | Settings for logrotate configuration | -| min_control_TLS_version | '1.2'
'1.3' | The minimum version of TLS protocol which is supported at the control path | -| min_data_TLS_version | '1.2'
'1.3' | The minimum version of TLS protocol which is supported at the data path | -| min_sentinel_TLS_version | '1.2'
'1.3' | The minimum version of TLS protocol which is supported at the data path | -| mtls_authorized_subjects | array | {{}}[{
"CN": string,
"O": string,
"OU": [array of strings],
"L": string,
"ST": string,
"C": string
}, ...]{{
}} A list of valid subjects used for additional certificate validations during TLS client authentication. All subject attributes are case-sensitive.
**Required subject fields**:
"CN" for Common Name
**Optional subject fields:**
"O" for Organization
"OU" for Organizational Unit (array of strings)
"L" for Locality (city)
"ST" for State/Province
"C" for 2-letter country code | +| metrics_auth | boolean (default: false) | If true, requires authentication for requests to the metrics exporter | +| min_control_TLS_version | "1.2"
"1.3" | The minimum version of TLS protocol which is supported at the control path | +| min_data_TLS_version | "1.2"
"1.3" | The minimum version of TLS protocol which is supported at the data path | +| min_sentinel_TLS_version | "1.2"
"1.3" | The minimum version of TLS protocol which is supported at the data path | +| mtls_authorized_subjects | array | {{}}[{
"CN": string,
"O": string,
"OU": [array of strings],
"L": string,
"ST": string,
"C": string
}, ...]{{
}} A list of valid subjects used for additional certificate validations during TLS client authentication. All subject attributes are case-sensitive.
**Required subject fields**:
"CN" for Common Name
**Optional subject fields:**
"O" for Organization
"OU" for Organizational Unit (array of strings)
"L" for Locality (city)
"ST" for State/Province
"C" for 2-letter country code | | mtls_certificate_authentication | boolean | Require authentication of client certificates for mTLS connections to the cluster. The API_CA certificate should be configured as a prerequisite. | -| mtls_client_cert_subject_validation_type | `disabled`
`san_cn`
`full_subject` | Enables additional certificate validations that further limit connections to clients with valid certificates during TLS client authentication.
Values:
**disabled**: Authenticates clients with valid certificates. No additional validations are enforced.
**san_cn**: A client certificate is valid only if its Common Name (CN) matches an entry in the list of valid subjects. Ignores other Subject attributes.
**full_subject**: A client certificate is valid only if its Subject attributes match an entry in the list of valid subjects. | -| multi_commands_opt | **`disabled`**
`batch`
`force_disabled` | Determines the default `multi_commands_opt` setting for databases in the cluster. If set to `batch`, it reduces the overhead of transaction management by batching multiple commands into a single transaction.
Values:
**disabled**: Turns off the optimization for all databases except those that override it on the [bdb level]({{}}). Default value.
**batch**: Enables the optimization on all databases except those that override it on the [bdb level]({{}}).
**force_disabled**: Disables the optimization for all databases, even those that override it on the [bdb level]({{}}). | +| mtls_client_cert_subject_validation_type | "disabled"
"san_cn"
"full_subject" | Enables additional certificate validations that further limit connections to clients with valid certificates during TLS client authentication.
Values:
**disabled**: Authenticates clients with valid certificates. No additional validations are enforced.
**san_cn**: A client certificate is valid only if its Common Name (CN) matches an entry in the list of valid subjects. Ignores other Subject attributes.
**full_subject**: A client certificate is valid only if its Subject attributes match an entry in the list of valid subjects. | +| multi_commands_opt | **"disabled"**
"batch"
"force_disabled" | Determines the default `multi_commands_opt` setting for databases in the cluster. If set to `batch`, it reduces the overhead of transaction management by batching multiple commands into a single transaction.
Values:
**disabled**: Turns off the optimization for all databases except those that override it on the [bdb level]({{}}). Default value.
**batch**: Enables the optimization on all databases except those that override it on the [bdb level]({{}}).
**force_disabled**: Disables the optimization for all databases, even those that override it on the [bdb level]({{}}). | | name | string | Cluster's fully qualified domain name (read-only) | -| password_complexity | boolean (default: false) | Enforce password complexity policy | -| password_expiration_duration | integer (default: 0) | The number of days a password is valid until the user is required to replace it | +| password_complexity | boolean (default: false) | Enforce password complexity policy | +| password_expiration_duration | integer (default: 0) | The number of days a password is valid until the user is required to replace it | | password_min_length | integer, (range: 8-256) (default: 8) | The minimum length required for a password. | | proxy_certificate | string | Cluster's proxy certificate | | proxy_max_ccs_disconnection_time | integer | Cluster-wide proxy timeout policy between proxy and CCS | | rack_aware | boolean | Cluster operates in a rack-aware mode (read-only) | | reserved_ports | array of strings | List of reserved ports and/or port ranges to avoid using for database endpoints (for example `"reserved_ports": ["11000", "13000-13010"]`) | +| replica_sconns_on_demand | "enabled"
"disabled"
**"auto"** | Reduces DMC internode connections by at least 50%, conserving sockets, file descriptors, and `KEEPALIVE` traffic | | robust_crdt_syncer | boolean (default: false) | If `true`, enables the robust syncer for Active-Active databases | | s3_ca_cert | string | Filepath to the PEM-encoded CA certificate to use for validating TLS connections to the S3 server | | s3_url | string | Specifies the URL for S3 export and import | | saslauthd_ldap_conf | string | saslauthd LDAP configuration | -| sentinel_cipher_suites | array | Specifies the list of enabled ciphers for the sentinel service. The supported ciphers are those implemented by the [cipher_suites.go]() package. | +| sentinel_cipher_suites | array | Specifies the list of enabled ciphers for the sentinel service. The supported ciphers are those implemented by the [cipher_suites.go]() package. | | sentinel_cipher_suites_tls_1_3 | string | Specifies the list of enabled TLS 1.3 ciphers for the discovery (sentinel) service. The supported ciphers are those implemented by the [cipher_suites.go]() package.(read-only) | -| sentinel_tls_mode | 'allowed'
'disabled'
'required' | Determines whether the discovery service allows, blocks, or requires TLS connections (previously named `sentinel_ssl_policy`)
**allowed**: Allows both TLS and non-TLS connections
**disabled**: Allows only non-TLS connections
**required**: Allows only TLS connections | -| slave_ha | boolean (default: false) | Enable the replica high-availability mechanism (read-only) | -| slave_ha_bdb_cooldown_period | integer (default: 86400) | Time in seconds between runs of the replica high-availability mechanism on different nodes on the same database (read-only) | -| slave_ha_cooldown_period | integer (default: 3600) | Time in seconds between runs of the replica high-availability mechanism on different nodes (read-only) | -| slave_ha_grace_period | integer (default: 900) | Time in seconds between a node failure and when the replica high-availability mechanism starts relocating shards (read-only) | +| sentinel_tls_mode | "allowed"
"disabled"
"required" | Determines whether the discovery service allows, blocks, or requires TLS connections (previously named `sentinel_ssl_policy`)
**allowed**: Allows both TLS and non-TLS connections
**disabled**: Allows only non-TLS connections
**required**: Allows only TLS connections | +| slave_ha | boolean (default: false) | Enable the replica high-availability mechanism (read-only) | +| slave_ha_bdb_cooldown_period | integer (default: 86400) | Time in seconds between runs of the replica high-availability mechanism on different nodes on the same database (read-only) | +| slave_ha_cooldown_period | integer (default: 3600) | Time in seconds between runs of the replica high-availability mechanism on different nodes (read-only) | +| slave_ha_grace_period | integer (default: 900) | Time in seconds between a node failure and when the replica high-availability mechanism starts relocating shards (read-only) | | slowlog_in_sanitized_support | boolean | Whether to include slowlogs in the sanitized support package | | smtp_host | string | SMTP server for automated emails | | smtp_password | string | SMTP server password | | smtp_port | integer | SMTP server port for automated emails | -| smtp_tls_mode | 'none'
'starttls'
'tls' | Specifies which TLS mode to use for SMTP access | -| smtp_use_tls | boolean (default: false) | Use TLS for SMTP access (deprecated as of Redis Enterprise v4.3.3, use smtp_tls_mode field instead) | +| smtp_tls_mode | "none"
"starttls"
"tls" | Specifies which TLS mode to use for SMTP access | +| smtp_use_tls | boolean (default: false) | Use TLS for SMTP access (deprecated as of Redis Enterprise v4.3.3, use smtp_tls_mode field instead) | | smtp_username | string | SMTP server username (pattern does not allow special characters &,\<,>,") | | syncer_certificate | string | Cluster's syncer certificate | -| upgrade_mode | boolean (default: false) | Is cluster currently in upgrade mode | -| use_external_ipv6 | boolean (default: true) | Should redislabs services listen on ipv6 | -| use_ipv6 | boolean (default: true) | Should redislabs services listen on ipv6 (deprecated as of Redis Enterprise v6.4.2, replaced with use_external_ipv6) | -| wait_command | boolean (default: true) | Supports Redis wait command (read-only) | +| upgrade_mode | boolean (default: false) | Is cluster currently in upgrade mode | +| use_external_ipv6 | boolean (default: true) | Should redislabs services listen on ipv6 | +| use_ipv6 | boolean (default: true) | Should redislabs services listen on ipv6 (deprecated as of Redis Enterprise v6.4.2, replaced with use_external_ipv6) | +| wait_command | boolean (default: true) | Supports Redis wait command (read-only) | diff --git a/content/operate/rs/references/rest-api/objects/cluster/alert_settings.md b/content/operate/rs/references/rest-api/objects/cluster/alert_settings.md index 5cbbcbcd17..9866dc5920 100644 --- a/content/operate/rs/references/rest-api/objects/cluster/alert_settings.md +++ b/content/operate/rs/references/rest-api/objects/cluster/alert_settings.md @@ -29,6 +29,7 @@ weight: $weight | cluster_ocsp_status_revoked | boolean (default: false) | OCSP certificate status is REVOKED | | cluster_ram_overcommit | boolean (default: false) | RAM committed to databases is larger than cluster total RAM | | cluster_too_few_nodes_for_replication | boolean (default: false) | Replication requires at least 2 nodes in the cluster | +| cluster_users_count_approaches_limit | [cluster_alert_settings_with_threshold]({{< relref "/operate/rs/references/rest-api/objects/cluster/cluster_alert_settings_with_threshold" >}}) object | Number of users approaches the maximum limit of 32,000 users. This alert is enabled with a 90% threshold by default on new clusters. | | node_aof_slow_disk_io | boolean (default: false) | AOF reaching disk I/O limits | node_checks_error | boolean (default: false) | Some node checks have failed | | node_cpu_utilization | [cluster_alert_settings_with_threshold]({{< relref "/operate/rs/references/rest-api/objects/cluster/cluster_alert_settings_with_threshold" >}}) object | Node CPU utilization has reached the threshold value (% of the utilization limit) | diff --git a/content/operate/rs/references/rest-api/objects/cluster_settings.md b/content/operate/rs/references/rest-api/objects/cluster_settings.md index c0376a9be1..cced6f86ff 100644 --- a/content/operate/rs/references/rest-api/objects/cluster_settings.md +++ b/content/operate/rs/references/rest-api/objects/cluster_settings.md @@ -15,61 +15,61 @@ Cluster resources management policy | Name | Type/Value | Description | |------|------------|-------------| | acl_pubsub_default | `resetchannels`
`allchannels` | Default pub/sub ACL rule for all databases in the cluster:
•`resetchannels` blocks access to all channels (restrictive)
•`allchannels` allows access to all channels (permissive) | -| auto_recovery | boolean (default: false) | Defines whether to use automatic recovery after shard failure | -| automatic_node_offload | boolean (default: true) | Defines whether the cluster will automatically migrate shards from a node, in case the node is overbooked | -| bigstore_migrate_node_threshold | integer | Minimum free memory (excluding reserved memory) allowed on a node before automatic migration of shards from it to free more memory | -| bigstore_migrate_node_threshold_p | integer | Minimum free memory (excluding reserved memory) allowed on a node before automatic migration of shards from it to free more memory | -| bigstore_provision_node_threshold | integer | Minimum free memory (excluding reserved memory) allowed on a node before new shards can no longer be added to it | -| bigstore_provision_node_threshold_p | integer | Minimum free memory (excluding reserved memory) allowed on a node before new shards can no longer be added to it | +| auto_recovery | boolean (default: false) | Defines whether to use automatic recovery after shard failure | +| automatic_node_offload | boolean (default: true) | Defines whether the cluster will automatically migrate shards from a node, in case the node is overbooked | +| bigstore_migrate_node_threshold | integer | Minimum free memory (excluding reserved memory) allowed on a node before automatic migration of shards from it to free more memory | +| bigstore_migrate_node_threshold_p | integer | Minimum free memory (excluding reserved memory) allowed on a node before automatic migration of shards from it to free more memory | +| bigstore_provision_node_threshold | integer | Minimum free memory (excluding reserved memory) allowed on a node before new shards can no longer be added to it | +| bigstore_provision_node_threshold_p | integer | Minimum free memory (excluding reserved memory) allowed on a node before new shards can no longer be added to it | | data_internode_encryption | boolean | Enable/deactivate encryption of the data plane internode communication | | db_conns_auditing | boolean | [Audit connections]({{< relref "/operate/rs/security/audit-events" >}}) for new databases by default if set to true. | -| default_bigstore_version | **`1`**
`2` | Determines the default value of new databases' `bigstore_version`:
• `1` for Auto Tiering (Redis on Flash version 1). Default version.
• `2` for Redis Flex (Redis on Flash version 2) on databases that support it. Can only be used with the `speedb` driver. | -| default_concurrent_restore_actions | integer | Default number of restore actions allowed at the same time. Set to 0 to allow any number of simultaneous restore actions. | +| default_bigstore_version | **`1`**
`2` | Determines the default value of `bigstore_version` for new databases with Redis version 7.4:
• `1` for Auto Tiering (Redis on Flash version 1). Default version.
• `2` for Redis Flex (Redis on Flash version 2) on databases that support it. Can only be used with the `speedb` driver. | +| default_concurrent_restore_actions | integer | Default number of restore actions allowed at the same time. Set to 0 to allow any number of simultaneous restore actions. | | default_fork_evict_ram | boolean | If true, the bdbs should evict data from RAM to ensure successful replication or persistence | -| default_non_sharded_proxy_policy | `single`

`all-master-shards`

`all-nodes` | Default proxy_policy for newly created non-sharded databases' endpoints | +| default_non_sharded_proxy_policy | `single`

`all-master-shards`

`all-nodes` | Default proxy_policy for newly created non-sharded databases' endpoints | | default_oss_sharding | boolean (default: false) | Default hashing policy to use for new databases. This field is for future use only and should not be changed. | | default_oss_cluster | boolean (default: false) | Default `oss_cluster` setting for new databases. Enables the OSS Cluster API if `true`, or turns it off if `false`. | -| default_provisioned_redis_version | string | Default Redis version | -| default_recovery_wait_time | integer (default: -1) | The default time for new databases to wait for the persistence file to be available during automatic recovery. -1 means wait forever. | -| default_sharded_proxy_policy | `single`

`all-master-shards`

`all-nodes` | Default proxy_policy for newly created sharded databases' endpoints | +| default_provisioned_redis_version | string | Default Redis version | +| default_recovery_wait_time | integer (default: -1) | The default time for new databases to wait for the persistence file to be available during automatic recovery. -1 means wait forever. | +| default_sharded_proxy_policy | `single`

`all-master-shards`

`all-nodes` | Default proxy_policy for newly created sharded databases' endpoints | | default_shards_placement | `dense`
`sparse` | Default shards_placement for a newly created databases | -| default_tracking_table_max_keys_policy | integer (default: 1000000) | Defines the default value of the client-side caching invalidation table size for new databases. 0 makes the cache unlimited. | +| default_tracking_table_max_keys_policy | integer (default: 1000000) | Defines the default value of the client-side caching invalidation table size for new databases. 0 makes the cache unlimited. | | diskless_repl | `yes`
`no` (default: yes) | If `yes`, enable default Redis diskless replication mechanism (deprecated; use `repl_diskless` instead) | -| endpoint_rebind_propagation_grace_time | integer | Time to wait between the addition and removal of a proxy | -| evict_node_use_free_memory | boolean | When evicting a node, use the free memory instead of the provisional memory to check if the shards from the old node fit on the new one | -| expose_hostnames_for_all_suffixes | boolean (default: false) | If true, enables exposing hostnames for non-default DNS suffixes | -| failure_detection_sensitivity | `high`
`low` | Predefined thresholds and timeouts for failure detection (previously known as `watchdog_profile`)
• `high` (previously `local-network`) – high failure detection sensitivity, lower thresholds, faster failure detection and failover
• `low` (previously `cloud`) – low failure detection sensitivity, higher tolerance for latency variance (also called network jitter) | -| hide_user_data_from_log | boolean (default: false) | Set to `true` to enable the `hide-user-data-from-log` Redis configuration setting, which avoids logging user data | -| login_lockout_counter_reset_after | integer | Number of seconds that must elapse between failed sign in attempts before the lockout counter is reset to 0. | +| endpoint_rebind_propagation_grace_time | integer | Time to wait between the addition and removal of a proxy | +| evict_node_use_free_memory | boolean | When evicting a node, use the free memory instead of the provisional memory to check if the shards from the old node fit on the new one | +| expose_hostnames_for_all_suffixes | boolean (default: false) | If true, enables exposing hostnames for non-default DNS suffixes | +| failure_detection_sensitivity | `high`
`low` | Predefined thresholds and timeouts for failure detection (previously known as `watchdog_profile`)
• `high` (previously `local-network`) – high failure detection sensitivity, lower thresholds, faster failure detection and failover
• `low` (previously `cloud`) – low failure detection sensitivity, higher tolerance for latency variance (also called network jitter) | +| hide_user_data_from_log | boolean (default: false) | Set to `true` to enable the `hide-user-data-from-log` Redis configuration setting, which avoids logging user data | +| login_lockout_counter_reset_after | integer | Number of seconds that must elapse between failed sign in attempts before the lockout counter is reset to 0. | | login_lockout_duration | integer | Duration (in secs) of account lockout. If set to 0, the account lockout will persist until released by an admin. | | login_lockout_threshold | integer | Number of failed sign in attempts allowed before locking a user account | -| master_healthcheck_api_auth | boolean (default: true) | Defines if authentication is required by the local `master_healthcheck` API | +| master_healthcheck_api_auth | boolean (default: true) | Defines if authentication is required by the local `master_healthcheck` API | | max_redis_forks | integer (default: 0) | Maximum number of background processes forked from shards that can exist on the node at any given time. 0 means unlimited. | | max_saved_events_per_type | integer | Maximum saved events per event type | | max_simultaneous_backups | integer (default: 4) | Maximum number of backup processes allowed at the same time | -| metrics_exporter_expose_bdb_name | boolean (default: false) | If true, adds a label with the database name to relevant metrics | +| metrics_exporter_expose_bdb_name | boolean (default: false) | If true, adds a label with the database name to relevant metrics | | parallel_shards_upgrade | integer | Maximum number of shards to upgrade in parallel | | max_slave_full_syncs | integer (default: 0) | Maximum number of simultaneous replica full syncs that can run at any given time. 0 means unlimited. | -| oss_cluster_api_preferred_endpoint_type | `ip`
`hostname` (default: ip) | Determines the default endpoint type in the OSS Cluster API for new endpoints | -| oss_cluster_api_preferred_ip_type | `internal`
`external` (default: internal) | Determines the default IP type in the OSS Cluster API for new endpoints | -| persistence_cleanup_grace_time | integer | Time in seconds before an unmodified file is considered to be stale and to be removed by persistence cleanup | -| persistence_cleanup_scan_interval | string | [CRON expression](https://en.wikipedia.org/wiki/Cron#CRON_expression) that defines the Redis cleanup schedule | +| oss_cluster_api_preferred_endpoint_type | `ip`
`hostname` (default: ip) | Determines the default endpoint type in the OSS Cluster API for new endpoints | +| oss_cluster_api_preferred_ip_type | `internal`
`external` (default: internal) | Determines the default IP type in the OSS Cluster API for new endpoints | +| persistence_cleanup_grace_time | integer | Time in seconds before an unmodified file is considered to be stale and to be removed by persistence cleanup | +| persistence_cleanup_scan_interval | string | [CRON expression](https://en.wikipedia.org/wiki/Cron#CRON_expression) that defines the Redis cleanup schedule | | persistent_node_removal | boolean | When removing a node, wait for persistence files to be created for all migrated shards | | rack_aware | boolean | Cluster operates in a rack-aware mode | -| redis_migrate_node_threshold | integer | Minimum free memory (excluding reserved memory) allowed on a node before automatic migration of shards from it to free more memory | -| redis_migrate_node_threshold_p | integer | Minimum free memory (excluding reserved memory) allowed on a node before automatic migration of shards from it to free more memory | -| redis_provision_node_threshold | integer | Minimum free memory (excluding reserved memory) allowed on a node before new shards can no longer be added to it | -| redis_provision_node_threshold_p | integer | Minimum free memory (excluding reserved memory) allowed on a node before new shards can no longer be added to it | +| redis_migrate_node_threshold | integer | Minimum free memory (excluding reserved memory) allowed on a node before automatic migration of shards from it to free more memory | +| redis_migrate_node_threshold_p | integer | Minimum free memory (excluding reserved memory) allowed on a node before automatic migration of shards from it to free more memory | +| redis_provision_node_threshold | integer | Minimum free memory (excluding reserved memory) allowed on a node before new shards can no longer be added to it | +| redis_provision_node_threshold_p | integer | Minimum free memory (excluding reserved memory) allowed on a node before new shards can no longer be added to it | | redis_upgrade_policy | **`major`**
`latest` | Create/upgrade Redis Enterprise software on databases in the cluster by compatibility with major versions or latest versions of Redis Open Source | | repl_diskless | boolean (default: true) | If true, enables the default Redis diskless replication mechanism | -| resp3_default | boolean (default: true) | Determines the default value of the `resp3` option upon upgrading a database to version 7.2 | +| resp3_default | boolean (default: true) | Determines the default value of the `resp3` option upon upgrading a database to version 7.2 | | shards_overbooking | boolean | If true, all databases' memory_size is ignored during shards placement | | show_internals | boolean | Show internal databases (and their shards and endpoints) REST APIs | -| show_metrics_during_state_machine | boolean | Show metrics during state machine operations | +| show_metrics_during_state_machine | boolean | Show metrics during state machine operations | | slave_ha | boolean | Enable the replica high-availability mechanism. Deprecated as of Redis Enterprise Software v7.2.4. | -| slave_ha_bdb_cooldown_period | integer | Time in seconds between runs of the replica high-availability mechanism on different nodes on the same database | -| slave_ha_cooldown_period | integer | Time in seconds between runs of the replica high-availability mechanism on different nodes on the same database | +| slave_ha_bdb_cooldown_period | integer | Time in seconds between runs of the replica high-availability mechanism on different nodes on the same database | +| slave_ha_cooldown_period | integer | Time in seconds between runs of the replica high-availability mechanism on different nodes on the same database | | slave_ha_grace_period | integer | Time in seconds between a node failure and when the replica high-availability mechanism starts relocating shards | | slow_log_max_len | integer (default: 1024) | Set max slow log entries in debug info | | use_librdb | boolean | If true, new databases use the new RDB parser instead of the old one | -| witness_disk_update_frequency_divisor | integer (default: 3) | Redis Enterprise Software updates the witness disk every `node_max_update_time / witness_disk_update_frequency_divisor` seconds | +| witness_disk_update_frequency_divisor | integer (default: 3) | Redis Enterprise Software updates the witness disk every `node_max_update_time / witness_disk_update_frequency_divisor` seconds | diff --git a/content/operate/rs/references/rest-api/objects/user.md b/content/operate/rs/references/rest-api/objects/user.md index 150b046699..62278759e1 100644 --- a/content/operate/rs/references/rest-api/objects/user.md +++ b/content/operate/rs/references/rest-api/objects/user.md @@ -14,17 +14,18 @@ weight: $weight |------|------------|-------------| | uid | integer | User's unique ID | | account_id | integer | SM account ID | -| action_uid | string | Action UID. If it exists, progress can be tracked by the `GET` `/actions/{uid}` API request (read-only) | +| action_uid | string | Action UID. If it exists, progress can be tracked by the `GET /actions/{uid}` API request (read-only) | | auth_method | **'regular'**
'certificate'
'entraid' | User's authentication method | | bdbs_email_alerts | complex object | UIDs of databases that user will receive alerts for | -| certificate_subject_line | string | The certificate’s subject line as defined by RFC2253. Used for certificate-based authentication users only. | +| certificate_subject_line | string | The certificate’s subject line as defined by RFC2253. Used for certificate-based authentication users only. | | cluster_email_alerts | boolean | Activate cluster email alerts for a user | | email | string | User's email (pattern matching only ASCII characters) | -| email_alerts | boolean (default: true) | Activate email alerts for a user | +| email_alerts | boolean (default: true) | Activate email alerts for a user | +| last_login | integer | UNIX timestamp of the user's last login time. This denotes the last time an authentication with the user's credentials was successful. (read-only) | | name | string | User's name (pattern does not allow non-ASCII and special characters &,\<,>,") | -| password | string | User's password. If `password_hash_method` is set to `1`, the password should be hashed using SHA-256. The format before hashing is `username:clustername:password`. | -| password_hash_method | '1' | Used when password is passed pre-hashed to specify the hashing method | -| password_issue_date | string | The date in which the password was set (read-only) | +| password | string | User's password. If `password_hash_method` is set to `1`, the password should be hashed using SHA-256. The format before hashing is `username:clustername:password`. | +| password_hash_method | '1' | Used when password is passed pre-hashed to specify the hashing method | +| password_issue_date | string | The date in which the password was set (read-only) | | role | 'admin'
'cluster_member'
'cluster_viewer'
'db_member'
**'db_viewer'**
'user_manager'
'none' | User's [role]({{< relref "/operate/rs/references/rest-api/permissions#roles" >}}) | | role_uids | array of integers | UIDs of user's roles for role-based access control | | status | 'active'
'locked'
'password_expired' | User sign-in status (read-only)
**active**: able to sign in
**locked**: unable to sign in
**password_expired**: unable to sign in because the password expired | diff --git a/content/operate/rs/references/rest-api/permissions.md b/content/operate/rs/references/rest-api/permissions.md index dfa8a690a2..eb13ae617c 100644 --- a/content/operate/rs/references/rest-api/permissions.md +++ b/content/operate/rs/references/rest-api/permissions.md @@ -34,9 +34,9 @@ Available management roles include: | Role | Permissions | |------|-------------| | none | No permissions | -| admin | [add_cluster_module](#add_cluster_module), [cancel_cluster_action](#cancel_cluster_action), [cancel_node_action](#cancel_node_action), [config_ldap](#config_ldap), [config_ocsp](#config_ocsp), [create_bdb](#create_bdb), [create_crdb](#create_crdb), [create_ldap_mapping](#create_ldap_mapping), [create_new_user](#create_new_user), [create_redis_acl](#create_redis_acl), [create_role](#create_role), [delete_bdb](#delete_bdb), [delete_cluster_module](#delete_cluster_module), [delete_crdb](#delete_crdb), [delete_ldap_mapping](#delete_ldap_mapping), [delete_redis_acl](#delete_redis_acl), [delete_role](#delete_role), [delete_user](#delete_user), [edit_bdb_module](#edit_bdb_module), [failover_shard](#failover_shard), [flush_crdb](#flush_crdb), [install_new_license](#install_new_license), [migrate_shard](#migrate_shard), [purge_instance](#purge_instance), [reset_bdb_current_backup_status](#reset_bdb_current_backup_status), [reset_bdb_current_export_status](#reset_bdb_current_export_status), [reset_bdb_current_import_status](#reset_bdb_current_import_status), [start_bdb_export](#start_bdb_export), [start_bdb_import](#start_bdb_import), [start_bdb_recovery](#start_bdb_recovery), [start_cluster_action](#start_cluster_action), [start_node_action](#start_node_action), [test_ocsp_status](#test_ocsp_status), [update_bdb](#update_bdb), [update_bdb_alerts](#update_bdb_alerts), [update_bdb_with_action](#update_bdb_with_action), [update_cluster](#update_cluster), [update_crdb](#update_crdb), [update_ldap_mapping](#update_ldap_mapping), [update_node](#update_node), [update_proxy](#update_proxy), [update_redis_acl](#update_redis_acl), [update_role](#update_role), [update_user](#update_user), [view_all_bdb_stats](#view_all_bdb_stats), [view_all_bdbs_alerts](#view_all_bdbs_alerts), [view_all_bdbs_info](#view_all_bdbs_info), [view_all_ldap_mappings_info](#view_all_ldap_mappings_info), [view_all_nodes_alerts](#view_all_nodes_alerts), [view_all_nodes_checks](#view_all_nodes_checks), [view_all_nodes_info](#view_all_nodes_info), [view_all_nodes_stats](#view_all_nodes_stats), [view_all_proxies_info](#view_all_proxies_info), [view_all_redis_acls_info](#view_all_redis_acls_info), [view_all_roles_info](#view_all_roles_info), [view_all_shard_stats](#view_all_shard_stats), [view_all_users_info](#view_all_users_info), [view_bdb_alerts](#view_bdb_alerts), [view_bdb_info](#view_bdb_info), [view_bdb_recovery_plan](#view_bdb_recovery_plan), [view_bdb_stats](#view_bdb_stats), [view_cluster_alerts](#view_cluster_alerts), [view_cluster_info](#view_cluster_info), [view_cluster_keys](#view_cluster_keys), [view_cluster_modules](#view_cluster_modules), [view_cluster_stats](#view_cluster_stats), [view_crdb](#view_crdb), [view_crdb_list](#view_crdb_list), [view_crdb_task](#view_crdb_task), [view_crdb_task_list](#view_crdb_task_list), [view_debugging_info](#view_debugging_info), [view_endpoint_stats](#view_endpoint_stats), [view_ldap_config](#view_ldap_config), [view_ldap_mapping_info](#view_ldap_mapping_info), [view_license](#view_license), [view_logged_events](#view_logged_events), [view_node_alerts](#view_node_alerts), [view_node_check](#view_node_check), [view_node_info](#view_node_info), [view_node_stats](#view_node_stats), [view_ocsp_config](#view_ocsp_config), [view_ocsp_status](#view_ocsp_status), [view_proxy_info](#view_proxy_info), [view_redis_acl_info](#view_redis_acl_info), [view_redis_pass](#view_redis_pass), [view_role_info](#view_role_info), [view_shard_stats](#view_shard_stats), [view_status_of_all_node_actions](#view_status_of_all_node_actions), [view_status_of_cluster_action](#view_status_of_cluster_action), [view_status_of_node_action](#view_status_of_node_action), [view_user_info](#view_user_info) | -| cluster_member | [create_bdb](#create_bdb), [create_crdb](#create_crdb), [delete_bdb](#delete_bdb), [delete_crdb](#delete_crdb), [edit_bdb_module](#edit_bdb_module), [failover_shard](#failover_shard), [flush_crdb](#flush_crdb), [migrate_shard](#migrate_shard), [purge_instance](#purge_instance), [reset_bdb_current_backup_status](#reset_bdb_current_backup_status), [reset_bdb_current_export_status](#reset_bdb_current_export_status), [reset_bdb_current_import_status](#reset_bdb_current_import_status), [start_bdb_export](#start_bdb_export), [start_bdb_import](#start_bdb_import), [start_bdb_recovery](#start_bdb_recovery), [update_bdb](#update_bdb), [update_bdb_alerts](#update_bdb_alerts), [update_bdb_with_action](#update_bdb_with_action), [update_crdb](#update_crdb), [view_all_bdb_stats](#view_all_bdb_stats), [view_all_bdbs_alerts](#view_all_bdbs_alerts), [view_all_bdbs_info](#view_all_bdbs_info), [view_all_nodes_alerts](#view_all_nodes_alerts), [view_all_nodes_checks](#view_all_nodes_checks), [view_all_nodes_info](#view_all_nodes_info), [view_all_nodes_stats](#view_all_nodes_stats), [view_all_proxies_info](#view_all_proxies_info), [view_all_redis_acls_info](#view_all_redis_acls_info), [view_all_roles_info](#view_all_roles_info), [view_all_shard_stats](#view_all_shard_stats), [view_bdb_alerts](#view_bdb_alerts), [view_bdb_info](#view_bdb_info), [view_bdb_recovery_plan](#view_bdb_recovery_plan), [view_bdb_stats](#view_bdb_stats), [view_cluster_alerts](#view_cluster_alerts), [view_cluster_info](#view_cluster_info), [view_cluster_keys](#view_cluster_keys), [view_cluster_modules](#view_cluster_modules), [view_cluster_stats](#view_cluster_stats), [view_crdb](#view_crdb), [view_crdb_list](#view_crdb_list), [view_crdb_task](#view_crdb_task), [view_crdb_task_list](#view_crdb_task_list), [view_debugging_info](#view_debugging_info), [view_endpoint_stats](#view_endpoint_stats), [view_license](#view_license), [view_logged_events](#view_logged_events), [view_node_alerts](#view_node_alerts), [view_node_check](#view_node_check), [view_node_info](#view_node_info), [view_node_stats](#view_node_stats), [view_proxy_info](#view_proxy_info), [view_redis_acl_info](#view_redis_acl_info), [view_redis_pass](#view_redis_pass), [view_role_info](#view_role_info), [view_shard_stats](#view_shard_stats), [view_status_of_all_node_actions](#view_status_of_all_node_actions), [view_status_of_cluster_action](#view_status_of_cluster_action), [view_status_of_node_action](#view_status_of_node_action) | -| cluster_viewer | [view_all_bdb_stats](#view_all_bdb_stats), [view_all_bdbs_alerts](#view_all_bdbs_alerts), [view_all_bdbs_info](#view_all_bdbs_info), [view_all_nodes_alerts](#view_all_nodes_alerts), [view_all_nodes_checks](#view_all_nodes_checks), [view_all_nodes_info](#view_all_nodes_info), [view_all_nodes_stats](#view_all_nodes_stats), [view_all_proxies_info](#view_all_proxies_info), [view_all_redis_acls_info](#view_all_redis_acls_info), [view_all_roles_info](#view_all_roles_info), [view_all_shard_stats](#view_all_shard_stats), [view_bdb_alerts](#view_bdb_alerts), [view_bdb_info](#view_bdb_info), [view_bdb_recovery_plan](#view_bdb_recovery_plan), [view_bdb_stats](#view_bdb_stats), [view_cluster_alerts](#view_cluster_alerts), [view_cluster_info](#view_cluster_info), [view_cluster_modules](#view_cluster_modules), [view_cluster_stats](#view_cluster_stats), [view_crdb](#view_crdb), [view_crdb_list](#view_crdb_list), [view_crdb_task](#view_crdb_task), [view_crdb_task_list](#view_crdb_task_list), [view_endpoint_stats](#view_endpoint_stats), [view_license](#view_license), [view_logged_events](#view_logged_events), [view_node_alerts](#view_node_alerts), [view_node_check](#view_node_check), [view_node_info](#view_node_info), [view_node_stats](#view_node_stats), [view_proxy_info](#view_proxy_info), [view_redis_acl_info](#view_redis_acl_info), [view_role_info](#view_role_info), [view_shard_stats](#view_shard_stats), [view_status_of_all_node_actions](#view_status_of_all_node_actions), [view_status_of_cluster_action](#view_status_of_cluster_action), [view_status_of_node_action](#view_status_of_node_action) | +| admin | [add_cluster_module](#add_cluster_module), [cancel_cluster_action](#cancel_cluster_action), [cancel_node_action](#cancel_node_action), [config_ldap](#config_ldap), [config_ocsp](#config_ocsp), [create_bdb](#create_bdb), [create_crdb](#create_crdb), [create_ldap_mapping](#create_ldap_mapping), [create_new_user](#create_new_user), [create_redis_acl](#create_redis_acl), [create_role](#create_role), [delete_bdb](#delete_bdb), [delete_cluster_module](#delete_cluster_module), [delete_crdb](#delete_crdb), [delete_ldap_mapping](#delete_ldap_mapping), [delete_redis_acl](#delete_redis_acl), [delete_role](#delete_role), [delete_user](#delete_user), [edit_bdb_module](#edit_bdb_module), [failover_shard](#failover_shard), [flush_crdb](#flush_crdb), [install_new_license](#install_new_license), [migrate_shard](#migrate_shard), [purge_instance](#purge_instance), [reset_bdb_current_backup_status](#reset_bdb_current_backup_status), [reset_bdb_current_export_status](#reset_bdb_current_export_status), [reset_bdb_current_import_status](#reset_bdb_current_import_status), [start_bdb_export](#start_bdb_export), [start_bdb_import](#start_bdb_import), [start_bdb_recovery](#start_bdb_recovery), [start_cluster_action](#start_cluster_action), [start_node_action](#start_node_action), [test_ocsp_status](#test_ocsp_status), [update_bdb](#update_bdb), [update_bdb_alerts](#update_bdb_alerts), [update_bdb_with_action](#update_bdb_with_action), [update_cluster](#update_cluster), [update_crdb](#update_crdb), [update_ldap_mapping](#update_ldap_mapping), [update_node](#update_node), [update_proxy](#update_proxy), [update_redis_acl](#update_redis_acl), [update_role](#update_role), [update_user](#update_user), [view_all_bdb_stats](#view_all_bdb_stats), [view_all_bdbs_alerts](#view_all_bdbs_alerts), [view_all_bdbs_info](#view_all_bdbs_info), [view_all_ldap_mappings_info](#view_all_ldap_mappings_info), [view_all_metrics](#view_all_metrics), [view_all_nodes_alerts](#view_all_nodes_alerts), [view_all_nodes_checks](#view_all_nodes_checks), [view_all_nodes_info](#view_all_nodes_info), [view_all_nodes_stats](#view_all_nodes_stats), [view_all_proxies_info](#view_all_proxies_info), [view_all_redis_acls_info](#view_all_redis_acls_info), [view_all_roles_info](#view_all_roles_info), [view_all_shard_stats](#view_all_shard_stats), [view_all_users_info](#view_all_users_info), [view_bdb_alerts](#view_bdb_alerts), [view_bdb_info](#view_bdb_info), [view_bdb_recovery_plan](#view_bdb_recovery_plan), [view_bdb_stats](#view_bdb_stats), [view_cluster_alerts](#view_cluster_alerts), [view_cluster_info](#view_cluster_info), [view_cluster_keys](#view_cluster_keys), [view_cluster_modules](#view_cluster_modules), [view_cluster_stats](#view_cluster_stats), [view_crdb](#view_crdb), [view_crdb_list](#view_crdb_list), [view_crdb_task](#view_crdb_task), [view_crdb_task_list](#view_crdb_task_list), [view_debugging_info](#view_debugging_info), [view_endpoint_stats](#view_endpoint_stats), [view_ldap_config](#view_ldap_config), [view_ldap_mapping_info](#view_ldap_mapping_info), [view_license](#view_license), [view_logged_events](#view_logged_events), [view_node_alerts](#view_node_alerts), [view_node_check](#view_node_check), [view_node_info](#view_node_info), [view_node_stats](#view_node_stats), [view_ocsp_config](#view_ocsp_config), [view_ocsp_status](#view_ocsp_status), [view_proxy_info](#view_proxy_info), [view_redis_acl_info](#view_redis_acl_info), [view_redis_pass](#view_redis_pass), [view_role_info](#view_role_info), [view_shard_stats](#view_shard_stats), [view_status_of_all_node_actions](#view_status_of_all_node_actions), [view_status_of_cluster_action](#view_status_of_cluster_action), [view_status_of_node_action](#view_status_of_node_action), [view_user_info](#view_user_info) | +| cluster_member | [create_bdb](#create_bdb), [create_crdb](#create_crdb), [delete_bdb](#delete_bdb), [delete_crdb](#delete_crdb), [edit_bdb_module](#edit_bdb_module), [failover_shard](#failover_shard), [flush_crdb](#flush_crdb), [migrate_shard](#migrate_shard), [purge_instance](#purge_instance), [reset_bdb_current_backup_status](#reset_bdb_current_backup_status), [reset_bdb_current_export_status](#reset_bdb_current_export_status), [reset_bdb_current_import_status](#reset_bdb_current_import_status), [start_bdb_export](#start_bdb_export), [start_bdb_import](#start_bdb_import), [start_bdb_recovery](#start_bdb_recovery), [update_bdb](#update_bdb), [update_bdb_alerts](#update_bdb_alerts), [update_bdb_with_action](#update_bdb_with_action), [update_crdb](#update_crdb), [view_all_bdb_stats](#view_all_bdb_stats), [view_all_bdbs_alerts](#view_all_bdbs_alerts), [view_all_bdbs_info](#view_all_bdbs_info), [view_all_metrics](#view_all_metrics), [view_all_nodes_alerts](#view_all_nodes_alerts), [view_all_nodes_checks](#view_all_nodes_checks), [view_all_nodes_info](#view_all_nodes_info), [view_all_nodes_stats](#view_all_nodes_stats), [view_all_proxies_info](#view_all_proxies_info), [view_all_redis_acls_info](#view_all_redis_acls_info), [view_all_roles_info](#view_all_roles_info), [view_all_shard_stats](#view_all_shard_stats), [view_bdb_alerts](#view_bdb_alerts), [view_bdb_info](#view_bdb_info), [view_bdb_recovery_plan](#view_bdb_recovery_plan), [view_bdb_stats](#view_bdb_stats), [view_cluster_alerts](#view_cluster_alerts), [view_cluster_info](#view_cluster_info), [view_cluster_keys](#view_cluster_keys), [view_cluster_modules](#view_cluster_modules), [view_cluster_stats](#view_cluster_stats), [view_crdb](#view_crdb), [view_crdb_list](#view_crdb_list), [view_crdb_task](#view_crdb_task), [view_crdb_task_list](#view_crdb_task_list), [view_debugging_info](#view_debugging_info), [view_endpoint_stats](#view_endpoint_stats), [view_license](#view_license), [view_logged_events](#view_logged_events), [view_node_alerts](#view_node_alerts), [view_node_check](#view_node_check), [view_node_info](#view_node_info), [view_node_stats](#view_node_stats), [view_proxy_info](#view_proxy_info), [view_redis_acl_info](#view_redis_acl_info), [view_redis_pass](#view_redis_pass), [view_role_info](#view_role_info), [view_shard_stats](#view_shard_stats), [view_status_of_all_node_actions](#view_status_of_all_node_actions), [view_status_of_cluster_action](#view_status_of_cluster_action), [view_status_of_node_action](#view_status_of_node_action) | +| cluster_viewer | [view_all_bdb_stats](#view_all_bdb_stats), [view_all_bdbs_alerts](#view_all_bdbs_alerts), [view_all_bdbs_info](#view_all_bdbs_info), [view_all_metrics](#view_all_metrics), [view_all_nodes_alerts](#view_all_nodes_alerts), [view_all_nodes_checks](#view_all_nodes_checks), [view_all_nodes_info](#view_all_nodes_info), [view_all_nodes_stats](#view_all_nodes_stats), [view_all_proxies_info](#view_all_proxies_info), [view_all_redis_acls_info](#view_all_redis_acls_info), [view_all_roles_info](#view_all_roles_info), [view_all_shard_stats](#view_all_shard_stats), [view_bdb_alerts](#view_bdb_alerts), [view_bdb_info](#view_bdb_info), [view_bdb_recovery_plan](#view_bdb_recovery_plan), [view_bdb_stats](#view_bdb_stats), [view_cluster_alerts](#view_cluster_alerts), [view_cluster_info](#view_cluster_info), [view_cluster_modules](#view_cluster_modules), [view_cluster_stats](#view_cluster_stats), [view_crdb](#view_crdb), [view_crdb_list](#view_crdb_list), [view_crdb_task](#view_crdb_task), [view_crdb_task_list](#view_crdb_task_list), [view_endpoint_stats](#view_endpoint_stats), [view_license](#view_license), [view_logged_events](#view_logged_events), [view_node_alerts](#view_node_alerts), [view_node_check](#view_node_check), [view_node_info](#view_node_info), [view_node_stats](#view_node_stats), [view_proxy_info](#view_proxy_info), [view_redis_acl_info](#view_redis_acl_info), [view_role_info](#view_role_info), [view_shard_stats](#view_shard_stats), [view_status_of_all_node_actions](#view_status_of_all_node_actions), [view_status_of_cluster_action](#view_status_of_cluster_action), [view_status_of_node_action](#view_status_of_node_action) | | db_member | [create_bdb](#create_bdb), [create_crdb](#create_crdb), [delete_bdb](#delete_bdb), [delete_crdb](#delete_crdb), [edit_bdb_module](#edit_bdb_module), [failover_shard](#failover_shard), [flush_crdb](#flush_crdb), [migrate_shard](#migrate_shard), [purge_instance](#purge_instance), [reset_bdb_current_backup_status](#reset_bdb_current_backup_status), [reset_bdb_current_export_status](#reset_bdb_current_export_status), [reset_bdb_current_import_status](#reset_bdb_current_import_status), [start_bdb_export](#start_bdb_export), [start_bdb_import](#start_bdb_import), [start_bdb_recovery](#start_bdb_recovery), [update_bdb](#update_bdb), [update_bdb_alerts](#update_bdb_alerts), [update_bdb_with_action](#update_bdb_with_action), [update_crdb](#update_crdb), [view_all_bdb_stats](#view_all_bdb_stats), [view_all_bdbs_alerts](#view_all_bdbs_alerts), [view_all_bdbs_info](#view_all_bdbs_info), [view_all_nodes_alerts](#view_all_nodes_alerts), [view_all_nodes_checks](#view_all_nodes_checks), [view_all_nodes_info](#view_all_nodes_info), [view_all_nodes_stats](#view_all_nodes_stats), [view_all_proxies_info](#view_all_proxies_info), [view_all_redis_acls_info](#view_all_redis_acls_info), [view_all_roles_info](#view_all_roles_info), [view_all_shard_stats](#view_all_shard_stats), [view_bdb_alerts](#view_bdb_alerts), [view_bdb_info](#view_bdb_info), [view_bdb_recovery_plan](#view_bdb_recovery_plan), [view_bdb_stats](#view_bdb_stats), [view_cluster_alerts](#view_cluster_alerts), [view_cluster_info](#view_cluster_info), [view_cluster_modules](#view_cluster_modules), [view_cluster_stats](#view_cluster_stats), [view_crdb](#view_crdb), [view_crdb_list](#view_crdb_list), [view_crdb_task](#view_crdb_task), [view_crdb_task_list](#view_crdb_task_list), [view_debugging_info](#view_debugging_info), [view_endpoint_stats](#view_endpoint_stats), [view_license](#view_license), [view_logged_events](#view_logged_events), [view_node_alerts](#view_node_alerts), [view_node_check](#view_node_check), [view_node_info](#view_node_info), [view_node_stats](#view_node_stats), [view_proxy_info](#view_proxy_info), [view_redis_acl_info](#view_redis_acl_info), [view_redis_pass](#view_redis_pass), [view_role_info](#view_role_info), [view_shard_stats](#view_shard_stats), [view_status_of_all_node_actions](#view_status_of_all_node_actions), [view_status_of_cluster_action](#view_status_of_cluster_action), [view_status_of_node_action](#view_status_of_node_action) | | db_viewer | [view_all_bdb_stats](#view_all_bdb_stats), [view_all_bdbs_alerts](#view_all_bdbs_alerts), [view_all_bdbs_info](#view_all_bdbs_info), [view_all_nodes_alerts](#view_all_nodes_alerts), [view_all_nodes_checks](#view_all_nodes_checks), [view_all_nodes_info](#view_all_nodes_info), [view_all_nodes_stats](#view_all_nodes_stats), [view_all_proxies_info](#view_all_proxies_info), [view_all_redis_acls_info](#view_all_redis_acls_info), [view_all_roles_info](#view_all_roles_info), [view_all_shard_stats](#view_all_shard_stats), [view_bdb_alerts](#view_bdb_alerts), [view_bdb_info](#view_bdb_info), [view_bdb_recovery_plan](#view_bdb_recovery_plan), [view_bdb_stats](#view_bdb_stats), [view_cluster_alerts](#view_cluster_alerts), [view_cluster_info](#view_cluster_info), [view_cluster_modules](#view_cluster_modules), [view_cluster_stats](#view_cluster_stats), [view_crdb](#view_crdb), [view_crdb_list](#view_crdb_list), [view_crdb_task](#view_crdb_task), [view_crdb_task_list](#view_crdb_task_list), [view_endpoint_stats](#view_endpoint_stats), [view_license](#view_license), [view_node_alerts](#view_node_alerts), [view_node_check](#view_node_check), [view_node_info](#view_node_info), [view_node_stats](#view_node_stats), [view_proxy_info](#view_proxy_info), [view_redis_acl_info](#view_redis_acl_info), [view_role_info](#view_role_info), [view_shard_stats](#view_shard_stats), [view_status_of_all_node_actions](#view_status_of_all_node_actions), [view_status_of_cluster_action](#view_status_of_cluster_action), [view_status_of_node_action](#view_status_of_node_action) | | user_manager | [config_ldap](#config_ldap), [create_ldap_mapping](#create_ldap_mapping), [create_new_user](#create_new_user), [create_role](#create_role), [create_redis_acl](#create_redis_acl), [delete_ldap_mapping](#delete_ldap_mapping), [delete_redis_acl](#delete_redis_acl), [delete_role](#delete_role), [delete_user](#delete_user), [install_new_license](#install_new_license), [update_ldap_mapping](#update_ldap_mapping), [update_proxy](#update_proxy), [update_role](#update_role), [update_redis_acl](#update_redis_acl), [update_user](#update_user), [view_all_bdb_stats](#view_all_bdb_stats), [view_all_bdbs_alerts](#view_all_bdbs_alerts), [view_all_bdbs_info](#view_all_bdbs_info), [view_all_ldap_mappings_info](#view_all_ldap_mappings_info), [view_all_nodes_alerts](view_all_nodes_alerts), [view_all_nodes_checks](#view_all_nodes_checks), [view_all_nodes_info](#view_all_nodes_info), [view_all_nodes_stats](#view_all_nodes_stats), [view_all_proxies_info](#view_all_proxies_info), [view_all_redis_acls_info](#view_all_redis_acls_info), [view_all_roles_info](#view_all_roles_info), [view_all_shard_stats](#view_all_shard_stats), [view_all_users_info](#view_all_users_info), [view_bdb_alerts](#view_bdb_alerts), [view_bdb_info](#view_bdb_info), [view_bdb_stats](#view_bdb_stats), [view_cluster_alerts](#view_cluster_alerts), [view_cluster_info](#view_cluster_info), [view_cluster_keys](#view_cluster_keys), [view_cluster_modules](#view_cluster_modules), [view_cluster_stats](#view_cluster_stats), [view_crdb](#view_crdb), [view_crdb_list](#view_crdb_list), [view_crdb_task](#view_crdb_task), [view_crdb_task_list](#view_crdb_task_list), [view_endpoint_stats](#view_endpoint_stats), [view_ldap_config](#view_ldap_config), [view_ldap_mapping_info](#view_ldap_mapping_info), [view_license](#view_license), [view_logged_events](#view_logged_events), [view_node_alerts](#view_node_alerts), [view_node_check](#view_node_check), [view_node_info](#view_node_info), [view_node_stats](#view_node_stats), [view_proxy_info](#view_proxy_info), [view_redis_acl_info](#view_redis_acl_info), [view_redis_pass](#view_redis_pass), [view_role_info](#view_role_info), [view_shard_stats](#view_shard_stats), [view_status_of_all_node_actions](#view_status_of_all_node_actions), [view_status_of_cluster_action](#view_status_of_cluster_action), [view_status_of_node_action](#view_status_of_node_action), [view_user_info](#view_user_info) @@ -94,6 +94,7 @@ Available management roles include: | view_all_bdbs_alerts | admin
cluster_member
cluster_viewer
db_member
db_viewer
user_manager | | view_all_bdbs_info | admin
cluster_member
cluster_viewer
db_member
db_viewer
user_manager | | view_all_ldap_mappings_info | admin
user_manager | +| view_all_metrics | admin
cluster_member
cluster_viewer | | view_all_nodes_alerts | admin
cluster_member
cluster_viewer
db_member
db_viewer
user_manager | | view_all_nodes_checks | admin
cluster_member
cluster_viewer
db_member
db_viewer
user_manager | | view_all_nodes_info | admin
cluster_member
cluster_viewer
db_member
db_viewer
user_manager | diff --git a/content/operate/rs/references/rest-api/requests/bdbs/_index.md b/content/operate/rs/references/rest-api/requests/bdbs/_index.md index 679a9e5f6c..8c8798f60e 100644 --- a/content/operate/rs/references/rest-api/requests/bdbs/_index.md +++ b/content/operate/rs/references/rest-api/requests/bdbs/_index.md @@ -38,12 +38,20 @@ Get all databases in the cluster. ### Request {#get-all-request} -#### Example HTTP request +#### Example HTTP requests + +The following request returns the unique IDs and names of all databases: ```sh GET /v1/bdbs?fields=uid,name ``` +The following request returns all fields for the databases, including configuration fields for modules like search, probabilistic, and timeseries: + +```sh +GET /v1/bdbs?extended=true +``` + #### Headers | Key | Value | @@ -56,6 +64,7 @@ GET /v1/bdbs?fields=uid,name | Field | Type | Description | |-------|------|-------------| | fields | string | Comma-separated list of field names to return (by default all fields are returned). (optional) | +| extended | boolean | If true, includes configuration fields for modules, such as search, timeseries, and probabilistic, in the response. If the `extended` query parameter is not included in the request, module configuration fields do not appear in the response. (optional) | ### Response {#get-all-response} @@ -128,12 +137,20 @@ Get a single database. ### Request {#get-request} -#### Example HTTP request +#### Example HTTP requests + +The following request returns all fields for the specified database, except for module configuration fields: ```sh GET /v1/bdbs/1 ``` +The following request returns all fields for the specified database, including configuration fields for modules like search, probabilistic, and timeseries: + +```sh +GET /v1/bdbs/1?extended=true +``` + #### Headers | Key | Value | @@ -154,6 +171,7 @@ GET /v1/bdbs/1 | Field | Type | Description | |-------|------|-------------| | fields | string | Comma-separated list of field names to return (by default all fields are returned). (optional) | +| extended | boolean | If true, includes configuration fields for modules, such as search, timeseries, and probabilistic, in the response. If the `extended` query parameter is not included in the request, module configuration fields do not appear in the response. (optional) | ### Response {#get-response} diff --git a/content/operate/rs/references/rest-api/requests/cluster/actions.md b/content/operate/rs/references/rest-api/requests/cluster/actions.md index c58f3ad998..30a154d3c6 100644 --- a/content/operate/rs/references/rest-api/requests/cluster/actions.md +++ b/content/operate/rs/references/rest-api/requests/cluster/actions.md @@ -54,12 +54,12 @@ Returns a JSON array of [action objects]({{< relref "/operate/rs/references/rest } ``` -### Status codes {#get-all-status-codes} +### Status codes {#get-all-status-codes} | Code | Description | |------|-------------| -| [200 OK](http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.2.1) | No error, response provides info about an ongoing action. | -| [404 Not Found](http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.5) | Action does not exist (i.e. not currently running and no available status of last run). | +| [200 OK](https://www.rfc-editor.org/rfc/rfc9110.html#name-200-ok) | No error, response provides info about an ongoing action. | +| [404 Not Found](https://www.rfc-editor.org/rfc/rfc9110.html#name-404-not-found) | Action does not exist (i.e. not currently running and no available status of last run). | ## Get cluster action {#get-cluster-action} @@ -99,12 +99,12 @@ Returns an [action object]({{< relref "/operate/rs/references/rest-api/objects/a } ``` -### Status codes {#get-status-codes} +### Status codes {#get-status-codes} | Code | Description | |------|-------------| -| [200 OK](http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.2.1) | No error, response provides info about an ongoing action. | -| [404 Not Found](http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.5) | Action does not exist (i.e. not currently running and no available status of last run). | +| [200 OK](https://www.rfc-editor.org/rfc/rfc9110.html#name-200-ok) | No error, response provides info about an ongoing action. | +| [404 Not Found](https://www.rfc-editor.org/rfc/rfc9110.html#name-404-not-found) | Action does not exist (i.e. not currently running and no available status of last run). | ## Initiate cluster-wide action {#post-cluster-action} @@ -153,13 +153,15 @@ Supported cluster actions: The body content may provide additional action details. Currently, it is not used. -### Status codes {#post-status-codes} +### Status codes {#post-status-codes} | Code | Description | |------|-------------| -| [200 OK](http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.2.1) | No error, action was initiated. | -| [400 Bad Request](http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1) | Bad action or content provided. | -| [409 Conflict](http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.10) | A conflicting action is already in progress. | +| [200 OK](https://www.rfc-editor.org/rfc/rfc9110.html#name-200-ok) | No error, action was initiated. | +| [400 Bad Request](https://www.rfc-editor.org/rfc/rfc9110.html#name-400-bad-request) | Bad action or content provided. | +| [404 Not Found](https://www.rfc-editor.org/rfc/rfc9110.html#name-404-not-found) | Node does not exist. | +| [406 Not Acceptable](https://www.rfc-editor.org/rfc/rfc9110.html#name-406-not-acceptable) | Node not bootstrapped. | +| [409 Conflict](https://www.rfc-editor.org/rfc/rfc9110.html#name-409-conflict) | A conflicting action is already in progress. | ## Cancel action {#delete-cluster-action} @@ -190,9 +192,9 @@ a previously executed and completed action. Returns a status code. -### Status codes {#delete-status-codes} +### Status codes {#delete-status-codes} | Code | Description | |------|-------------| -| [200 OK](http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.2.1) | Action will be cancelled when possible. | -| [404 Not Found](http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.5) | Action unknown or not currently running. | +| [200 OK](https://www.rfc-editor.org/rfc/rfc9110.html#name-200-ok) | Action will be cancelled when possible. | +| [404 Not Found](https://www.rfc-editor.org/rfc/rfc9110.html#name-404-not-found) | Action unknown or not currently running. | diff --git a/content/operate/rs/release-notes/rs-8-0-releases/_index.md b/content/operate/rs/release-notes/rs-8-0-releases/_index.md new file mode 100644 index 0000000000..07962b298d --- /dev/null +++ b/content/operate/rs/release-notes/rs-8-0-releases/_index.md @@ -0,0 +1,166 @@ +--- +Title: Redis Enterprise Software release notes 8.0.x +alwaysopen: false +categories: +- docs +- operate +- rs +compatibleOSSVersion: Redis 8.0 +description: Redis Open Source 8.0 and 8.2 features. Lag-aware availability API. Redis Flex GA. Metrics stream engine GA. Module management enhancements. New REST API fields for database and cluster configuration. +hideListLinks: true +linkTitle: 8.0.x releases +toc: 'true' +weight: 67 +--- + +​[​Redis Enterprise Software version 8.0](https://redis.io/downloads/#software) is now available! + +## Highlights + +This version offers: + +- Redis Open Source 8.0 and 8.2 features + +- Lag-aware availability API + +- Redis Flex GA + +- Metrics stream engine GA + +- Module management enhancements + +- New REST API fields for database and cluster configuration + +## Detailed release notes + +For more detailed release notes, select a build version from the following table: + +{{}} + +## Version changes + +- [`POST /v1/cluster/actions/change_master`]({{}}) REST API requests will no longer allow a node that exists but is not finished bootstrapping to become the primary node. Such requests will now return the status code `406 Not Acceptable`. + +- Node status now returns the actual provisional RAM and flash values even when the maximum number of shards on the node (`max_redis_servers`) is reached. Previously, the API returned 0 for `provisional_ram_of_node` and `provisional_flash_of_node` when a node reached its shard limit. This change affects REST API node status requests and the `rladmin status nodes` command's output. + +### Breaking changes + +### Redis database version 8 breaking changes {#redis-8-breaking-changes} + +When new major versions of Redis Open Source change existing commands, upgrading your database to a new version can potentially break some functionality. Before you upgrade, read the provided list of breaking changes that affect Redis Software and update any applications that connect to your database to handle these changes. + +#### ACL behavior changes + +Before Redis 8, the existing [ACL]({{}}) categories `@read`, `@write`, `@dangerous`, `@admin`, `@slow`, and `@fast` did not include commands for the Redis Query Engine and the JSON, time series, and probabilistic data structures. + +Starting with Redis 8, Redis includes all Query Engine, JSON, time series, Bloom filter, cuckoo filter, top-k, count-min sketch, and t-digest commands in these existing ACL categories. + +As a result: + +- Existing ACL rules such as `+@read +@write` will allow access to more commands than in previous versions of Redis. Here are some examples: + - A user with `+@read` access will be able to execute `FT.SEARCH`. + - A user with `+@write` access will be able to execute `JSON.SET`. + +- ACL rules such as `+@all -@write` will allow access to fewer commands than previous versions of Redis. + - For example, a user with `+@all -@write` will not be able to execute `JSON.SET`. + - Explicit inclusion of new [command categories]({{}}) is required to maintain access. + +- ACL rules such as `+@read +JSON.GET` can now be simplified as `+@read` because `JSON.GET` is included in the `@read` category. + +Note that the `@all` category did not change, as it always included all the commands. + +#### Redis Query Engine changes + +{{}} + +### Deprecations + +#### API deprecations + +- Deprecated the `policy` field for [bootstrap]({{}}) REST API requests. Use [`PUT /v1/cluster/policy`]({{< relref "/operate/rs/references/rest-api/requests/cluster/policy#put-cluster-policy" >}}) to change cluster policies after cluster creation instead. + +- Deprecated the `module_args` field for [database]({{}}) REST API requests. Use the new module configuration objects `search`, `timeseries`, and `probabilistic` instead. + +#### Redis Query Engine deprecations + +- Deprecated commands: `FT.ADD`, `FT.SAFEADD`, `FT.DEL`, `FT.GET`, `FT.MGET`, `FT.SYNADD`, `FT.DROP`, `FT._DROPIFX`, and `FT.CONFIG`. + +- Deprecated `FT.SEARCH` options: `GEOFILTER`, `FILTER`, and `NOSTOPWORDS`. + +- Deprecated vector search options: `INITIAL_CAP` and `BLOCK_SIZE`. + +- Deprecated configuration parameters: `WORKER_THREADS`, `MT_MODE`, `PRIVILEGED_THREADS_NUM`, and `GCSCANSIZE`. + +- Deprecated dialects: `DIALECT 1`, `DIALECT 3`, and `DIALECT 4`. + +#### Internal monitoring and v1 Prometheus metrics deprecation + +The existing [internal monitoring engine]({{}}) is deprecated. We recommend transitioning to the new [metrics stream engine]({{}}) for improved performance, enhanced integration capabilities, and modernized metrics streaming. + +V1 Prometheus metrics are deprecated but still available. To transition to the new metrics stream engine, either migrate your existing dashboards using [this guide]({{}}) now, or wait to use new preconfigured dashboards when they become available in a future release. + +### Upcoming changes + +### Supported platforms + +The following table provides a snapshot of supported platforms as of this Redis Software release. See the [supported platforms reference]({{< relref "/operate/rs/references/supported-platforms" >}}) for more details about operating system compatibility. + + Supported – The platform is supported for this version of Redis Enterprise Software and Redis Stack modules. + +:warning: Deprecation warning – The platform is still supported for this version of Redis Enterprise Software, but support will be removed in a future release. + +| Redis Software
major versions | 8.0 | 7.22 | 7.8 | 7.4 | 7.2 | 6.4 | 6.2 | +|---------------------------------|:-----:|:-----:|:-----:|:-----:|:-----:|:-----:|:-----:| +| **Release date** | Oct 2025 | May 2025 | Nov 2024 | Feb 2024 | Aug 2023 | Feb 2023 | Aug 2021 | +| [**End-of-life date**]({{< relref "/operate/rs/installing-upgrading/product-lifecycle#endoflife-schedule" >}}) | Determined after
next major release | Oct 2027 | May 2027 | Nov 2026 | Feb 2026 | Aug 2025 | Feb 2025 | +| **Platforms** | | | | | | | | +| RHEL 9 &
compatible distros[1](#table-note-1) | | | | | – | – | – | +| RHEL 9
FIPS mode[5](#table-note-5) | | | | – | – | – | – | +| RHEL 8 &
compatible distros[1](#table-note-1) | | | | | | | | +| RHEL 7 &
compatible distros[1](#table-note-1) | – | – | – | – | :warning: | | | +| Ubuntu 22.04[2](#table-note-2) | | | | – | – | – | – | +| Ubuntu 20.04[2](#table-note-2) | | | | | | | – | +| Ubuntu 18.04[2](#table-note-2) | – | – | – | :warning: | :warning: | | | +| Ubuntu 16.04[2](#table-note-2) | – | – | – | – | :warning: | | | +| Amazon Linux 2 | | | | | | | – | +| Amazon Linux 1 | – | – | – | – | | | | +| Kubernetes[3](#table-note-3) | | | | | | | | +| Docker[4](#table-note-4) | | | | | | | | + +1. The RHEL-compatible distributions CentOS, CentOS Stream, Alma, and Rocky are supported if they have full RHEL compatibility. Oracle Linux running the Red Hat Compatible Kernel (RHCK) is supported, but the Unbreakable Enterprise Kernel (UEK) is not supported. + +2. The server version of Ubuntu is recommended for production installations. The desktop version is only recommended for development deployments. + +3. See the [Redis Enterprise for Kubernetes documentation]({{< relref "/operate/kubernetes/reference/supported_k8s_distributions" >}}) for details about support per version and Kubernetes distribution. + +4. [Docker images]({{< relref "/operate/rs/installing-upgrading/quickstarts/docker-quickstart" >}}) of Redis Enterprise Software are certified for development and testing only. + +5. Supported only if [FIPS was enabled during RHEL installation](https://docs.redhat.com/en/documentation/red_hat_enterprise_linux/9/html/security_hardening/switching-rhel-to-fips-mode_security-hardening#proc_installing-the-system-with-fips-mode-enabled_switching-rhel-to-fips-mode) to ensure FIPS compliance. + +## Known issues + +- RS131972: Creating an ACL that contains a line break in the Cluster Manager UI can cause shard migration to fail due to ACL errors. + +- RS155734: Endpoint availability metrics do not work as expected due to a calculation error. + +- RS153589: The metrics stream engine preview reports incorrect latency metrics. + +## Known limitations + +#### Rolling upgrade limitation for clusters with custom or deprecated modules + +Due to module handling changes introduced in Redis Enterprise Software version 8.0, upgrading a cluster that contains custom or deprecated modules, such as RedisGraph and RedisGears v2, can become stuck when adding a new node to the cluster during a rolling upgrade. + +#### Module commands limitation during Active-Active database upgrades to Redis 8.0 + +When upgrading an Active-Active database to Redis version 8.0, you cannot use module commands until all Active-Active database instances have been upgraded. Currently, these commands are not blocked automatically. + +#### New Cluster Manager UI limitations + +The following legacy UI features are not yet available in the new Cluster Manager UI: + +- Purge an Active-Active instance. + + Use [`crdb-cli crdb purge-instance`]({{< relref "/operate/rs/references/cli-utilities/crdb-cli/crdb/purge-instance" >}}) instead. + +- Search and export the log. diff --git a/content/operate/rs/release-notes/rs-8-0-releases/rs-8-0-tba.md b/content/operate/rs/release-notes/rs-8-0-releases/rs-8-0-tba.md new file mode 100644 index 0000000000..42437ce820 --- /dev/null +++ b/content/operate/rs/release-notes/rs-8-0-releases/rs-8-0-tba.md @@ -0,0 +1,639 @@ +--- +Title: Redis Enterprise Software release notes 8.0.2-tba (October 2025) +alwaysopen: false +categories: +- docs +- operate +- rs +compatibleOSSVersion: Redis 7.4.0 +description: Redis Open Source 8.0 and 8.2 features. Lag-aware availability API. Redis Flex GA. Metrics stream engine GA. Module management enhancements. New REST API fields for database and cluster configuration. +linkTitle: 8.0.2-tba (October 2025) +weight: 90 +--- + +​[​Redis Enterprise Software version 8.0.2](https://redis.io/downloads/#software) is now available! + +## Highlights + +This version offers: + +- Redis Open Source 8.0 and 8.2 features + +- Lag-aware availability API + +- Redis Flex GA + +- Metrics stream engine GA + +- Module management enhancements + +- New REST API fields for database and cluster configuration + +## New in this release + +### New features + +#### Redis Open Source 8.0 and 8.2 features + +Redis Open Source 8.0 and 8.2 features are now available when you [create]({{}}) or [upgrade]({{}}) a database with database version 8.2. + +##### Redis Open Source 8.0 features and enhancements + +- Preview of a new [vector set]({{}}) data structure that supports high-dimensional vector similarity search, ideal for AI use cases such as semantic search and recommendation systems. + +- New hash commands [`HGETEX`]({{}}), [`HSETEX`]({{}}), and [`HGETDEL`]({{}}), which can simplify caching and session management patterns. + +- Enhanced access control lists (ACLs) to support new data structures introduced in Redis 8. + + - Existing ACL categories such as `@read` and `@write` now include commands for JSON, time series, vector, and probabilistic data structures. + + - New ACL categories: `@search`, `@json`, `@timeseries`, `@bloom`, `@cuckoo`, `@topk`, `@cms`, and `@tdigest`. + +- Redis Query Engine improvements. + +- Significant performance improvements, including: + + - Up to 87% lower command latency. + + - 35% memory savings for replica nodes. + + - 16x more query processing capacity with horizontal and vertical scaling. + +- See [What's new in Redis 8.0]({{}}) and [Redis Open Source 8.0 release notes]({{}}) for more details. + +##### Redis Open Source 8.2 features and enhancements + +- New Redis streams commands [`XDELEX`]({{}}) and [`XACKDEL`]({{}}) that simplify consumer group management and stream lifecycle operations. + +- New operators `DIFF`, `DIFF1`, `ANDOR`, and `ONE` for the [`BITOP`]({{}}) command, which enable more complex bitmap workflows and can simplify operations that previously required multiple commands. + +- New keyspace notification event types `OVERWRITTEN` and `TYPE_CHANGED` that provide better visibility into data changes. + +- Performance optimizations and memory efficiency improvements. + +- Redis Query Engine improvements: + + - New [SVS-VAMANA vector index]({{}}) type, which supports vector compression. + + - New `SHARD_K_RATIO` parameter for [K-nearest neighbor (KNN) vector queries]({{}}), which favors network latency over accuracy to provide faster responses when exact precision isn't critical. + +- See [What's new in Redis 8.2]({{}}) and [Redis Open Source 8.2 release notes]({{}}) for more details. + +#### Automatically enabled capabilities in Redis 8 + +Redis Enterprise Software databases created with or upgraded to Redis version 8 or later automatically enable the capabilities (modules) bundled with Redis Enterprise Software as follows: + +| Database type | Automatically enabled capabilities | +|---------------|------------------------------------| +| RAM-only | [Search and query]({{}})
[JSON]({{}})
[Time series]({{}})
[Probabilistic]({{}}) | +| Flash-enabled ([Redis Flex]({{}})) | [JSON]({{}})
[Probabilistic]({{}}) | +| [Active-Active]({{}}) | [Search and query]({{}})
[JSON]({{}}) | + +#### Lag-aware availability API + +The [database availability API]({{}}) now supports lag-aware availability checks that consider replication lag tolerance. + +You can reduce the risk of data inconsistencies during disaster recovery by incorporating lag-aware availability checks into your disaster recovery solution and ensuring failover-failback flows only occur when databases are accessible and sufficiently synchronized. + +The lag tolerance threshold is 100 milliseconds by default. Depending on factors such as workload, network conditions, and throughput, you might want to adjust the lag tolerance threshold using one of the following methods: + +- Change the default threshold for the entire cluster by setting `availability_lag_tolerance_ms` with an [update cluster]({{}}) request. + +- Override the default threshold by adding the `availability_lag_tolerance_ms` query parameter to specific lag-aware [availability checks]({{}}). For example: + + ```sh + GET /v1/bdbs//availability?extend_check=lag&availability_lag_tolerance_ms=100 + ``` + +For more details, see [Check database availability for monitoring and load balancers]({{}}). + +#### Redis Flex GA + +Redis Flex (Redis on Flash version 2) is now generally available for flash-enabled databases. Redis Flex is the enhanced successor to Auto Tiering (Redis on Flash version 1), which allows you to provision larger databases at a lower cost by extending the RAM with flash drives. + +- Databases created with Redis version 8.0 and later automatically use Redis Flex. + +- Databases with Redis version 7.4 can choose between Auto Tiering (`bigstore_version` 1) and Redis Flex (`bigstore_version` 2) + +- Databases with Redis versions earlier than 7.4 will continue to use Auto Tiering. + +For more information about Redis Flex, see: + +- [Redis Flex overview]({{< relref "/operate/rs/databases/flash" >}}) +- [Redis Flex quick start]({{< relref "/operate/rs/databases/flash/quickstart" >}}) + +#### Metrics stream engine GA + +The [metrics stream engine]({{}}) is now generally available: + +- The metrics stream engine's exporter-based infrastructure provides access to more accurate, real-time data. This enhanced, scalable monitoring system allows you to set up more effective alerts and respond to issues faster. + +- Exposes a new `/v2` Prometheus scraping endpoint that you can use to export metrics to external monitoring tools such as Grafana, DataDog, NewRelic, and Dynatrace. + +- Exports raw data instead of aggregated data to improve monitoring at scale and accuracy compared to v1 Prometheus metrics. + +- For a list of metrics exported by the metrics stream engine, see [Prometheus metrics v2]({{}}). + +- To transition to the metrics stream engine, either migrate your existing dashboards using [Prometheus v1 metrics and equivalent v2 PromQL]({{}}), or use new preconfigured dashboards when they become available. + +### Enhancements + +- Module management enhancements: + + - Operating system (OS) upgrades no longer require manually uploading module packages compiled for the target OS version to a node in the existing cluster. + + - Copying module packages to a node in the cluster before cluster recovery is no longer required. + + - Added new REST API requests to manage custom, user-defined modules. See [Custom module management APIs]({{}}) for details. + + - Added module configuration fields to the database configuration. Use `search`, `query_performance_factor`, `timeseries`, and `probabilistic` objects to configure Redis modules instead of the deprecated `module_args` field. These fields are visible in [`GET /v1/bdbs`]({{}}) requests only when using the `extended=true` query parameter. + + - Added `--update-db-config-modules` option to the [`crdb-cli crdb update`]({{}}) command to streamline updating module information in the CRDB configuration after uprading modules used by Active-Active databases. Use this option only after all CRDB database instances have upgraded their modules. + + ```sh + crdb-cli crdb update --crdb-guid --update-db-config-modules true + ``` + +- Added a check to block new user creation after the maximum limit of 32,000 users has been reached: + + - Added a [cluster alert]({{}}) `cluster_users_count_approaches_limit`, which triggers when the number of users surpasses a threshold percentage of the maximum user limit. This alert is enabled with a 90% threshold by default on new clusters. + + - Added a `users_count` cluster metric to [Prometheus metrics v2]({{}}) that shows the current number of users on the cluster. + +- New [database configuration]({{}}) fields in the REST API for automatic shard balancing: + + - `auto_shards_balancing`: Automatically balances database shards. + + - `auto_shards_balancing_grace_period`: Time to wait before auto sharding is initiated. + + - `shard_imbalance_threshold`: Threshold for automatic shard balancing based on imbalance size. + + - `shard_imbalance_threshold_percentage`: Threshold for automatic shard balancing based on imbalance percentage. + +- Additional REST API enhancements: + + - New `last_login` field for [users]({{}}), which stores the UNIX timestamp of the user's last successful login to the Cluster Manager UI or REST API. + + - Added [cluster configuration]({{}}) fields: + + - `disconnect_clients_on_password_removal`: Controls whether client connections using removed, revoked, or rotated passwords are actively disconnected. + + - `replica_sconns_on_demand`: When enabled, the DMC stops holding persistent connections to replica shards and reduces the number of internode connections by half. + + - `metrics_auth`: If set to `true`, enables basic authentication for Prometheus exporters and restricts access to authenticated users with `admin`, `cluster_member`, or `cluster_viewer` [management roles]({{}}). + + - Added [database configuration]({{}}) fields: + + - `conns_global_maximum_dedicated`: Defines the maximum number of dedicated server connections for a database across all workers. + + - `conns_minimum_dedicated`: Defines the minimum number of dedicated server connections the DMC maintains per worker per shard. + + - `disconnect_clients_on_password_removal`: Controls whether client connections using removed, revoked, or rotated passwords are actively disconnected. + + - `link_sconn_on_full_request`: Feature flag for DMC behavior on linking client requests. + + - `partial_request_timeout_seconds`: Timeout for incomplete client commands that cause head-of-line blocking. + + - `preemptive_drain_timeout_seconds`: Timeout for preemptive drain of client connections before a shard is taken down. + + - `replica_sconns_on_demand`: When enabled, the DMC stops holding persistent connections to replica shards and reduces the number of internode connections by half. + + - `use_selective_flush`: Enables selective flush of destination shards. + +- Added action IDs to operation and state machine log entries. + +- Internal connections no longer generate `new_int_conn` audit records. + +- Improved control plane authentication handling for new clusters with a dedicated authentication service. + +- Improved handling of long-running read-only scripts to reduce unnecessary failovers. + +### Redis database versions + +Redis Enterprise Software version 8.0.2 includes five Redis database versions: 8.2, 8.0, 7.4, 7.2, and 6.2. + +The [default Redis database version]({{}}) is 8.2. + +### Redis feature sets + +Redis Enterprise Software includes multiple feature sets, compatible with different Redis database versions. + +The following table shows which Redis modules are compatible with each Redis database version included in this release. + +| Redis database version | Compatible Redis modules | +|------------------------|--------------------------| +| 8.2 | RediSearch 8.2
RedisJSON 8.2
RedisTimeSeries 8.2
RedisBloom 8.2
See [What's new in Redis 8.2]({{}}) and [Redis Open Source 8.2 release notes]({{}}) | +| 8.0 | RediSearch 8.0
RedisJSON 8.0
RedisTimeSeries 8.0
RedisBloom 8.0
See [What's new in Redis 8.0]({{}}) and [Redis Open Source 8.0 release notes]({{}}) | +| 7.4 | [RediSearch 2.10]({{< relref "/operate/oss_and_stack/stack-with-enterprise/release-notes/redisearch/redisearch-2.10-release-notes.md" >}})
[RedisJSON 2.8]({{< relref "/operate/oss_and_stack/stack-with-enterprise/release-notes/redisjson/redisjson-2.8-release-notes.md" >}})
[RedisTimeSeries 1.12]({{< relref "/operate/oss_and_stack/stack-with-enterprise/release-notes/redistimeseries/redistimeseries-1.12-release-notes.md" >}})
[RedisBloom 2.8]({{< relref "/operate/oss_and_stack/stack-with-enterprise/release-notes/redisbloom/redisbloom-2.8-release-notes.md" >}}) | +| 7.2 | [RediSearch 2.8]({{< relref "/operate/oss_and_stack/stack-with-enterprise/release-notes/redisearch/redisearch-2.8-release-notes.md" >}})
[RedisJSON 2.6]({{< relref "/operate/oss_and_stack/stack-with-enterprise/release-notes/redisjson/redisjson-2.6-release-notes.md" >}})
[RedisTimeSeries 1.10]({{< relref "/operate/oss_and_stack/stack-with-enterprise/release-notes/redistimeseries/redistimeseries-1.10-release-notes.md" >}})
[RedisBloom 2.6]({{< relref "/operate/oss_and_stack/stack-with-enterprise/release-notes/redisbloom/redisbloom-2.6-release-notes.md" >}}) | +| 6.2 | [RediSearch 2.6]({{< relref "/operate/oss_and_stack/stack-with-enterprise/release-notes/redisearch/redisearch-2.6-release-notes.md" >}})
[RedisJSON 2.4]({{< relref "/operate/oss_and_stack/stack-with-enterprise/release-notes/redisjson/redisjson-2.4-release-notes.md" >}})
[RedisTimeSeries 1.8]({{< relref "/operate/oss_and_stack/stack-with-enterprise/release-notes/redistimeseries/redistimeseries-1.8-release-notes.md" >}})
[RedisBloom 2.4]({{< relref "/operate/oss_and_stack/stack-with-enterprise/release-notes/redisbloom/redisbloom-2.4-release-notes.md" >}}) | + +### Resolved issues + +- RS156391: Fixed an issue where the `job_scheduler`'s memory usage could increase significantly when the diagnostic logging service was enabled. + +- RS132033: Fixed an issue where out-of-memory errors in the Lua interpreter prevented scripts from running Redis commands until the shard was restarted. This fix is included in Redis database version 7.2 and requires a database upgrade from earlier versions. + +- RS153192: Updated the installer's minimum RAM requirement to 8 GB. + +- RS159685: Fixed an issue with high DMC CPU usage after changing the primary node of a cluster that has Active-Active databases. + +- RS160546: Fixed an issue where `rladmin status extra all` did not show available RAM. + +- RS150592: Fixed an issue where connection errors were not automatically retried. + +- RS161945: Fixed an issue where state machine logs showed a generic state machine ID instead of the descriptive state machine name when creating a database from persistence. + +- RS160196: Fixed an issue where a node could be set as primary before completing the bootstrap process. + +- RS153736: Fixed an issue where the `PUBSUB SHARDNUMSUB` command would not respond when called without arguments if the OSS Cluster API was enabled. + +- RS163254: Fixed an issue where the policy update logs displayed inconsistent boolean value formats, mixing `enabled/disabled` and `True/False`. + +- RS158250: Fixed an issue with Active-Active databases with search enabled where replica shards could crash after migration to a new node. + +- RS164471: Fixed an issue where the script to generate self-signed certificate (generate_self_signed_certs.sh) failed on custom installations due to hard-coded file paths. + +- RS164218: Fixed an issue where Speedb log files were not properly rotated and archived, causing logs to accumulate and consume disk space. + +- RS162719: Fixed an issue where connection problems could prevent shards from restarting during failover and cause the failover process to become stuck. + +- RS161589: Changed the installer answers file parameter from `skip_updating_env_path` to `update_env_path` to improve clarity and accuracy. + +- RS161574: Fixed an issue where Active-Active database synchronization could fail when Lua scripts used certain read-only commands that accessed keys across multiple slots. + +- RS160347: Made optimizations to reduce the `heartbeatd` service's memory usage. + +- RS156394: Improved error messages when module commands are temporarily unavailable during cluster configuration changes. + +- RS154815: Improved diagnostic reporting for connection issues when the maximum number of transactions is reached. + +- RS147053: Fixed an issue where some `system_reserved_ports` were not displayed in the `rladmin info cluster` command output. + +- RS114668: Fixed an issue where setting `failure_detection_sensitivity` with the `bootstrap` API did not automatically update `watchdog_profile` accordingly. + +- RS163266: Fixed an issue where shard rebalancing could take excessive time when replicas were unresponsive due to high CPU load by reducing connection retry attempts from 300 to 5. + +- RS162524: Fixed an issue where the DNS backend could fail with "too many open files" errors due to socket leaks. + +- RS161547: Fixed an issue where nodes could fail to send messages related to state machines due to a timing issue between notification threads and management threads. + +- RS155990: Fixed an issue where the `forwarding_state` field was missing from the endpoint schema. + +- RS166307: Updated v2 Prometheus metric names to comply with naming conventions by changing the `proxy_` prefix to `endpoint_` for `connections_rate`, `rate_limit_ok`, `rate_limit_overflows`, `accepted_connections`, and `dispatch_failures`. + +- RS164703: Improved diagnostic reporting for shard restart operations by adding PID logging before shutdown. + +- RS152179: Reduced log noise by removing a harmless error message that appeared repeatedly in DMC proxy logs. + +- RS132087: Fixed inconsistent node status reports between `rladmin` and the REST API. + +- RS166878: Fixed legacy `module_args` mapping to handle boolean fields as `TRUE/FALSE` values instead of flags. + +- RS166825: Fixed an issue where the Sentinel service could become unresponsive while processing certain commands due to a timing issue. + +- RS162290: Fixed an issue where the node status API returned 0 instead of the actual provisional RAM and flash values if the node reached its shard limit. + +- RS158251: Added a check to block new user creation after the maximum limit of 32,000 users has been reached to prevent DMC proxy crashes. + +- RS166813: Fixed an issue where Lua incorrectly converted empty JSON arrays into empty JSON objects. + +- RS166683: Fixed an issue where `FT.DROPINDEX index DD` deleted indexed keys on the local Active-Active database instance but failed to sync the deletions to instances in other participating clusters. + +- RS162972: Fixed an issue where the REST API was only accessible from the primary node when certificate-based authentication was enabled. + +- RS158972: Fixed an issue where certificate verification failed during node join and replace operations when internode encryption was enabled, causing connection errors until certificates were fetched from the primary node. + +- RS123263: Fixed an issue where creating a new role with a specified UID failed with "A uid is already assigned" error. + +- RS120420: Fixed an issue where `rladmin cluster config` incorrectly included quotes as part of the cipher suite value when updating `control_cipher_suites` configuration. + +- RS170611: Fixed an issue where the `generate_self_signed_certs.sh` script incorrectly formatted wildcard certificate entries. + +- RS167849: Fixed an issue where `rlutil check` incorrectly reported that existing databases did not exist. + +- RS167199: Fixed an issue where the remove node action could become stuck during node decommissioning. + +- RS166990: Fixed an issue where install logs were not included in support packages when installation or upgrade operations failed. + +- RS166528: Improved error handling when verifying that a data file has been loaded. + +- RS162973: Fixed an issue with shard failover where the shard failed to restart because its port was not released quickly enough after it crashed. + +- RS166122: Fixed an issue where the actions API could incorrectly report state machine operations as running after they completed. + +- RS171579: Fixed an issue where the new UI incorrectly added `default_user: False` when the default_user field was absent, causing connection issues. + +## Version changes + +- [`POST /v1/cluster/actions/change_master`]({{}}) REST API requests will no longer allow a node that exists but is not finished bootstrapping to become the primary node. Such requests will now return the status code `406 Not Acceptable`. + +- Node status now returns the actual provisional RAM and flash values even when the maximum number of shards on the node (`max_redis_servers`) is reached. Previously, the API returned 0 for `provisional_ram_of_node` and `provisional_flash_of_node` when a node reached its shard limit. This change affects REST API node status requests and the `rladmin status nodes` command's output. + +### Breaking changes + +### Redis database version 8 breaking changes {#redis-8-breaking-changes} + +When new major versions of Redis Open Source change existing commands, upgrading your database to a new version can potentially break some functionality. Before you upgrade, read the provided list of breaking changes that affect Redis Software and update any applications that connect to your database to handle these changes. + +#### ACL behavior changes + +Before Redis 8, the existing [ACL]({{}}) categories `@read`, `@write`, `@dangerous`, `@admin`, `@slow`, and `@fast` did not include commands for the Redis Query Engine and the JSON, time series, and probabilistic data structures. + +Starting with Redis 8, Redis includes all Query Engine, JSON, time series, Bloom filter, cuckoo filter, top-k, count-min sketch, and t-digest commands in these existing ACL categories. + +As a result: + +- Existing ACL rules such as `+@read +@write` will allow access to more commands than in previous versions of Redis. Here are some examples: + + - A user with `+@read` access will be able to execute `FT.SEARCH`. + + - A user with `+@write` access will be able to execute `JSON.SET`. + +- ACL rules such as `+@all -@write` will allow access to fewer commands than previous versions of Redis. + + - For example, a user with `+@all -@write` will not be able to execute `JSON.SET`. + + - Explicit inclusion of new [command categories]({{}}) is required to maintain access. The new categories are: `@search`, `@json`, `@timeseries`, `@bloom`, `@cuckoo`, `@topk`, `@cms`, and `@tdigest`. + +- ACL rules such as `+@read +JSON.GET` can now be simplified as `+@read` because `JSON.GET` is included in the `@read` category. + +Note that the `@all` category did not change, as it always included all the commands. + +#### Redis Query Engine changes + +The following changes affect behavior and validation in the Redis Query Engine: + +- Enforces validation for `LIMIT` arguments (offset must be 0 if limit is 0). + +- Enforces parsing rules for `FT.CURSOR READ` and `FT.ALIASADD`. + +- Parentheses are now required for exponentiation precedence in `APPLY` expressions. + +- Invalid input now returns errors instead of empty results. + +- Default values revisited for reducers like `AVG`, `COUNT`, `SUM`, `STDDEV`, `QUANTILE`, and others. + +- Updates to scoring (`BM25` is now the default instead of `TF-IDF`). + +- Improved handling of expired records, memory constraints, and malformed fields. + +### Deprecations + +#### API deprecations + +- Deprecated the `policy` field for [bootstrap]({{}}) REST API requests. Use [`PUT /v1/cluster/policy`]({{< relref "/operate/rs/references/rest-api/requests/cluster/policy#put-cluster-policy" >}}) to change cluster policies after cluster creation instead. + +- Deprecated the `module_args` field for [database]({{}}) REST API requests. Use the new module configuration objects `search`, `timeseries`, and `probabilistic` instead. + +#### Redis Query Engine deprecations + +- Deprecated commands: `FT.ADD`, `FT.SAFEADD`, `FT.DEL`, `FT.GET`, `FT.MGET`, `FT.SYNADD`, `FT.DROP`, `FT._DROPIFX`, and `FT.CONFIG`. + +- Deprecated `FT.SEARCH` options: `GEOFILTER`, `FILTER`, and `NOSTOPWORDS`. + +- Deprecated vector search options: `INITIAL_CAP` and `BLOCK_SIZE`. + +- Deprecated configuration parameters: `WORKER_THREADS`, `MT_MODE`, `PRIVILEGED_THREADS_NUM`, and `GCSCANSIZE`. + +- Deprecated dialects: `DIALECT 1`, `DIALECT 3`, and `DIALECT 4`. + +#### Internal monitoring and v1 Prometheus metrics deprecation + +The existing [internal monitoring engine]({{}}) is deprecated. We recommend transitioning to the new [metrics stream engine]({{}}) for improved performance, enhanced integration capabilities, and modernized metrics streaming. + +V1 Prometheus metrics are deprecated but still available. To transition to the new metrics stream engine, either migrate your existing dashboards using [this guide]({{}}) now, or wait to use new preconfigured dashboards when they become available in a future release. + +### Supported platforms + +The following table provides a snapshot of supported platforms as of this Redis Enterprise Software release. See the [supported platforms reference]({{< relref "/operate/rs/references/supported-platforms" >}}) for more details about operating system compatibility. + + Supported – The platform is supported for this version of Redis Enterprise Software and Redis Stack modules. + +:warning: Deprecation warning – The platform is still supported for this version of Redis Enterprise Software, but support will be removed in a future release. + +| Redis Software
major versions | 8.0 | 7.22 | 7.8 | 7.4 | 7.2 | 6.4 | 6.2 | +|---------------------------------|:-----:|:-----:|:-----:|:-----:|:-----:|:-----:|:-----:| +| **Release date** | Oct 2025 | May 2025 | Nov 2024 | Feb 2024 | Aug 2023 | Feb 2023 | Aug 2021 | +| [**End-of-life date**]({{< relref "/operate/rs/installing-upgrading/product-lifecycle#endoflife-schedule" >}}) | Determined after
next major release | Oct 2027 | May 2027 | Nov 2026 | Feb 2026 | Aug 2025 | Feb 2025 | +| **Platforms** | | | | | | | | +| RHEL 9 &
compatible distros[1](#table-note-1) | | | | | – | – | – | +| RHEL 9
FIPS mode[5](#table-note-5) | | | | – | – | – | – | +| RHEL 8 &
compatible distros[1](#table-note-1) | | | | | | | | +| RHEL 7 &
compatible distros[1](#table-note-1) | – | – | – | – | :warning: | | | +| Ubuntu 22.04[2](#table-note-2) | | | | – | – | – | – | +| Ubuntu 20.04[2](#table-note-2) | | | | | | | – | +| Ubuntu 18.04[2](#table-note-2) | – | – | – | :warning: | :warning: | | | +| Ubuntu 16.04[2](#table-note-2) | – | – | – | – | :warning: | | | +| Amazon Linux 2 | | | | | | | – | +| Amazon Linux 1 | – | – | – | – | | | | +| Kubernetes[3](#table-note-3) | | | | | | | | +| Docker[4](#table-note-4) | | | | | | | | + +1. The RHEL-compatible distributions CentOS, CentOS Stream, Alma, and Rocky are supported if they have full RHEL compatibility. Oracle Linux running the Red Hat Compatible Kernel (RHCK) is supported, but the Unbreakable Enterprise Kernel (UEK) is not supported. + +2. The server version of Ubuntu is recommended for production installations. The desktop version is only recommended for development deployments. + +3. See the [Redis Enterprise for Kubernetes documentation]({{< relref "/operate/kubernetes/reference/supported_k8s_distributions" >}}) for details about support per version and Kubernetes distribution. + +4. [Docker images]({{< relref "/operate/rs/installing-upgrading/quickstarts/docker-quickstart" >}}) of Redis Enterprise Software are certified for development and testing only. + +5. Supported only if [FIPS was enabled during RHEL installation](https://docs.redhat.com/en/documentation/red_hat_enterprise_linux/9/html/security_hardening/switching-rhel-to-fips-mode_security-hardening#proc_installing-the-system-with-fips-mode-enabled_switching-rhel-to-fips-mode) to ensure FIPS compliance. + +## Downloads + +The following table shows the SHA256 checksums for the available packages: + +| Package | SHA256 checksum (8.0.2-tba October release) | +|---------|---------------------------------------| +| Ubuntu 20 | | +| Ubuntu 22 | | +| Red Hat Enterprise Linux (RHEL) 8 | | +| Red Hat Enterprise Linux (RHEL) 9 | | +| Amazon Linux 2 | | + +## Known issues + +- RS131972: Creating an ACL that contains a line break in the Cluster Manager UI can cause shard migration to fail due to ACL errors. + +- RS155734: Endpoint availability metrics do not work as expected due to a calculation error. + +- RS153589: The metrics stream engine preview reports incorrect latency metrics. + +## Known limitations + +#### Rolling upgrade limitation for clusters with custom or deprecated modules + +Due to module handling changes introduced in Redis Enterprise Software version 8.0, upgrading a cluster that contains custom or deprecated modules, such as RedisGraph and RedisGears v2, can become stuck when adding a new node to the cluster during a rolling upgrade. + +#### Module commands limitation during Active-Active database upgrades to Redis 8.0 + +When upgrading an Active-Active database to Redis version 8.0, you cannot use module commands until all Active-Active database instances have been upgraded. Currently, these commands are not blocked automatically. + +#### New Cluster Manager UI limitations + +The following legacy UI features are not yet available in the new Cluster Manager UI: + +- Purge an Active-Active instance. + + Use [`crdb-cli crdb purge-instance`]({{< relref "/operate/rs/references/cli-utilities/crdb-cli/crdb/purge-instance" >}}) instead. + +- Search and export the log. + +## Security + +#### Open source Redis security fixes compatibility + +As part of Redis's commitment to security, Redis Enterprise Software implements the latest [security fixes](https://github.com/redis/redis/releases) available with [open source Redis](https://github.com/redis/redis). Redis Enterprise Software has already included the fixes for the relevant CVEs. + +Some CVEs announced for open source Redis do not affect Redis Enterprise Software due to different or additional functionality available in Redis Enterprise Software that is not available in open source Redis. + +Redis Enterprise Software 8.0.2-tba supports open source Redis 8.2, 8.0, 7.4, 7.2, and 6.2. Below is the list of open source Redis CVEs fixed by version. + +Redis 8.2.x: + +- (CVE-2025-46818) An authenticated user may use a specially crafted Lua script to manipulate different LUA objects and potentially run their own code in the context of another user. + +- (CVE-2025-46819) An authenticated user may use a specially crafted LUA script to read out-of-bound data or crash the server and lead to subsequent denial of service. + +- (CVE-2025-46817) An authenticated user may use a specially crafted Lua script to cause an integer overflow and potentially lead to remote code execution. + +- (CVE-2025-49844) An authenticated user may use a specially crafted Lua script to manipulate the garbage collector, trigger a use-after-free, and potentially lead to remote code execution. + +Redis 8.0.x: + +- (CVE-2025-46818) An authenticated user may use a specially crafted Lua script to manipulate different LUA objects and potentially run their own code in the context of another user. + +- (CVE-2025-46819) An authenticated user may use a specially crafted LUA script to read out-of-bound data or crash the server and lead to subsequent denial of service. + +- (CVE-2025-46817) An authenticated user may use a specially crafted Lua script to cause an integer overflow and potentially lead to remote code execution. + +- (CVE-2025-49844) An authenticated user may use a specially crafted Lua script to manipulate the garbage collector, trigger a use-after-free, and potentially lead to remote code execution. + +Redis 7.4.x: + +- (CVE-2025-46818) An authenticated user may use a specially crafted Lua script to manipulate different LUA objects and potentially run their own code in the context of another user. + +- (CVE-2025-46819) An authenticated user may use a specially crafted LUA script to read out-of-bound data or crash the server and lead to subsequent denial of service. + +- (CVE-2025-46817) An authenticated user may use a specially crafted Lua script to cause an integer overflow and potentially lead to remote code execution. + +- (CVE-2025-49844) An authenticated user may use a specially crafted Lua script to manipulate the garbage collector, trigger a use-after-free, and potentially lead to remote code execution. + +- (CVE-2025-32023) An authenticated user can use a specially crafted string to trigger a stack/heap out-of-bounds write on HyperLogLog operations, which can lead to remote code execution. + +- (CVE-2025-21605) An unauthenticated client can cause unlimited growth of output buffers until the server runs out of memory or is terminated, which can lead to denial-of-service. + +Redis 7.2.x: + +- (CVE-2025-46818) An authenticated user may use a specially crafted Lua script to manipulate different LUA objects and potentially run their own code in the context of another user. + +- (CVE-2025-46819) An authenticated user may use a specially crafted LUA script to read out-of-bound data or crash the server and lead to subsequent denial of service. + +- (CVE-2025-46817) An authenticated user may use a specially crafted Lua script to cause an integer overflow and potentially lead to remote code execution. + +- (CVE-2025-49844) An authenticated user may use a specially crafted Lua script to manipulate the garbage collector, trigger a use-after-free, and potentially lead to remote code execution. + +- (CVE-2025-32023) An authenticated user can use a specially crafted string to trigger a stack/heap out-of-bounds write on HyperLogLog operations, which can lead to remote code execution. + +- (CVE-2025-21605) An unauthenticated client can cause unlimited growth of output buffers until the server runs out of memory or is terminated, which can lead to denial-of-service. + +- (CVE-2024-31449) An authenticated user may use a specially crafted Lua script to trigger a stack buffer overflow in the bit library, which may potentially lead to remote code execution. + +- (CVE-2024-31228) An authenticated user can trigger a denial-of-service by using specially crafted, long string match patterns on supported commands such as `KEYS`, `SCAN`, `PSUBSCRIBE`, `FUNCTION LIST`, `COMMAND LIST`, and ACL definitions. Matching of extremely long patterns may result in unbounded recursion, leading to stack overflow and process crashes. + +- (CVE-2023-41056) In some cases, Redis may incorrectly handle resizing of memory buffers, which can result in incorrect accounting of buffer sizes and lead to heap overflow and potential remote code execution. + +- (CVE-2023-41053) Redis does not correctly identify keys accessed by `SORT_RO` and, as a result, may grant users executing this command access to keys that are not explicitly authorized by the ACL configuration. (Redis 7.2.1) + +Redis 7.0.x: + +- (CVE-2024-31449) An authenticated user may use a specially crafted Lua script to trigger a stack buffer overflow in the bit library, which may potentially lead to remote code execution. + +- (CVE-2024-31228) An authenticated user can trigger a denial-of-service by using specially crafted, long string match patterns on supported commands such as `KEYS`, `SCAN`, `PSUBSCRIBE`, `FUNCTION LIST`, `COMMAND LIST`, and ACL definitions. Matching of extremely long patterns may result in unbounded recursion, leading to stack overflow and process crashes. + +- (CVE-2023-41056) In some cases, Redis may incorrectly handle resizing of memory buffers, which can result in incorrect accounting of buffer sizes and lead to heap overflow and potential remote code execution. + +- (CVE-2023-41053) Redis does not correctly identify keys accessed by `SORT_RO` and, as a result, may grant users executing this command access to keys that are not explicitly authorized by the ACL configuration. (Redis 7.0.13) + +- (CVE-2023-36824) Extracting key names from a command and a list of arguments may, in some cases, trigger a heap overflow and result in reading random heap memory, heap corruption, and potentially remote code execution. Specifically: using `COMMAND GETKEYS*` and validation of key names in ACL rules. (Redis 7.0.12) + +- (CVE-2023-28856) Authenticated users can use the `HINCRBYFLOAT` command to create an invalid hash field that will crash Redis on access. (Redis 7.0.11) + +- (CVE-2023-28425) Specially crafted `MSETNX` commands can lead to assertion and denial-of-service. (Redis 7.0.10) + +- (CVE-2023-25155) Specially crafted `SRANDMEMBER`, `ZRANDMEMBER`, and `HRANDFIELD` commands can trigger an integer overflow, resulting in a runtime assertion and termination of the Redis server process. (Redis 7.0.9) + +- (CVE-2023-22458) Integer overflow in the Redis `HRANDFIELD` and `ZRANDMEMBER` commands can lead to denial-of-service. (Redis 7.0.8) + +- (CVE-2022-36021) String matching commands (like `SCAN` or `KEYS`) with a specially crafted pattern to trigger a denial-of-service attack on Redis can cause it to hang and consume 100% CPU time. (Redis 7.0.9) + +- (CVE-2022-35977) Integer overflow in the Redis `SETRANGE` and `SORT`/`SORT_RO` commands can drive Redis to OOM panic. (Redis 7.0.8) + +- (CVE-2022-35951) Executing an `XAUTOCLAIM` command on a stream key in a specific state, with a specially crafted `COUNT` argument, may cause an integer overflow, a subsequent heap overflow, and potentially lead to remote code execution. The problem affects Redis versions 7.0.0 or newer. (Redis 7.0.5) + +- (CVE-2022-31144) A specially crafted `XAUTOCLAIM` command on a stream key in a specific state may result in heap overflow and potentially remote code execution. The problem affects Redis versions 7.0.0 or newer. (Redis 7.0.4) + +- (CVE-2022-24834) A specially crafted Lua script executing in Redis can trigger a heap overflow in the cjson and cmsgpack libraries, and result in heap corruption and potentially remote code execution. The problem exists in all versions of Redis with Lua scripting support, starting from 2.6, and affects only authenticated and authorized users. (Redis 7.0.12) + +- (CVE-2022-24736) An attacker attempting to load a specially crafted Lua script can cause NULL pointer dereference which will result in a crash of the `redis-server` process. This issue affects all versions of Redis. (Redis 7.0.0) + +- (CVE-2022-24735) By exploiting weaknesses in the Lua script execution environment, an attacker with access to Redis can inject Lua code that will execute with the (potentially higher) privileges of another Redis user. (Redis 7.0.0) + +Redis 6.2.x: + +- (CVE-2025-46818) An authenticated user may use a specially crafted Lua script to manipulate different LUA objects and potentially run their own code in the context of another user. + +- (CVE-2025-46819) An authenticated user may use a specially crafted LUA script to read out-of-bound data or crash the server and lead to subsequent denial of service. + +- (CVE-2025-46817) An authenticated user may use a specially crafted Lua script to cause an integer overflow and potentially lead to remote code execution. + +- (CVE-2025-49844) An authenticated user may use a specially crafted Lua script to manipulate the garbage collector, trigger a use-after-free, and potentially lead to remote code execution. + +- (CVE-2025-32023) An authenticated user can use a specially crafted string to trigger a stack/heap out-of-bounds write on HyperLogLog operations, which can lead to remote code execution. + +- (CVE-2025-21605) An unauthenticated client can cause unlimited growth of output buffers until the server runs out of memory or is terminated, which can lead to denial-of-service. + +- (CVE-2024-31449) An authenticated user may use a specially crafted Lua script to trigger a stack buffer overflow in the bit library, which may potentially lead to remote code execution. + +- (CVE-2024-31228) An authenticated user can trigger a denial-of-service by using specially crafted, long string match patterns on supported commands such as `KEYS`, `SCAN`, `PSUBSCRIBE`, `FUNCTION LIST`, `COMMAND LIST`, and ACL definitions. Matching of extremely long patterns may result in unbounded recursion, leading to stack overflow and process crashes. + +- (CVE-2023-28856) Authenticated users can use the `HINCRBYFLOAT` command to create an invalid hash field that will crash Redis on access. (Redis 6.2.12) + +- (CVE-2023-25155) Specially crafted `SRANDMEMBER`, `ZRANDMEMBER`, and `HRANDFIELD` commands can trigger an integer overflow, resulting in a runtime assertion and termination of the Redis server process. (Redis 6.2.11) + +- (CVE-2023-22458) Integer overflow in the Redis `HRANDFIELD` and `ZRANDMEMBER` commands can lead to denial-of-service. (Redis 6.2.9) + +- (CVE-2022-36021) String matching commands (like `SCAN` or `KEYS`) with a specially crafted pattern to trigger a denial-of-service attack on Redis can cause it to hang and consume 100% CPU time. (Redis 6.2.11) + +- (CVE-2022-35977) Integer overflow in the Redis `SETRANGE` and `SORT`/`SORT_RO` commands can drive Redis to OOM panic. (Redis 6.2.9) + +- (CVE-2022-24834) A specially crafted Lua script executing in Redis can trigger a heap overflow in the cjson and cmsgpack libraries, and result in heap corruption and potentially remote code execution. The problem exists in all versions of Redis with Lua scripting support, starting from 2.6, and affects only authenticated and authorized users. (Redis 6.2.13) + +- (CVE-2022-24736) An attacker attempting to load a specially crafted Lua script can cause NULL pointer dereference which will result in a crash of the `redis-server` process. This issue affects all versions of Redis. (Redis 6.2.7) + +- (CVE-2022-24735) By exploiting weaknesses in the Lua script execution environment, an attacker with access to Redis can inject Lua code that will execute with the (potentially higher) privileges of another Redis user. (Redis 6.2.7) + +- (CVE-2021-41099) Integer to heap buffer overflow handling certain string commands and network payloads, when `proto-max-bulk-len` is manually configured to a non-default, very large value. (Redis 6.2.6) + +- (CVE-2021-32762) Integer to heap buffer overflow issue in `redis-cli` and `redis-sentinel` parsing large multi-bulk replies on some older and less common platforms. (Redis 6.2.6) + +- (CVE-2021-32761) An integer overflow bug in Redis version 2.2 or newer can be exploited using the `BITFIELD` command to corrupt the heap and potentially result with remote code execution. (Redis 6.2.5) + +- (CVE-2021-32687) Integer to heap buffer overflow with intsets, when `set-max-intset-entries` is manually configured to a non-default, very large value. (Redis 6.2.6) + +- (CVE-2021-32675) Denial Of Service when processing RESP request payloads with a large number of elements on many connections. (Redis 6.2.6) + +- (CVE-2021-32672) Random heap reading issue with Lua Debugger. (Redis 6.2.6) + +- (CVE-2021-32628) Integer to heap buffer overflow handling ziplist-encoded data types, when configuring a large, non-default value for `hash-max-ziplist-entries`, `hash-max-ziplist-value`, `zset-max-ziplist-entries` or `zset-max-ziplist-value`. (Redis 6.2.6) + +- (CVE-2021-32627) Integer to heap buffer overflow issue with streams, when configuring a non-default, large value for `proto-max-bulk-len` and `client-query-buffer-limit`. (Redis 6.2.6) + +- (CVE-2021-32626) Specially crafted Lua scripts may result with Heap buffer overflow. (Redis 6.2.6) + +- (CVE-2021-32625) An integer overflow bug in Redis version 6.0 or newer can be exploited using the STRALGO LCS command to corrupt the heap and potentially result with remote code execution. This is a result of an incomplete fix by CVE-2021-29477. (Redis 6.2.4) + +- (CVE-2021-29478) An integer overflow bug in Redis 6.2 could be exploited to corrupt the heap and potentially result with remote code execution. The vulnerability involves changing the default set-max-intset-entries configuration value, creating a large set key that consists of integer values and using the COPY command to duplicate it. The integer overflow bug exists in all versions of Redis starting with 2.6, where it could result with a corrupted RDB or DUMP payload, but not exploited through COPY (which did not exist before 6.2). (Redis 6.2.3) + +- (CVE-2021-29477) An integer overflow bug in Redis version 6.0 or newer could be exploited using the STRALGO LCS command to corrupt the heap and potentially result in remote code execution. The integer overflow bug exists in all versions of Redis starting with 6.0. (Redis 6.2.3) diff --git a/content/operate/rs/security/access-control/redis-acl-overview.md b/content/operate/rs/security/access-control/redis-acl-overview.md index 770b55ba48..70bf4769ea 100644 --- a/content/operate/rs/security/access-control/redis-acl-overview.md +++ b/content/operate/rs/security/access-control/redis-acl-overview.md @@ -38,7 +38,7 @@ The following example allows all `read` commands and the `SET` command: +@read +SET ``` -Module commands have several ACL limitations: +For database versions earlier than Redis 8.2, module commands have several ACL limitations: - [Redis modules]({{< relref "/operate/oss_and_stack/stack-with-enterprise" >}}) do not have command categories.