配置哨兵模式
简言:哨兵模式作为一个高可用方案,主要用于及时发现主节点故障并完成转移。分别由哨兵节点和数据节点组成,哨兵节点是特殊的redis节点,不做存储数据;数据节点为主节点和从节点。
- 主从节点
- 配置主节点(端口6379)
port 6379
logfile 6379.log
pidfile redis_6379.pid
dbfilename dump_6379.rdb
# 默认自己就是主机
- 配置从节点(端口6380)
port 6380
logfile 6380.log
pidfile redis_6380.pid
dbfilename dump_6380.rdb
# 配置为从节点
# slaveof <ip> <port>
slaveof 127.0.0.1 6379
# 主节点认证密码
# masterauth <password>
masterauth 123456
- 配置从节点 (端口6381)
port 6381
logfile 6381.log
pidfile redis_6381.pid
dbfilename dump_6381.rdb
# 配置为从节点
# slaveof <ip> <port>
slaveof 127.0.0.1 6379
# 主节点认证密码
# masterauth <password>
masterauth 123456
- 以此启动各节点,先保证主节点启动
redis-server redis.conf
redis-server redis-6380.conf
redis-server redis-6381.conf
- 进入redis-cli客户端
# -h 指定ip -p 指定端口 -a指定密码
reids-cli -a 123456
- 进入redis命令控制台后,输入下面命令即可看到各节点的情况
info Replication
- 配置哨兵
# 哨兵端口
port 26379
daemonize yes
# 配置该哨兵节点监听的主节点
# "mymaster"表示主节点名称
# "2"表示至少需要2个哨兵同意,才可判定主节点故障并进行故障转移
# sentinel monitor <master-name> <ip> <redis-port> <quorum>
sentinel monitor mymaster 127.0.0.1 6379 2
# 配置哨兵连接主节点的认证密码
# sentinel auth-pass <master-name> <master-password>
sentinel auth-pass mymaster 123456
- 启动哨兵
redis-sentinel sentinel-26379.conf
- 进入redis-cli客户端
redis-cli -p 26379
- 进入redis命令控制台后,输入下面命令即可看到当前哨兵监听的情况
info Sentinel