在 sentinel 启动故障转移(failover)时需要满足两个条件:
- 确定 master 不可用的 sentinel 数量必须大于等于 quorum
- 大多数的 sentinel 之间必须可以通信(大多数的意思是两台就是2,三台也是2,五台就是3)
这里通信目的是选出谁来执行 failover 操作
知道了这两点也就明白为什么不推荐使用两台 sentinel 做哨兵了。因为如果两台中的其中一台哨兵宕掉后,就算你的 quorum 设置的是1,但是还是无法满足第二个条件。
所以部署 sentinel 高可用的时候至少部署三台。