Redis哨兵模式

主从切换技术:当主服务器宕机后,需要手动把一台从服务器切换为主服务器,需要人工干预。
一、哨兵模式概述
1、哨兵介绍:
Redis哨兵模式_第1张图片
Redis提供了哨兵命令;
哨兵是一个独立的进程,独立运行;
原理:通过哨兵发送命令,等待服务器响应,从而监控多个Redis实例;
2、哨兵作用:
通过发送命令,让Redis返回监测其运行状态,包括主服务器和从服务器;
当哨兵监测到master宕机,会自动将salve切换成master,然后通过发布订阅模式通知到其他服务器,修改配置文件,让他们切换主机。
3、多哨兵:
用1个哨兵监控时,这个哨兵可能出现故障,因此可以使用多个哨兵。
各个哨兵即监控各个Redis服务器,还互相监控各个哨兵是否存活。
4、故障切换(failover)过程:
假如master宕机,哨兵1先监测到这个结果,此时系统并不会立刻进行failover操作,而仅仅是因为哨兵1主观认为master不可用,这就是主观下线。
当后面的哨兵也监测到master不可用,并且有了一定数量的哨兵认为master不可用,哨兵之家会进行一次投票,投票的结果由1个哨兵发起,进行fialover操作,在failover操作的过程切换成功后,通过发布订阅模式,让每个哨兵把自己监控的服务器切换成主机,这就是客观下线。
二、搭建哨兵模式
配置3个哨兵和1主2从的Redis服务器:
1、机器分配:
Redis哨兵模式_第2张图片
2、配置Redis:
#使得redis可以跨网络访问
bind 0.0.0.0
#设置密码
requirepass “12345”
#指定主服务器,有关slaveof的配置只是配置从服务器,而主服务器不需配置
slaveof 192.168.11.128 6379
#主服务器密码
masterauth 12345#
3、配置哨兵:配置3个哨兵,每个哨兵的配置都一样。Redis安装目录下的sentinel.conf文件。

#禁止保护模式
protected-mode no
#配置监听的主服务器,sentinel monitor代表监控
#mymaster代表服务器名称,可自定义
#2 代表只有2个或2个以上的哨兵认为master不可用的时候,才会做故障切换
sentinel monitor mymaster 192.168.11.128 6379 2
#定义服务器密码
#mymaster 服务器名称
sentinel auth-pass mymaster 12345

注意:服务器启动顺序:
主机—>从机—>3个哨兵

你可能感兴趣的:(Redis哨兵模式)