logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

ocf_heartbeat_redis - Redis server

Author

ClusterLabscontributors(seetheresourceagentsourceforinformationaboutindividualauthors) resource-agents 4.16.0-3ubuntu 06/25/2025 OCF_HEARTBEAT_REDIS(7)

Description

Resource agent script for redis server. This resource fully supports master/slave replication. The master preference of a node is determined by the 'slave_priority' parameter of the redis config. When taking the resource from 'unmanaged' to 'managed', the currently active master will be given a priority of 1000 (plus 1 for each active connection). The default 'slave_priority' is 100, so the master will stay master. For a slave to become master after converting the resource to managed, set a slave_priority greater than 1000.

Example Crm Shell

The following is an example configuration for a redis resource using the crm(8) shell: primitive p_redis ocf:heartbeat:redis \ op monitor depth="0" timeout="60s" interval="45s" \ op monitor role="Promoted" depth="0" timeout="60s" interval="20s" ms ms_redis p_redis \ meta notify="true" interleave="true"

Example Pcs

The following is an example configuration for a redis resource using pcs(8) pcs resource create p_redis ocf:heartbeat:redis \ op monitor OCF_CHECK_LEVEL="0" timeout="60s" interval="45s" \ op monitor role="Promoted" OCF_CHECK_LEVEL="0" timeout="60s" interval="20s" promotable

Name

ocf_heartbeat_redis - Redis server

See Also

Supported Actions

This resource agent supports the following actions (operations): start Starts the resource. Suggested minimum timeout: 120s. stop Stops the resource. Suggested minimum timeout: 120s. status Performs a status check. Suggested minimum timeout: 60s. monitor Performs a detailed status check. Suggested minimum timeout: 60s. Suggested interval: 45s. monitor(Promotedrole) Performs a detailed status check. Suggested minimum timeout: 60s. Suggested interval: 20s. promote Promotes the resource to the Master role. Suggested minimum timeout: 120s. demote Demotes the resource to the Slave role. Suggested minimum timeout: 120s. notify Suggested minimum timeout: 90s. validate-all Performs a validation of the resource configuration. Suggested minimum timeout: 5s. meta-data Retrieves resource agent metadata (internal use only). Suggested minimum timeout: 5s.

Supported Parameters

bin Path to `redis-server` (optional, string, default "/usr/bin/redis-server") client_bin Path to `redis-cli` (optional, string, default "/usr/bin/redis-cli") config Path to 'redis.conf' (unique, optional, string, default "/etc/redis/redis.conf") user User to run redis as (optional, string, default "redis") rundir Directory to store socket and pid file in (unique, optional, string, default "/var/run/redis") pidfile_name The filename to use for the pidfile. Will be created in the rundir. Should only be a basename, not a full path. (optional, string, default "redis-server.pid") socket_name The filename to use for the socket. Will be crated in the rundir. Should only be a basename, not a full path. (optional, string, default "redis.sock") port Port for replication client to connect to on remote server (optional, string, default "6379") tunnel_host When replication traffic is tunnelled, this is the host to target to forward outgoing traffic to the redis master. The resource agent configures the redis slave to target the master via tunnel_host:tunnel_port. Note that in order to enable replication traffic tunneling, parameter {tunnel_port_map} must be populated. (optional, string, default "127.0.0.1") tunnel_port_map A mapping of pacemaker node names to redis port number. To be used when redis servers need to tunnel replication traffic. On every node where the redis resource is running, the redis server listens to a different port. Each redis server can access its peers for replication traffic via a tunnel accessible at {tunnel_host}:port. The mapping the form of: pcmk1-name:port-for-redis1;pcmk2-name:port-for-redis2;pcmk3-name:port-for-redis3 where the redis resource started on node pcmk1-name would listen on port port-for-redis1 (optional, string, no default) wait_last_known_master During redis cluster bootstrap, wait for the last known master to be promoted before allowing any other instances in the cluster to be promoted. This lessens the risk of data loss when persistent data is in use. (optional, boolean, default false)

Synopsis

redis [start | stop | status | monitor | promote | demote | meta-data | validate-all]

See Also