--- Title: rladmin tune alwaysopen: false categories: - docs - operate - rs description: Configures parameters for databases, proxies, nodes, and clusters. headerRange: '[1-2]' linkTitle: tune toc: 'true' weight: $weight url: '/operate/rs/7.4/references/cli-utilities/rladmin/tune/' --- Configures parameters for databases, proxies, nodes, and clusters. ## `tune cluster` Configures cluster parameters. ``` sh rladmin tune cluster [ repl_diskless { enabled | disabled } ] [ redis_provision_node_threshold ] [ redis_migrate_node_threshold ] [ redis_provision_node_threshold_percent ] [ redis_migrate_node_threshold_percent ] [ max_simultaneous_backups ] [ failure_detection_sensitivity { high | low } ] [ watchdog_profile { cloud | local-network } ] [ slave_ha { enabled | disabled } ] [ slave_ha_grace_period ] [ slave_ha_cooldown_period ] [ slave_ha_bdb_cooldown_period ] [ max_saved_events_per_type ] [ parallel_shards_upgrade ] [ default_concurrent_restore_actions ] [ show_internals { enabled | disabled } ] [ expose_hostnames_for_all_suffixes { enabled | disabled } ] [ redis_upgrade_policy { latest | major } ] [ default_redis_version ] [ default_non_sharded_proxy_policy { single | all-master-shards | all-nodes } ] [ default_sharded_proxy_policy { single | all-master-shards | all-nodes } ] [ default_shards_placement { dense | sparse } ] [ data_internode_encryption { enabled | disabled } ] [ db_conns_auditing { enabled | disabled } ] [ acl_pubsub_default { resetchannels | allchannels } ] [ resp3_default { enabled | disabled } ] [ automatic_node_offload { enabled | disabled } ] ``` ### Parameters | Parameters | 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) | | automatic_node_offload | `enabled`
`disabled` | Define whether automatic node offload migration will take place | | data_internode_encryption | `enabled`
`disabled` | Activates or deactivates [internode encryption]({{< relref "/operate/rs/7.4/security/encryption/internode-encryption" >}}) for new databases | | db_conns_auditing | `enabled`
`disabled` | Activates or deactivates [connection auditing]({{< relref "/operate/rs/7.4/security/audit-events" >}}) by default for new databases of a cluster | | default_concurrent_restore_actions | integer
`all` | Default number of concurrent actions when restoring a node from a snapshot (positive integer or "all") | | default_non_sharded_proxy_policy | `single`

`all-master-shards`

`all-nodes` | Default [proxy policy]({{< relref "/operate/rs/7.4/databases/configure/proxy-policy" >}}) for newly created non-sharded databases' endpoints | | default_redis_version | version number | The default Redis database compatibility version used to create new databases.

The value parameter should be a version number in the form of "x.y" where _x_ represents the major version number and _y_ represents the minor version number. The final value corresponds to the desired version of Redis.

You cannot set _default_redis_version_ to a value higher than that supported by the current _redis_upgrade_policy_ value. | | default_sharded_proxy_policy | `single`

`all-master-shards`

