Redis哨兵部署记录
配置哨兵
- 创建哨兵配置文件
touch /home/archser/redis_6379/sentinel.conf ## 配置文件
touch /home/archser/redis_6379/sentinel.log ## 日志文件
- 修改配置文件
cd /home/archser/redis_6379/
vi sentinel.conf
## sentinel.conf 内容如下
-----------------------------------------
## 哨兵端口号
port 26379
## IP地址是当前主节点的IP地址 , 2 代表判断主服务器为失效节点至少需要 2 个 Sentinel 同意
sentinel monitor mymaster 192.168.31.151 6379 2
## 指定经过多长时间链接不上则认为主节点失效
sentinel down-after-milliseconds mymaster 10000
## 故障转移时,允许多少个实例同时从新主节点同步数据
sentinel parallel-syncs mymaster 1
## 主节点密码
sentinel auth-pass mymaster archser_redis
## 开启后台模式
daemonize yes
## 日志文件地址
logfile /home/archser/redis_6379/sentinel.log
- 开启哨兵
## 开启哨兵
redis-server ./sentinel.conf --sentinel
## 查看日志是否正常,如果正常应该会输出主节点和随从节点的关系如下
13093:X 22 Feb 2021 18:32:31.629 * +slave slave 192.168.31.154:6379 192.168.31.154 6379 @ mymaster 192.168.31.151 6379
13093:X 22 Feb 2021 18:32:31.630 * +slave slave 192.168.31.157:6379 192.168.31.157 6379 @ mymaster 192.168.31.151 6379
-
如果输出正常,则按照相同方法配置其他服务器中的哨兵
-
注意:配置文件中的IP地址指向的就是主节点的IP地址,不需要根据服务IP地址修改
测试哨兵选举功能
当三台服务器中的哨兵都配置正常,可以测试选举功能,测试方法就是手动关闭 Redis 主节点,看哨兵的日志文件中是否输出了处理记录
## 链接主节点服务器
## 手动结束主节点进程
[root@localhost redis_6379]# ps -ef|grep redis
root 20776 1 0 14:34 ? 00:00:00 /usr/local/bin/redis-server *:6379
root 20788 1 0 14:34 ? 00:00:00 redis-server *:26379 [sentinel]
root 20816 20327 0 14:35 pts/1 00:00:00 grep --color=auto redis
[root@localhost redis_6379]# kill -9 20776
[root@localhost redis_6379]# tail -f sentinel.log
## 日志中会出现从节点的替换处理
11482:X 22 Feb 2021 18:40:03.705 # +sdown slave 192.168.31.151:6379 192.168.31.151 6379 @ mymaster 192.168.31.154 6379