引入
在主从模型中讲到
一旦Master宕机失效,需要手动将Slave角色提升为Master,否则这个子集群将不可用。
这个缺陷使得系统可用性大大降低。因此Redis专门提供了一个哨兵机制来实现自动故障检测和转移。
什么是哨兵
哨兵(Sentinel)是一种特殊的Redis实例,与Redis存储实例一样,哨兵同样是基于配置的。
你可以通过以下两种方式启动哨兵:
redis-sentinel /path/to/sentinel.conf
redis-server /path/to/sentinel.conf --sentinel
哨兵要做什么
- 监控节点状态
- 当Master节点故障时,自动提升Replication(Slave)为Master
- 通过API发送故障通知