这篇文章比较全面, 包含Redis Sentinel 集群的原理和配置, 对其中涉及的内容不赘述了 深入剖析Redis Sentinel
有几点需要补充
- 当判定master宕机的哨兵节点数达到
quorum
, 主观下线切换到客观下线 - master 客观下线, sentinel集群选举 哨兵的leader, 由哨兵的 leader指定哪一台slave变为 master; 这一点, 原文的描述错误
- 新的master被指定后, 主节点复制到从节点的相关配置项
sentinel parallel-syncs
- master改变后, 每个哨兵节点的 sentinel.conf 文件会自动改变
- 为了便于选举 leader, 哨兵节点应配置奇数个(常见3个)
- 为了哨兵集群本身的高可用, sentinel 在生产中应和 redis部署在不同节点
- 一组哨兵可以做到监听多组主从, 但是不建议这么做; 实际的分布式架构中, sentinel集群也是分布式的
redis-cli 操作哨兵的命令
登录sentinel
./redis-cli -p 26379 # 在sentinel 远程节点上
查看sentinel 相关信息
# 查看imooc-master下的master节点信息
sentinel master imooc-master# 查看imooc-master下的slaves节点信息
sentinel slaves imooc-master# 查看imooc-master下的哨兵节点信息
sentinel sentinels imooc-master