redis哨兵群集
Redis sentinel,跟redis主从区别;
redis主从; 主挂了从不会替代主
redis sentinel 主挂了从会替代主 MHA
一、Redis sentinel 概述;
概述;Sentinel:哨兵模式,是一个分布式的系统,该进程是用于监控redis集群中Master主服务器工作的状态,在Master主服务器发生故障的时候,可以实现Master和Slave服务器的切换,保证系统的高可用,其已经被集成在redis2.6 + 的版本中,Redis的哨兵模式到了2.8版本之后就得到了稳定;
关于sentinel的三个定时任务:
1、每1秒每个sentinel对其他sentinel和redis节点执行ping操作,心跳检测
2、每10秒每个sentinel会对master和slave执行info命令,目的是发现slave结点,确定主从关系
3、每2秒每个sentinel通过master节点的channel交换信息(pub/sub)。master节点上有一个发布订阅的频道(sentinel:hello)。sentinel节点通过__sentinel__:hello频道进行信息交换(对节点的"看法"和自身的信息),达成共识
二、Redis sentinel的工作机制
工作进程
监控(Monitoring): Sentinel 会不断地检查你的主服务器和从服务器是否运作正常
提醒(Notification): 当被监控的某个 Redis 服务器出现问题时,Sentinel 可以通过 API 向管理员或者其他应用程序发送通知
自动故障迁移(Automatic failover):如果 master 没有按预期工作,Sentinel 可以启动一个故障转移过程,其中一个副本被提升为 master,其他额外的副本被重新配置为使用新的 master,并且使用 Redis 服务器的应用程序会被告知要使用的新地址连接时
配置提供程序: Sentinel 充当客户端服务发现的权威来源:客户端连接到 Sentinel 以请求负责给定服务的当前 Redis 主节点的地址。如果发生故障转移,Sentinels 将报告新地址
部署Redis Sentinel 群集