Redis集群-哨兵模式

匿名 (未验证) 提交于 2019-12-03 00:43:02
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/liuzhixiong_521/article/details/84797609

概述

哨兵模式是Redis官方推荐的集群部署方式,与主从复制方式不同,哨兵模式可以在Master宕机时,自动实现主备切换。哨兵本身也是一个独立运行的进程,它用来监控多个主从复制集群。下图为哨兵模式简易调用图:

优势

  • 不定时监控Redis集群是否运行良好。
  • 若Redis节点出现故障,可以及时同事其他进程,如客户端。
  • 能够自动进程主备切换。

哨兵集群

很显然,哨兵进程也存在单点部署的问题,即哨兵进程挂掉后,导致整个集群不可用,故哨兵进程也应该支持集群部署。部署哨兵集群的优势有以下几点:

  • 即便某些哨兵进程挂掉,依然可以进行主备切换。
  • 客户端可以连接任意一个哨兵进程服务,以获取集群信息。

启动方式

  • 第一种
    redis-sentinel sentinel.conf
  • 第二种
    redis-server sentinel.conf --sentinel
    两种启动方式均需要指定哨兵配置文件,哨兵进程默认监听端口为26379。

哨兵配置解析

sentinel monitor mymaster 127.0.0.1 6379 2 

表示监控的master节点名称为mymaster,ip为127.0.0.1,端口为6379,2的含义为大于等于2个哨兵进程认为master不可用时,才会真正认为master不可用,这个我们后续会详细叙述。

sentinel down-after-milliseconds mymaster 3000 

哨兵通过PING来确认master是否存活,上述配置表示单个哨兵在3000毫秒内未收到PING的有效回复,则认为master已经不可用。

sentinel parallel-syncs mymaster 2 

上述配置表示为,主备切换时可以最多有2个slave与master进行同步,这个数字越小,完成同步时间越长,数字越大,完成同步时间短,但是意味着更多slave处于不可用状态,所以应合理配置这个数值。

主备切换策略

明天再写吧,先发出来。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!