Redis哨兵机制与实现

一、引子

Redis搭建了主从复制后,有一个致命的问题,就是Master结点宕机,如何保证可用性,实现继续读写,因此提出了Redis哨兵机制。

二、什么是哨兵

Sentinel(哨兵)是用于监控Redis集群中Master状态的工具,是 Redis 高可用解决方案,哨兵可以监视一个或者多个redis master服务,以及这些master服务的所有从服务。某个master服务宕机后,会把这个master下的某个从服务升级为master来替代已宕机的master继续工作

三、配置哨兵监控master

1.在/usr/local/redis/下创建sentinel.conf,创建所需的sentinel目录
vim sentinel.conf
mkdir /usr/local/redis/sentinel -p
  • 普通配置
port 26379
pidfile "/usr/local/redis/sentinel/redis-sentinel.pid"
dir "/usr/local/redis/sentinel"
#后台运行
daemonize yes 
#保护模式 如果开启 需要指定 bind ip 只有指定ip才能访问
protected-mode no
logfile "/usr/local/redis/sentinel/redis-sentinel.log"
  • 核心配置
#配置哨兵 2指2个哨兵发现master宕机即触发故障转移
sentinel monitor mymaster 127.0.0.1 6379 2
#密码
sentinel auth-pass mymaster mypassword
#master被sentinel认定为失效的间隔时间
sentinel down-after-milliseconds mymaster 30000
#剩余的slaves重新和新的master做同步的并行个数
sentinel parallel-syncs mymaster 1
#主备切换的超时时间,哨兵要去做故障转移,这个时候哨兵也是一个进程,如果他没有去执行,超过这个时间后,会由其他的哨兵来处理
sentinel failover-timeout mymaster 180000

2.启动哨兵
redis-sentinel sentinel.conf

四、其他redis服务器同上

五、测试

将master宕机,哨兵会将其他两个从服务中的一个选举成为master,如果master恢复后,将会转变为slave。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序猿S先森丶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值