1. 前面讲过 redis的主从模式:
1 个master 2个slave。
但是当 master 挂掉后,剩下的两个slave 只能为用户提供 读操作,不能 提供写操作。
所以你要人工的将其中一个 slave 变为 master,重新组成 主从模式。
需要 第三方来进行监控:哨兵 Sentinel(针对整个redis进行监控,发现master挂掉后,会将 其中一个 slave ,变成 master,再次组成 主从结构)
======================================================================================
2.如何在Linux中配置哨兵呢?
答:进入到 你解压的redis目录中:找到 sentinel.conf 文件
2.1 : 将 sentinel.conf 拷贝到 /usr/local/redis 目录下:
cp sentinel.conf /usr/local/redis
2.2 :在 /usr/local/redis 目录下 对 sentinel.conf 进行修改:
1.将其保护关闭,默认是开启的的
2. 默认情况下 redis 不是作为守护进程运行的,如果你想让它在后台运行改为 yes ,这样 哨兵 使用后,就能在后台运行了
3. 为 哨兵的日志 指定目录
4.为哨兵指定工作空间:
5. 核心配置:监控 master节点
monitor:监视 ;
imooc-master:为 master 节点起的名字,可以更换 ;
192.168.0.6: master 节点的内网IP ;
6379:master 的端口号 ;
2:哨兵数量(默认的为2)
6.配置 master 密码:
7.设定 被 哨兵 认为失效的时间段(以毫秒为单位),默认为30秒。但这里修改成了10秒,便于测试
8. 同步数量:
当新master产生时,同时进行slaveof到新master并进行同步复制的slave个数,也就是同时几个slave进行同步。因为在salve执行salveof与新master同步时,将会终止客户端请求,因此这个值需要权衡。此值较大,意味着“集群”终止客户端请求的时间总和和较大,此值较小,意味着“集群”在故障转移期间,多个salve向客户端提供服务时仍然使用旧数据.
==========================================================
当其中一个 slave ,被选举为新的 master 后,剩余的slave 和新的master需要进行同步,1为一个一个的同步。
比如:当新的master 被选举出来后,有5个 slave需要和新的master进行同步,1 表示:一个一个的来,
如果是2,则表示:2个两个的进行同步
9. failover过期时间,当failover[故障转移]开始后,在此时间内仍然没有触发任何failover操作,当前sentinel 将会认为此次failoer失败
基本的配置就完成了。保存退出。当然这是一个哨兵的配置文件