redis-26.哨兵模式

哨兵#

主机” 宕机”#

  • 将宕机的 master 下线
  • 找一个 slave 作为 master
  • 通知所有的 slave 连接新的 master
  • 启动新的 master 与 slave
  • 全量复制 N + 部分复制 N
  • 谁来确认 master 宕机了
  • 找一个主?怎么个找法?
  • 修改配置后,原来的主恢复了怎么办?

简介#

哨兵(sentinel)是一个分布式系统,用于对主从结构中的每台服务器进行监控,当出现故障时通过投票机制选择新的 master 并将所有 slave 连接到新的 master。

HyLdrfXkrF.png!large

哨兵的作用#

  • 监控
    不断的检查 master 和 slave 是否正常运行
    master 存活检测、master 与 slave 运行情况检测
  • 通知(提醒)
    当被监控的服务器出现问题时,向其他(哨兵间,客户端)发送通知。
  • 自动故障转移
    断开 master 与 slave 连接,选取一个 slave 作为 master,将其他 slave 连接到新的 master,并告知客户端新的服务器地址

注意:
哨兵也是一台 redis 服务器,只是不提供数据服务
通常哨兵配置数量为单数

配置哨兵#

  • 配置一拖二的主从结构
  • 配置三个哨兵(配置相同,端口不同)
    参看 sentinel.conf
  • 启动哨兵
    redis-sentinel sentinel-端口号.conf
本作品采用《CC 协议》,转载必须注明作者和本文链接