redis sentinel配置

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了redis sentinel配置相关的知识,希望对你有一定的参考价值。

sentinel.conf

## --------------------------------------

port 26379


dir /tmp



# sentinel monitor <master-name> <ip> <redis-port> <quorum>

# master-name:不能包含特殊字符,自定义master名字

# ip: redis master IP

# redis-port: redis master PORT

# quorum: 客观DOWN至少多个sentinel同意

# Tells Sentinel to monitor this master, and to consider it in O_DOWN

# (Objectively Down) state only if at least <quorum> sentinels agree.

#

# Note that whatever is the ODOWN quorum, a Sentinel will require to

# be elected by the majority of the known Sentinels in order to

# start a failover, so no failover can be performed in minority.

#

# Slaves are auto-discovered, so you don‘t need to specify slaves in

# any way. Sentinel itself will rewrite this configuration file adding

# the slaves using additional configuration options.

# Also note that the configuration file is rewritten when a

# slave is promoted to master.

#

# Note: master name should not include special characters or spaces.

# The valid charset is A-z 0-9 and the three characters ".-_".

sentinel monitor mymaster 127.0.0.1 6379 2

sentinel auth-pass mymaster admin

sentinel down-after-milliseconds mymaster 30000

# sentinel parallel-syncs <master-name> <numslaves>

#

# How many slaves we can reconfigure to point to the new slave simultaneously

# during the failover. Use a low number if you use the slaves to serve query

# to avoid that all the slaves will be unreachable at about the same

# time while performing the synchronization with the master.

sentinel parallel-syncs mymaster 1

sentinel failover-timeout mymaster 180000


## ---------------------


sentinel启动脚本:

#!/bin/bash

#

# redis-sentinel - this script starts and stops the redis-sentinel daemon

#

# chkconfig:   - 80 12

# description:  Redis is a persistent key-value database

# processname: redis-server

# config:      /etc/redis/redis.conf

# pidfile:     /var/run/redis.pid

source /etc/init.d/functions

BIN="/usr/local/redis/bin"

CONFIG="/usr/local/redis/etc/sentinel.conf"

PIDFILE="/var/run/redis-sentinel.pid"

### Read configuration

[ -r "$SYSCONFIG" ] && source "$SYSCONFIG"

RETVAL=0

prog="redis-sentinel"

desc="Redis sentinel"

start() {

        if [ -e $PIDFILE ];then

             echo "$desc already running...."

             exit 1

        fi

        echo -n $"Starting $desc: "

        daemon $BIN/$prog $CONFIG --sentinel 2>&1 >> /var/log/messages &

        RETVAL=$?

        echo

        [ $RETVAL -eq 0 ] && touch /var/lock/subsys/$prog

        return $RETVAL

}

stop() {

        echo -n $"Stop $desc: "

        killproc $prog

        RETVAL=$?

        echo

        [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$prog $PIDFILE

        return $RETVAL

}

restart() {

    stop

    start

}

case "$1" in

  start)

        start

        ;;

  stop)

        stop

        ;;

  restart)

        restart

        ;;

   *)

        echo $"Usage: $0 {start|stop|restart}"

        RETVAL=1

esac

exit $RETVAL


以上是关于redis sentinel配置的主要内容,如果未能解决你的问题,请参考以下文章

请教redis sentinel 无法failover 的问题

redis sentinel配置

Redis-Sentinel部署和配置

[redis 源码走读] sentinel 哨兵 - 节点发现流程

整理:redis一主多从+Sentinel哨兵高可用配置

Redis 5 配置 Redis sentinel(哨兵模式)