- 部署架构图
- IP信息列表
序号 | IP | 备份 |
1 | 192.168.8.35 | 主 |
2 | 192.168.8.32 | 备 |
3 | 192.168.8.33 | 备 |
- Redis部署
- 下载安装包
在线下载安装包:
下载安装包命令:
wget http://download.redis.io/releases/redis-7.0.9.tar.gz
离线下载安装包:
登录官网下载。
- 编译安装
解压安装包
tar -zxvf redis-7.0.9.tar.gz
进入解压后的目录
cd redis-7.0.9
编译命令
make
安装命令(PREFIX为指定安装目录参数)
make install PREFIX=/home/redis
将redis-7.0.9中redis.conf和sentinel.conf配置模板文件复制到Redis的安装目录下(也可以复制到其他目录,到时启动时候通过路径指定即可)。
cd redis.conf sentinel.conf /home/redis/bin
- 配置修改
主服务35机器上redis.conf配置文件需要修改内容:
备服务32和33机器上redis.conf配置文件修改内容:
- 启动redis服务
主和从都通过redis的服务脚本指定配置文件启动服务
- 查看效果
- 查看日志
主redis日志
从32和33日志应该都如下:
- 查看redis状态信息
主机信息:
从机33信息:
从机32信息:
- 验证主从效果
主设置获取数据:
两个从可以获取到数据:
- 哨兵服务部署
在安装redis时候也有安装哨兵服务脚本,但是需要修改哨兵服务的配置信息。
- 配置修改
三个服务哨兵配置修改点都如下:
- 启动哨兵服务
三个Redis服务器上通过命令启动哨兵服务
- 查看哨兵效果
- 查看日志
主Redis上哨兵服务日志
从机33上哨兵服务日志:
从机32上哨兵服务日志:
- 查看哨兵服务Sentinel状态信息
主Redis上哨兵服务状态信息:
从机33上哨兵服务状态信息:
从机32上哨兵服务状态信息:
- 验证哨兵模式效果
- 关闭主Redis服务:
尝试登录失败,说明主机35上的Redis服务已经停止
- 查看从机器信息状态
源从机33上Redis状态信息:
可以看到任然为slave角色,但是master_host变成了32。可以推断当主35停机之后32被推选为主Redis服务。
源从机32上Redis状态信息:
我们可以看到32上Redis的角色已经变成了master,说明32已经变成了主Redis。
- 验证32与33的主从效果
在新主Redis机32上设置name为xiaoming
在从33上面获取name,
可以看到也可以获取到xiaoming,说明32与33的主从效果正常
- 重启35后查看状态信息
重新启动35上面的Redis,查看35上Redis状态信息
可以看到当前35角色已经变成了slave,master_host也为32,说明35从新加入后变成了从机。
- 测试35启动后是否数据同步
登录35机的Redis,获取上面32设置进去的name值。
可以看到,在35重启前主Redis设置的值,在35重启后正确同步了。