

sentinel是客户端和redis中间件,客户端的请求不再是直接请求redis地址了,而是改为请求sentinel地址,sentinel同样也是拥有多个节点的,sentinel作用是监测redis节点的运行状态,如redis节点出现故障则由sentinel进行自动化维护,处理转移故障的redis节点,并将故障信息传递给客户端。



sentinel故障转移的步骤
redis出现故障时,多个sentinel发现确定master出现问题时-》sentinel会选举出一个sentinel作为领导-》作为领导的sentinel会选出一个slave作为新的master-》新的master产生后sentinel会通知其余的slave,告诉他新的master,并成为它的slave-》修改所有redis节点后会通知客户端主从的变化-》最后等待老的master复活,再将它修改为新的master节点的slave节点。