Sentinel(哨兵)为redis提供高可用性(HA),官方文档 https://redis.io/topics/sentinel
用于监视主从服务器,主节点下线时进行选主。本质上是一个运行在特殊模式下的redis服务器,只是端口、命令集等有所不同,维护主从服务器、其他sentinel的状态,一般通过配置文件(主节点IP,下线时间阈值等)来初始化。
哨兵和master一般是多对多的,多个哨兵监视多个master。哨兵连接主从服务器时,除了命令连接,还会创建订阅连接,订阅的频道是master维度的,这样监视同一个master的哨兵,可以通过该频道来共享信息。哨兵可以通过频道知晓其他哨兵的存在,可以自动发现,不需要额外的配置。
哨兵心跳默认1 s,向主从服务器、其他哨兵发送PING命令,当在down-after-milliseconds内均返回无效回复,那么该实例(主从服务器或者哨兵)进入主观下线状态