前提:redis中,主从切换场景中,没有绝对的主和从,只有初始化的主和从,然后当主down后,从就变成主了,而主即使连接上,也是从,不会变为主
1、redis-server的主备关系:
需要配置的机器,以及主备关系如下
master:10.118.36.10
slave1:10.118.36.74
slave2:10.118.36.161
2、修改redis-server的配置文件:
切换到redis的根目录
# cd /home/admin/Downloads/redis-3.0.3
master配置不变,
两台slave修改配置文件(# vi redis-3.0.3/redis.conf),添加如下语句,其余用默认配置:
slaveof 10.118.36.10 6379
切换到redis的根目录
# cd /home/admin/Downloads/redis-3.0.3
# vi redis-3.0.3/sentinel-test.conf
三台机器配置相同,如下:
############################代码区域,begin############################port 26379#MyMastersentinel monitor MyMaster 10.118.36.10 6379 1sentinel down-after-milliseconds MyMaster 5000sentinel failover-timeout MyMaster 900000sentinel parallel-syncs MyMaster 2############################代码区域,end############################
切换到redis的根目录
# cd /home/admin/Downloads/redis-3.0.3
启动redis-server
# ./src/redis-server redis.conf
启动redis-sentinel
# ./src/redis-sentinelsentinel-test.conf
5、检查redis状态(三台都执行)
切换到redis的根目录
# cd /home/admin/Downloads/redis-3.0.3
查询命令
# ./src/redis-cli
查询状态信息
> ping
返回的结果如果是PONG,则表示服务运行正常
然后继续执行命令,检查主备是否正常
> info Replication
查看返回结果(关键点)
master应为(offset和lag无所谓):
role:masterconnected_slaves:2slave0:ip=10.118.36.74,port=6379,state=online,offset=1241704,lag=0slave1:ip=10.118.36.161,port=6379,state=online,offset=1241704,lag=0
slave应为:
role:slavemaster_host:10.118.36.10master_port:6379master_link_status:up
6、检查sentinel状态(三台都执行)
切换到redis的根目录
# cd /home/admin/Downloads/redis-3.0.3
执行命令
# ./src/redis-cli -p 26379
查询状态信息
> info
查看结果如果有如下所示,即表示正常集群配置正常运行
# Sentinelsentinel_masters:1sentinel_tilt:0sentinel_running_scripts:0sentinel_scripts_queue_length:0master0:name=MyMaster,status=ok,address=10.118.36.10:6379,slaves=2,sentinels=3
by 刘迎光@萤火虫工作室
OpenBI交流群:495266201
MicroService 微服务交流群:217722918
mail: liuyg#liuyingguang.cn
博主首页(防止爬虫):http://blog.liuyingguang.cn
OpenBI问答社区:http://openbi.liuyingguang.cn/