1.VIP:port 提供服务:
唯一标记一个redis实例的是ip和端口,前端是用tcp方式来访问redis的,我们提供给应用访问的是一个vip+63379(一般使用63379) 端口,,vip一定是在master上面的.
因此我们执行如下命令检查redis状态:
[wls81@CNSH044446 ~]$ /wls/wls81/redis/bin/redis-cli -h {vip} -p 63379 -a {password} info replication
# Replication
role:master
connected_slaves:1
slave0:ip=10.11.93.12,port=63379,state=online,offset=146649,lag=1
master_repl_offset:146649
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:2
repl_backlog_histlen:146648
上面的role这个值一定是master的,只要保证vip在master上我们的Padis cache服务就是没有问题的,如果不通或者role的角色是slave
那就得继续查看是什么问题.
2. 两个redis的角色都是slave的问题
当两个主机都挂了或者我们自己不小心将两个redis停了,并且我们用下面的命令检查
/wls/wls81/redis/bin/redis-cli -h {ip} -p {port} -a {password} info replication
发现无论是vip还是另外的两个ip都是role:slave 的角色,这个时候需要对vip所在的主机执行slaveof no one 的操作,将
vip 所在的redis变成master,如:
/wls/wls81/redis/bin/redis-cli -h {vip} -p {port} -a {password} slaveof no one