Redis 主从复制及哨兵模式模拟部署
目录
一、配置准备
二、主从配置
一主一从
2.1、配置master文件
2.2、配置 slave 文件
2.3、验证
启动 master 与 slave 的redis服务
master 创建 key
slave 查询
master端 查询
2.4、命令实现
树状主从
查看
三、哨兵配置
1、master 端
2、slave端
3、wezzer端
4、验证
4.1、master状态
4.2、故障模拟
4.3、新主
一、配置准备
对每台主机都进行关闭防火墙、上下文等,减少阻碍
[root@everyone ~]# systemctl stop firewalld
[root@everyone ~]# setenforce 0
安装插件
以下 redis 版本均为 redis-6.2.18-1.el9_6.x86_64
[root@everyone ~]# yum install -y redis
准备2台主机
二、主从配置
一主一从
2.1、配置master文件
[root@master ~]# vim /etc/redis/redis.conf
2.2、配置 slave 文件
[root@slave ~]# vim /etc/redis/redis.conf
2.3、验证
启动 master 与 slave 的redis服务
master 创建 key
slave 查询
master端 查询
192.168.11.5:6379> info ##查询状态
2.4、命令实现
在 slave 端设置
192.168.11.29:6379> slaveof no one ##断开主从关系
192.168.11.29:6379> info ##查询信息
192.168.11.29:6379> slaveof 192.168.11.5 6379 ##将192.168.11.5设为主
192.168.11.29:6379> info ##查看状态
树状主从
原理:主→从/主→从 ;基于上述步骤
添加新主机 wezzer ip为 192.168.11.30
[root@wezzer ~]# vim /etc/redis/redis.conf
查看
192.168.11.29:6379> info
三、哨兵配置
将192.168.11.30 切换为 192.168.11.5 的从,哨兵模式基于多主多从基础下部署
[root@wezzer ~]# vim /etc/redis/redis.conf ##更改配置文件
[root@wezzer ~]# systemctl restart redis ##重载redis服务
1、master 端
[root@master ~]# vim /etc/redis/sentinel.conf ##哨兵模式配置文件
[root@master ~]# systemctl start redis-sentinel ##启动哨兵模式
[root@master ~]# netstat -anput | grep redis ##查看监听状态
2、slave端
[root@slave ~]# systemctl start redis-sentinel ##启动哨兵
[root@slave ~]# netstat -anput | grep redis ##查看监听状态
3、wezzer端
[root@wezzer ~]# vim /etc/redis/sentinel.conf ##修改哨兵配置文件
[root@wezzer ~]# systemctl start redis-sentinel ##启动哨兵
[root@wezzer ~]# netstat -anput | grep redis ##查看监听状态
4、验证
4.1、master状态
4.2、故障模拟
暂停master的redis服务
[root@master ~]# systemctl stop redis ##停止redis服务
[root@master ~]# netstat -anput | grep redis ##查看监听状态
4.3、新主
选举出wezzer的redis服务作为新master服务