redis实现主从复制和高可用(主从切换)
redis实现主从复制和高可用(主从切换)
满小茂 发表于2年前
redis实现主从复制和高可用(主从切换)
  • 发表于 2年前
  • 阅读 1233
  • 收藏 7
  • 点赞 0
  • 评论 2

标题:腾讯云 新注册用户域名抢购1元起>>>   

摘要: 当用单个redis服务器压力过大时,就要考虑redis主从复制了,主master复制写入,从slave复制读取,从而缓解服务器压力 接下来就配置一个reids的主从复制. 但是当主从的主,发生宕机时,数据肯定就断了,导致数据不能写入,reids的作者也想到了这一点,所以在redis2.6以上中就有了reids的监控软件sentinel(哨兵),sentinel会监控redis的主从是否存在,如果监控到主断掉了,那么就把从提升到主
  1. 主从Redis配置

     Redis服务器具体配置

    127.0.0.1 :6379(主)

    127.0.0.1 :6380(从)

    127.0.0.1 :6381(从)


  2. 主从复制主要经历四个阶段: 


    第一阶段:slave与master建立连接 
    第二阶段:slave向master发起同步请求
    第三阶段:slave接受master发来的dump.rdb数据 
    第四阶段:slave载入dumo.rdb文件 


  3. 配置

          1.首先要有3个redis实例,安装1个redis,复制2个redis(redis-master ,redis-slave1,redis-slave2)

            2.分别配置redis.conf  不同的port 不同的pid 不同的redis文件夹配置master的redis.conf 

  redis-mater 配置默认不变

  redis-slave1redis.conf配置:                           

pidfile /var/run/redis1.pid #改变pid的文件名
port 6380                   #改变port端口号
dir /usr/local/redis1       #改变路径
slaveof 127.0.0.1 6379      #绑定主的ip和端口

   redis-slave2的redis.conf配置:

pidfile /var/run/redis2.pid #改变pid的文件名
port 6381                   #改变port端口号
dir /usr/local/redis2       #改变路径
slaveof 127.0.0.1 6379      #绑定主的ip和端口

  配置完成后就开启这三个redis :分别跳到三个Redis实例中,执行对应命令

$:src/redis-server redis.conf

                       

但是当主从的主,发生宕机时,数据肯定就断了,导致数据不能写入,reids的作者也想到了这一点,所以在redis2.6以上中就有了reids的监控软件sentinel(哨兵),sentinel会监控redis的主从是否存在,如果监控到主断掉了,那么就把从提升到主


配置redis的sentinel

   创建一个实例 redis-sentinel ,  打开 sentinel.conf配置如下 

port 26379
#master
sentinel monitor master1 127.0.0.1 6379 1  #填写master的ip port 
sentinel down-after-milliseconds master1 3000
sentinel failover-timeout master1 900000
sentinel can-failover master1 yes
sentinel parallel-syncs master1 2

   启动哨兵: 

$: src/redis-sentinel  sentinel.conf

    一般一个master最好配置两个sentinel才能做故障转移    



共有 人打赏支持
粉丝 63
博文 114
码字总数 120230
评论 (2)
xly0713
请教: master挂掉了, 假如还有部分数据没有同步完成到新选出来的master(之前是slave),数据丢失了怎么办?
满小茂

引用来自“xly0713”的评论

请教: master挂掉了, 假如还有部分数据没有同步完成到新选出来的master(之前是slave),数据丢失了怎么办?
一般来说,挂掉的master会成为slave,新的master应该能同步
×
满小茂
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: