美文网首页
Redis 主从复制

Redis 主从复制

作者: _str_ | 来源:发表于2019-11-25 21:07 被阅读0次

    环境

    两个centos容器,里面执行yum安装redis、supervior

    ---作为主服务器  使用镜像是 centos 7
    docker run -it --name centos-redis centos:lastet bash
    yum -y install epel-release redis supervior
    ---作为从服务器
    docker run -it --name redis-s1 centos:lastet   bash
    yum -y install epel-release redis supervior
    

    进入容器中---主服务器

    mkdir /etc/redis
    cd /etc/redis
    cp /etc/redis.conf /etc/redis
    mv redis.conf 6379.conf
    ----------------------------------------
    bind   0.0.0.0
    ----------------------------
    需要执行重启redis服务
    

    编写守护supervisor 守护redis

    vim /etc/supervisord.d
    [program:redis-6379]   
    command=/usr/bin/redis-server /etc/redis/6379.conf   
    autostart=true              
    autorestart=true            
    startsecs=10                
    startretries=3             
    exitcodes=0,2               
    stopsignal=QUIT             
    
    stopwaitsecs=1
    user=root                  
    log_stdout=true           
    log_stderr=false            
    logfile=/var/log/redis-6379.log   
    logfile_maxbytes=1MB        
    logfile_backups=3   
          
    [include]
    files = relative/directory/*.ini
    

    执行命令启动redis

    #启动服务
    supervisord
    #查看状态
    supervisorctl 
    
    image.png

    进入从容器中

    配置跟主容器一样 也需要下载redis、supervisor进行修改配置文件
    添加一条命令显示这个容器是从服务器

    vi /etc/redis/6379.conf
    # slaveof <masterip> <masterport>
    slaveof  172.17.0.2 6379
    #这个主机ip是主服务器的ip地址
    
    // 配置此服务器只提供读取操作 默认是yes状态
    slave-read-only yes
    

    配置完从服务器就可以启动服务了

    然后测试

    redis-cli -h 172.17.0.2
    #从服务器连接主服务器
    
    image.png
    redis-cli -h  172.17.0.3
    #主服务器连接从服务器
    
    image.png

    现在我们要在主服务器上开始记录数据了

    • 首先我们需要在从服务器上进行如下操作
    slaveof  172.17.0.2 6379
    
    image.png
    • 接着就可以在主服务器操作了
    set n 100
    
    image.png image.png

    这样我们就能看到主服务器上有的 在从服务器上也能看到了

    相关文章

      网友评论

          本文标题:Redis 主从复制

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