Redis+哨兵安装部署

Redis+哨兵安装部署

步骤
安装redis
源码包安装
配置并启动redis
测试过程

1.安装redis
源码包安装
用4台机器构成一个可用的redis集群,分别安装redis,使用默认端口6379
下载好安装包redis-4.0.1.tar.gz
Root用户下安装,创建/datas目录
#tar xzf redis-4.0.1.tar.gz -C /datas/
#mv redis-4.0.1 redis
#cd /datas /redis
#make

配置并启动redis
修改redis配置文件
vim /datas/redis/redis.conf
主redis配置
daemonize yes
bind 192.168.1.10
port 6379
masterauth 1qaz #当设置了密码保护时,从连接主的密码
requirepass 1qaz #redis客户端登录密码,
从redis1配置
daemonize yes
bind 192.168.1.11
port 6379
slaveof 192.168.31.10 6379 #此项可在redis客户端手动配置
从redis2配置
daemonize yes
bind 192.168.1.12
port 6379
slaveof 192.168.1.10 6379
从redis3配置
daemonize yes
bind 192.168.1.13
port 6379
slaveof 192.168.1.10 6379

配置哨兵sentinel.conf,每台机器都要配置
vim /datas/redis/sentinel.conf

port 26379
sentinel monitor mymaster 192.168.1.13 6379 2 #2表示至少两台哨兵投票
sentinel client-reconfig-script mymaster /var/lib/redis/failover.sh
sentinel auth-pass mymaster 1qaz #设置连接master和slave的密码,要和redis相同
其中/var/lib/redis/failover.sh是redis宕掉时执行的脚本
脚本路径:/var/lib/redis/failover.sh
如下所示sentinel中的参数会传递给脚本

failover.sh脚本
#!/bin/bash
MASTER_IP=$6 #第六个参数是新主redis的ip地址
LOCAL_IP=‘192.168.1.13’ #这里记得要改,每台服务器写自己的本地ip即可
VIP=‘192.168.1.5’ #绑定vip
NETMASK=‘32’ #掩码
INTERFACE=‘eth0’ #网卡接口设备名称
if [ ${MASTER_IP} = ${LOCAL_IP} ];then
/sbin/ip addr add V I P / {VIP}/ VIP/{NETMASK} dev ${INTERFACE} #将VIP绑定到该服务器上
/sbin/arping -q -c 3 -A ${VIP} -I ${INTERFACE} #arp抑制
exit 0
else
/sbin/ip addr del V I P / {VIP}/ VIP/{NETMASK} dev ${INTERFACE} #将VIP从该服务器上删除
exit 0
fi
exit 1
给执行权限

chmod chmod 755 /var/lib/redis/failover.sh

启动redis
#redis-server /datas/redis/redis.conf

启动sentinel
#redis-sentinel /datas/redis/sentinel.conf

配置完毕

 测试过程

进入主redis客户端,查看到已经配置好主从关系了

数据同步测试:
在主服务器set一条数据能在从服务器get到

第一次需要手动绑定vip到主redis上
ip addr add 192.168.1.5/32 dev eth0
查看主redis地址ip

故障测试
杀掉主redis进程

查看sentinel投票过程,看是否把192.168.1.11选为主redis

再查看故障后的redis主从关系,
然后再看vip已经成功绑定到192.168.1.11

然后再进行set数据测试
在现在的主redis上设置一条数据set a 1000

故障恢复
把宕掉的redis重新启动,发现已经成为从redis了

而且get a 输出1000

测试完成

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值