Redis sentinel 主从自动切换配置

配置sentinel至少需要两个redis服务实例
127.0.0.1       6380     master
127.0.0.1       6381     slave1
127.0.0.1       6382     slave2
127.0.0.1       6383     slave3

主从配置,在从数据库添加 slaveof  127.0.0.1  6380

# 查看主从状态 info replication
redis-cli -h 127.0.0.1 -p 6380 -a password info Replication

# 查询Sentinel状态   info sentinel
redis-cli -h 127.0.0.1 -p 26379 -a password info Sentinel
看到status=ok 说明正常sentinel配置

创建sentinel配置文件
vim /usr/local/redis-master/sentinel.conf
port 26379
#sentinel需要监控的master信息
sentinel monitor master 127.0.0.1 6380 2
#master password
sentinel down-after-milliseconds master 5000
#master被当前sentinel实例认定为“失效”(SDOWN)的间隔时间
sentinel failover-timeout master 60000
sentinel auth-pass master password
sentinel config-epoch master 12

创建其他两个配置文件 端口分别为26479  26579
/usr/local/redis-slave1/sentinel.conf
/usr/local/redis-slave2/sentinel.conf

启动sentinel
nohup /usr/local/redis-master/redis-server /usr/local/redis-master/sentinel.conf --sentinel &
nohup /usr/local/redis-slave1/redis-server /usr/local/redis-slave1/sentinel.conf --sentinel &
nohup /usr/local/redis-slave2/redis-server /usr/local/redis-slave2/sentinel.conf --sentinel &

主从切换测试关掉主命令redis-cli -h 127.0.0.1 -p 6380 -a password shutdown
自动切换后sentinel、主、从的配置文件都会发生改变,会在配置文件的最后增加信息

哨兵启动和主数据库建立连接后,会定时执行下面3个操作
1、每10秒哨兵会向主数据库和从数据库发送INFO命令
2、每2秒哨兵会向主数据库和从数据库的_sentinel_:hello 频道发送自己的信息
3、每1秒哨兵会向主数据库、从数据库和其他哨兵节点发送PING命令
redis命令
slaveof  no  one             全当前数据库停止接收其他数据库同步并转换成主数据库
min-slaves-to-write 3    只有三个或三个以上从数据库连接到主数据库时,主数据库才是可写的,否则会返回错误
repl-diskless-sync yes  启用无硬盘复制
slave-priority 100            slave优先级


转载于:https://my.oschina.net/direnjie/blog/542209

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值