主要功能
集群监控:负责监控redis master和slave进程是否正常工作
消息通知:如果某个redis实例有故障,那么哨兵负责发送消息作为劲爆通知给管理员
故障转移:如果master node挂掉了,会自动转移到slave node上
配置中心:如果故障转移发生了,通知client客户端新的master地址
主要用途
哨兵实现了redis集群的高可用,本身也是分布式的,作为一个哨兵集群去运行,互相协同工作
故障转移时,判断一个master node是否宕机了,需要大部分哨兵都同意才行
即使部分哨兵节点挂掉了,哨兵集群还是能正常工作的,因为是有多个哨兵在监督节点的时候互相监督
注意
哨兵至少需要三个实例(三个哨兵),来保证自己的健壮性
哨兵+redis主从部署架构,不能保证数据是零丢失的,只能保证redis集群的高可用性
参考文章