`all-nodes` | Default [proxy policy]({{< relref "/operate/rs/7.4/databases/configure/proxy-policy" >}}) for newly created sharded databases' endpoints | | default_shards_placement | `dense`
`sparse` | New databases place shards according to the default [shard placement policy]({{< relref "/operate/rs/7.4/databases/memory-performance/shard-placement-policy" >}}) | | expose_hostnames_for_all_suffixes | `enabled`
`disabled` | Exposes hostnames for all 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) | | login_lockout_counter_reset_after | time in seconds | Time after failed login attempt before the counter resets to 0 | | login_lockout_duration | time in seconds | Time a locked account remains locked ( "0" means only an admin can unlock the account) | | login_lockout_threshold | integer | Number of failed sign-in attempts to trigger locking a user account ("0" means never lock the account) | | max_saved_events_per_type | integer | Maximum number of events each type saved in CCS per object type | | max_simultaneous_backups | integer (default: 4) | Number of database backups allowed to run at the same time. Combines with `max_redis_forks` (set by [`tune node`](#tune-node)) to determine the number of shard backups allowed to run simultaneously. | | parallel_shards_upgrade | integer
`all` | Number of shards upgraded in parallel during DB upgrade (positive integer or "all") | | redis_migrate_node_threshold | size in MB | Memory (in MBs by default or can be specified) needed to migrate a database between nodes | | redis_migrate_node_threshold_percent | percentage | Memory (in percentage) needed to migrate a database between nodes | | redis_provision_node_threshold | size in MB | Memory (in MBs by default or can be specified) needed to provision a new database | | redis_provision_node_threshold_percent | percentage | Memory (in percentage) needed to provision a new database | | redis_upgrade_policy | `latest`
`major` | When you upgrade or create a new Redis database, this policy determines which version of Redis database compatibility is used.

Supported values are:
  • `latest`, which applies the most recent Redis compatibility update \(_effective default prior to v6.2.4_)

  • `major`, which applies the most recent major release compatibility update (_default as of v6.2.4_).
| | repl_diskless | `enabled`
`disabled` | Activates or deactivates diskless replication (can be overridden per database) | | resp3_default | `enabled`
`disabled` | Determines the default value of the `resp3` option upon upgrading a database to version 7.2 (defaults to `enabled`) | | show_internals | `enabled`
`disabled` | Controls the visibility of internal databases that are only used for the cluster's management | | slave_ha | `enabled`
`disabled` | Activates or deactivates [replica high availability]({{< relref "/operate/rs/7.4/databases/configure/replica-ha" >}}) in the cluster
(enabled by default; use [`rladmin tune db`](#tune-db) to change `slave_ha` for a specific database)

Deprecated as of Redis Enterprise Software v7.2.4. | | slave_ha_bdb_cooldown_period | time in seconds (default: 7200) | Time (in seconds) a database must wait after its shards are relocated by [replica high availability]({{< relref "/operate/rs/7.4/databases/configure/replica-ha" >}}) before it can go through another shard migration if another node fails (default is 2 hours) | | slave_ha_cooldown_period | time in seconds (default: 3600) | Time (in seconds) [replica high availability]({{< relref "/operate/rs/7.4/databases/configure/replica-ha" >}}) must wait after relocating shards due to node failure before performing another shard migration for any database in the cluster (default is 1 hour) | | slave_ha_grace_period | time in seconds (default: 600) | Time (in seconds) between when a node fails and when [replica high availability]({{< relref "/operate/rs/7.4/databases/configure/replica-ha" >}}) starts relocating shards to another node | | watchdog_profile | `cloud`
`local-network` | Watchdog profiles with preconfigured thresholds and timeouts (deprecated as of Redis Enterprise Software v6.4.2-69; use `failure_detection_sensitivity` instead)
• `cloud` is suitable for common cloud environments and has a higher tolerance for latency variance (also called network jitter).
• `local-network` is suitable for dedicated LANs and has better failure detection and failover times. | ### Returns Returns `Finished successfully` if the cluster configuration was changed. Otherwise, it returns an error. Use [`rladmin info cluster`]({{< relref "/operate/rs/7.4/references/cli-utilities/rladmin/info#info-cluster" >}}) to verify the cluster configuration was changed. ### Example ``` sh $ rladmin tune cluster slave_ha enabled Finished successfully $ rladmin info cluster | grep slave_ha slave_ha: enabled ``` ## `tune db` Configures database parameters. ``` sh rladmin tune db { db: | } [ slave_buffer ] [ client_buffer ] [ repl_backlog ] [ crdt_repl_backlog ] [ repl_timeout ] [ repl_diskless { enabled | disabled | default } ] [ master_persistence { enabled | disabled } ] [ maxclients ] [ schedpolicy { cmp | mru | spread | mnp } ] [ max_shard_pipeline ] [ conns ] [ conns_type ] [ max_client_pipeline ] [ max_connections ] [ max_aof_file_size ] [ max_aof_load_time ] [ oss_cluster { enabled | disabled } ] [ oss_cluster_api_preferred_ip_type ] [ slave_ha { enabled | disabled } ] [ slave_ha_priority ] [ skip_import_analyze { enabled | disabled } ] [ mkms { enabled | disabled } ] [ continue_on_error ] [ gradual_src_mode { enabled | disabled } ] [ gradual_sync_mode { enabled | disabled | auto } ] [ gradual_sync_max_shards_per_source ] [ module_name ] [ module_config_params ] [ crdt_xadd_id_uniqueness_mode { liberal | semi-strict | strict } ] [ metrics_export_all { enabled | disabled } ] [ syncer_mode { distributed | centralized }] [ syncer_monitoring { enabled | disabled } ] [ mtls_allow_weak_hashing { enabled | disabled } ] [ mtls_allow_outdated_certs { enabled | disabled } ] [ data_internode_encryption { enabled | disabled } ] [ db_conns_auditing { enabled | disabled } ] [ resp3 { enabled | disabled } ] ``` ### Parameters | Parameter | Type/Value | Description | |--------------------------------------|----------------------------------|---------------------------------------------------------------------------------------------------------------------------------------| | db:id | integer | ID of the specified database | | name | string | Name of the specified database | | client_buffer | value in MB hard:soft:time | Redis client output buffer limits | | conns | integer | Size of internal connection pool, specified per-thread or per-shard depending on conns_type | | conns_type | `per-thread`
`per-shard` | Specifies connection pool size as either per-thread or per-shard | | continue_on_error | | Flag that skips tuning shards that can't be reached | | crdt_repl_backlog | value in MB
`auto` | Size of the Active-Active replication buffer | | crdt_xadd_id_uniqueness_mode | `liberal`
`semi-strict`
`strict` | XADD's behavior in an Active-Active database, defined as liberal, semi-strict, or strict (see descriptions below) | | data_internode_encryption | `enabled`
`disabled` | Activates or deactivates [internode encryption]({{< relref "/operate/rs/7.4/security/encryption/internode-encryption" >}}) for the database | | db_conns_auditing | `enabled`
`disabled` | Activates or deactivates database [connection auditing]({{< relref "/operate/rs/7.4/security/audit-events" >}}) for a database | | gradual_src_mode | `enabled`
`disabled` | Activates or deactivates gradual sync of sources | | gradual_sync_max_shards_per_source | integer | Number of shards per sync source that can be replicated in parallel (positive integer) | | gradual_sync_mode | `enabled`
`disabled`
`auto` | Activates, deactivates, or automatically determines gradual sync of source shards | | master_persistence | `enabled`
`disabled` | If enabled, persists the primary shard in addition to replica shards in a replicated and persistent database. | | max_aof_file_size | size in MB | Maximum size (in MB, if not specified) of [AoF]({{< relref "/glossary/_index.md#letter-a" >}}) file (minimum value is 10 GB) | | max_aof_load_time | time in seconds | Time limit in seconds to load a shard from an append-only file (AOF). If exceeded, an AOF rewrite is initiated to decrease future load time.
Minimum: 2700 seconds (45 minutes)
Default: 3600 seconds (1 hour) | | max_client_pipeline | integer | Maximum commands in the proxy's pipeline per client connection (max value is 2047, default value is 200) | | max_connections | integer | Maximum client connections to the database's endpoint (default value is 0, which is unlimited) | | max_shard_pipeline | integer | Maximum commands in the proxy's pipeline per shard connection (default value is 200) | | maxclients | integer | Controls the maximum client connections between the proxy and shards (default value is 10000) | | metrics_export_all | `enabled`
`disabled` | Activates the exporter to expose all shard metrics | | mkms | `enabled`
`disabled` | Activates multi-key multi-slot commands | | module_config_params | string | Configures module arguments at runtime. Enclose `module_config_params` within quotation marks. | | module_name | `search`
`ReJSON`
`graph`
`timeseries`
`bf`
`rg` | The module to configure with `module_config_params` | | mtls_allow_outdated_certs | `enabled`
`disabled` | If enabled, allows outdated certificates in mTLS connections | | mtls_allow_weak_hashing | `enabled`
`disabled` | Activates weak hashing (less than 2048 bits) in mTLS connections | | oss_cluster | `enabled`
`disabled` | Activates OSS cluster API | | oss_cluster_api_preferred_ip_type | `internal`
`external` | IP type for the endpoint and database in the OSS cluster API (default is internal) | | repl_backlog | size in MB
`auto` | Size of the replication buffer | | repl_diskless | `enabled`
`disabled`
`default` | Activates or deactivates diskless replication (defaults to the cluster setting) | | repl_timeout | time in seconds | Replication timeout (in seconds) | | resp3 | `enabled`
`disabled` | Enables or deactivates RESP3 support (defaults to `enabled`) | | schedpolicy | `cmp`
`mru`
`spread`
`mnp` | Controls how server-side connections are used when forwarding traffic to shards | | skip_import_analyze | `enabled`
`disabled` | Skips the analyzing step when importing a database | | slave_buffer | `auto`
value in MB
hard:soft:time | Redis replica output buffer limits
• `auto`: dynamically adjusts the buffer limit based on the shard’s current used memory
• value in MB: sets the buffer limit in MB
• hard:soft:time: sets the hard limit (maximum buffer size in MB), soft limit in MB, and the time in seconds that the soft limit can be exceeded | | slave_ha | `enabled`
`disabled` | Activates or deactivates replica high availability (defaults to the cluster setting) | | slave_ha_priority | integer | Priority of the database in the replica high-availability mechanism | | syncer_mode | `distributed`
`centralized`| Configures syncer to run in distributed or centralized mode. For distributed syncer, the DMC policy must be all-nodes or all-master-nodes | | syncer_monitoring | `enabled`
`disabled` | Activates syncer monitoring | | XADD behavior mode | Description | | - | - | | liberal | XADD succeeds with any valid ID (not recommended, allows duplicate IDs) | | semi-strict | Allows a full ID. Partial IDs are completed with the unique database instance ID (not recommended, allows duplicate IDs). | | strict | XADD fails if a full ID is given. Partial IDs are completed using the unique database instance ID. | ### Returns Returns `Finished successfully` if the database configuration was changed. Otherwise, it returns an error. Use [`rladmin info db`]({{< relref "/operate/rs/7.4/references/cli-utilities/rladmin/info#info-db" >}}) to verify the database configuration was changed. ### Example ``` sh $ rladmin tune db db:4 repl_timeout 300 Tuning database: o Finished successfully $ rladmin info db db:4 | grep repl_timeout repl_timeout: 300 seconds ``` ## `tune node` Configures node parameters. ``` sh tune node { | all } [ max_listeners ] [ max_redis_forks ] [ max_redis_servers ] [ max_slave_full_syncs ] [ quorum_only { enabled | disabled } ] ``` ### Parameters | Parameter | Type/Value | Description | |----------------------|------------|----------------------------------------------------------------------------------------------------------------------------------| | id | integer | ID of the specified node | | all | | Configures settings for all nodes | | max_listeners | integer | Maximum number of endpoints that may be bound to the node | | max_redis_forks | integer | Maximum number of background processes forked from shards that may exist on the node at any given time | | max_redis_servers | integer | Maximum number of shards allowed to reside on the node | | max_slave_full_syncs | integer | Maximum number of simultaneous replica full-syncs that may be running at any given time (0: Unlimited, -1: Use cluster settings) | | quorum_only | `enabled`
`disabled` | If activated, configures the node as a [quorum-only node]({{< relref "/glossary/_index.md#letter-p" >}}) | ### Returns Returns `Finished successfully` if the node configuration was changed. Otherwise, it returns an error. Use [`rladmin info node`]({{< relref "/operate/rs/7.4/references/cli-utilities/rladmin/info#info-node" >}}) to verify the node configuration was changed. ### Example ``` sh $ rladmin tune node 3 max_redis_servers 120 Finished successfully $ rladmin info node 3 | grep "max redis servers" max redis servers: 120 ``` ## `tune proxy` Configures proxy parameters. ``` sh rladmin tune proxy { | all } [ mode { static | dynamic } ] [ threads ] [ max_threads ] [ scale_threshold ] [ scale_duration ] ``` ### Parameters | Parameter | Type/Value | Description | |-----------------|----------------------------|-------------------------------------------------------------------------------------| | id | integer | ID of the specified proxy | | all | | Configures settings for all proxies | | max_threads | integer, (range: 1-255) | Maximum number of threads allowed | | mode | `static`
`dynamic` | Determines if the proxy automatically adjusts the number of threads based on load size | | scale_duration | time in seconds, (range: 10-300) | Time of scale_threshold CPU utilization before the automatic proxy automatically scales | | scale_threshold | percentage, (range: 50-99) | CPU utilization threshold that triggers spawning new threads | | threads | integer, (range: 1-255) | Initial number of threads created at startup | ### Returns Returns `OK` if the proxy configuration was changed. Otherwise, it returns an error. Use [`rladmin info proxy`]({{< relref "/operate/rs/7.4/references/cli-utilities/rladmin/info#info-proxy" >}}) to verify the proxy configuration was changed. ### Example ``` sh $ rladmin tune proxy 2 scale_threshold 75 Configuring proxies: - proxy:2: ok $ rladmin info proxy 2 | grep scale_threshold scale_threshold: 75 (%) ```