| ip(主机名) | 服务 |
|---|---|
| 172.25.32.1(server1) | master |
| 172.25.32.2 (server2) | slave |
| 172.25.32.3 (server3) | slave |
redis的部署(以server1为例)
[root@server1 ~]# tar zxf *
[root@server1 ~]# ls
redis-5.0.3 redis-5.0.3.tar.gz
[root@server1 ~]# yum install -y gcc
[root@server1 ~]# cd redis-5.0.3
[root@server1 redis-5.0.3]# make && make install##编译

[root@server1 redis-5.0.3]# cd utils/
[root@server1 utils]# ls
[root@server1 utils]# ./install_server.sh ##安装
安装时所有选项选择默认项即可

主从复制
- master端配置
1.修改master端的端口
默认为本机的回环地址,只能通过本机的客户端连接,我们需要对其进行修改

[root@server1 utils]# vi /etc/redis/6379.conf
70 bind 0.0.0.0

[root@server1 utils]# /etc/init.d/redis_6379 restart

再次查看端口,使其可以与任意主机进行连接
- slave端配置(部署参考server1)
[root@server2 utils]# vi /etc/redis/6379.conf
1379 slaveof 172.25.32.1 6379

[root@server2 utils]# /etc/init.d/redis_6379 restart

server3同server2 - 测试
在server1端添加name为‘cheng’

在server2,server3端进行查看


基于哨兵的redis主从切换
1.编辑配置文件
[root@server1 redis-5.0.3]# cp sentinel.conf /etc/redis/
[root@server1 redis-5.0.3]# cd /etc/redis
[root@server1 redis]# vi sentinel.conf
17 protected-mode no##关闭保护模式
84 sentinel monitor mymaster 172.25.32.1 6379 2##mymaster是定义的master名字,2指只有两台以上的节点投票通过才会确认master端挂掉从而推选新的master
113 sentinel down-after-milliseconds mymaster 10000##连接超时时间,超过后会认为连接超时
121 sentinel parallel-syncs mymaster 1##设定新master后,允许多少个主机进行同步
146 sentinel failover-timeout mymaster 180000##推选master若超过该时间则认为转移失败
2.将配置文件分发给slave端
[root@server1 redis]# scp sentinel.conf server2:/etc/redis/
sentinel.conf 100% 9710 9.5KB/s 00:00
[root@server1 redis]# scp sentinel.conf server3:/etc/redis/
sentinel.conf 100% 9710 9.5KB/s 00:00

3.重启redis服务
[root@server2 ~]# /etc/init.d/redis_6379 restart
[root@server3 utils]# /etc/init.d/redis_6379 restart##重启server2与server3的redis服务
4.在server1查看节点信息
可以看到server1为master,server2与server3都为slave


- 测试
1.在任意一台机器执行下列命令查看结果
[root@server1 redis]# redis-server /etc/redis/sentinel.conf --sentinel
或者redis-sentinel /etc/redis/sentinel.conf &
15145:X 14 Aug 2019 14:42:51.868 # +monitor master mymaster 172.25.32.1 6379 quorum 2
15145:X 14 Aug 2019 14:42:51.868 * +slave slave 172.25.32.2:6379 172.25.32.2 6379 @ mymaster 172.25.32.1 6379
15145:X 14 Aug 2019 14:42:51.872 * +slave slave 172.25.32.3:6379 172.25.32.3 6379 @ mymaster 172.25.32.1 6379
可以看到当前的主节点为server1,从节点为server2与server3
2.关闭server1的redis服务

3.查看信息
15152:X 14 Aug 2019 15:20:45.319 # +sdown master mymaster 172.25.32.1 6379
与server1的连接段开
2449

被折叠的 条评论
为什么被折叠?



