Redis Sentinel(哨兵)

当主节点出现故障时,Redis Sentinel能自动完成故障发现和故障转移,并通知应用方,从而实现真正的高可用。Redis Sentinel是一个分布式架构,其中包含若干个Sentinel节点和数据节点,每个Sentinel节点会对数据节点和其余Sentinel节点进行监控,当它发现节点不可达时,会对节点做下线标识。如果被标识的是主节点,它还会和其他Sentinel节点进行"协商",当大多数Sentinel节点都认为主节点不可达时,它们会选举出一个Sentinel节点来完成自动故障转移的工作,同时会把这个变化实时通知给Redis应用方。整个过程完全是自动化的,不需要人工干预,所以此方案有效地解决了Redis的高可用。

Sentinel有以下几个作用:

1、监控:Sentinel节点会定期检测Redis数据节点、其余Sentinel节点是否可达;

2、通知:Sentinel节点会将故障转移的结果通知给应用方;

3、主节点故障转移:实现从节点晋升为主节点并维护后续正确的主从关系;

4、配置提供者:在Sentinel架构中,客户端在初始化的时候连接的是Sentinel节点集合,从中获取主节点信息。同时Redis Sentinel 包含了若干个Sentinel节点,其主要作用有:对于节点的故障判断是由多个Sentinel节点共同完成,这样可以防止误判;Sentinel节点集合是有若干个Sentinel节点组成,这样即使个别Sentinel节点不可用,整个Sentinel节点集合依然是强壮的。

其实Sentinel节点本身就是独立的Redis节点,只不过它们有一些特殊性,它们不存储数据,只支持部分命令。Sentinel节点的默认端口为26379,使用redis-sentinel命令启动。

Redis Sentinel的拓扑架构图如下:



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值