redis主从从跨机房同步

作者: dashuo | 来源:发表于2018-05-27 13:45 被阅读197次

    获取安装redis

    (ubuntu 16.04 & redis 4.0.9)

    wget http://download.redis.io/releases/redis-4.0.9.tar.gz
    tar xzf redis-4.0.9.tar.gz
    cd redis-4.0.9
    make
    sudo make install
    

    安装服务

    cd utils
    
    # install_server.sh各个选项保持默认
    # 完成后会自动开启redis后台服务进程
    
    sudo ./install_server.sh
    
    install_server.sh

    如下示例使用主从从跨机房同步方案

    加入缓冲节点(机房A-slave-node)避免master-node被同步时锁定时间过长。(机房B-slave-node需要跨数据中心同步)

    三台机器网络设置:

    机房A-master-node
    公网IP: 55.33.22.1
    内网IP: 192.168.1.1

    机房A-slave-node
    公网IP: 55.33.22.2
    内网IP: 192.168.1.2

    机房B-slave-node
    公网IP: 33.22.11.1
    内网IP: 10.1.1.1

    数据同步流向

    机房A-master-node --> 机房A-slave-node (-->) 机房B-slave-node

    redis 配置

    # 打开丛机配置文件
    sudo vi /etc/redis/6379.conf
    
    主机配置 (机房A-master-node)
    # 主机配置保持默认
    
    丛机配置 (机房A-slave-node)
    • 如果不想绑定 0.0.0.0,可以用SSH隧道传输,推荐autossh断线自动重连*
    # 绑定 0.0.0.0,对机房B-slave-node丛机提供服务
    bind 0.0.0.0
    # 将主机配置为:同一机房的 A-master-node
    slaveof 192.168.1.1 6379
    
    丛机配置 (机房B-slave-node)
    # 将主机配置为: 机房A-slave-node, 需要使用外网IP
    slaveof 55.33.22.2 6379
    

    防火墙配置:

    机房A-master-node:

    允许端口 6379 来自 192.168.1.2

    机房A-slave-node:

    允许端口 6379 来自 33.22.11.1

    相关文章

      网友评论

      • b1e64688fbef:写的太简单了
      • 宁曾:每次看大硕的文章都学点新东西。Redis是一个键值(Key-value)数据库,数据主要存储在内存中,这使得它可以用来处理海量的数据。优点有性能高效,数据类型丰富。缺点是内存消耗大。不知道理解对了没有。
        dashuo:@宁曾 对的👍 厉害,厉害。😄
      • 蜜糖771:首先这个标题就没看懂,你的本意是想说主从机跨机房同步?
        文章里面这么多的计算机语言,不是程序员的人真是看不懂啊,文字部分都能看懂,哈哈
        蜜糖771:@dashuo 那些就是计算机语言,我根本看不懂,直接略过了,哈哈
        dashuo:@swt花语 别的没想到写啥,班长受累看了😂

      本文标题:redis主从从跨机房同步

      本文链接:https://www.haomeiwen.com/subject/ogebjftx.html