Redis集群模式之哨兵模式

上一篇 << 下一篇 >>>Redis集群模式之Cluster


哨兵集群的设计原理

a、哨兵配置我们的主节点,启动时通过info replication就可以获取所有的从节点
b、多个哨兵都执行同一个主的master节点监听,订阅到相同的通道,有新的哨兵加入都会向通道中发送自己服务的信息,该通道的订阅者可以发现新哨兵的加入,随后相互建立长连接。
C、Master的故障发现 单个哨兵会向主的master节点发送ping的命令,如果master节点没有及时的响应,哨兵会认为该master节点为“主观不可用状态”,同时会发送给其他都哨兵确认该Master节点是否不可用,当前确认的哨兵节点数>=quorum(可配置),会实现重新选举。

哨兵的作用

管理集群redis、监控选举策略、心跳检测,(独立的一个应用程序)

哨兵集群配置需要注意的事项

Redis的哨兵机制就是解决我们以上主从复制存在缺陷(选举问题),解决问题保证我们的Redis高可用,实现自动化故障发现与故障转移,无法解决主从复制问题。

哨兵集群的配置

哨兵不建议是单机的,最好每个Redis节点都需要配置哨兵监听。
【主从复制最好不要使用密码,如果非要使用密码的话,则主节点也加上密码,要不然宕机重启后,不能同步新的主节点数据】

cp /usr/redis-5.0.6/sentinel.conf    /usr/redis/bin
cd  /usr/redis/bin
vi sentinel.conf
sentinel monitor mymaster 192.168.212.160 6379 3
sentinel auth-pass mymaster 123456
daemonize yes  #后台运行
sentinel down-after-milliseconds mymaster 3000#sentinel心跳检测主3秒内无响应,视为挂掉,开始切换其他从为主
sentinel parallel-syncs mymaster 1#每次最多可以有1个从同步主。一个从同步结束,另一个从开始同步。
sentinel failover-timeout mymaster 18000#主从切换超时时间
启动哨兵./redis-sentinel ./sentinel.conf

推荐阅读:
<<<分布式缓存与本地缓存的区别
<< << << << << << << << << << << << << << << <<<使用Redisson工具实现分布式锁
<< << << << << << << << << << <<<阿里云的Canal框架实现Redis与Mysql同步原理及代码示例
<<<阿里云的Canal框架配置
<< << <<

你可能感兴趣的:(Redis集群模式之哨兵模式)