LNMP+HAProxy+Keepalived负载均衡(五)- 通过rsyncd实现文件的相互同步

栏目: 服务器 · 发布时间: 7年前

内容简介:上接前文,前文提到web服务器附件不同步的问题,这里补上文件同步的配置。

上接前文,前文提到web服务器附件不同步的问题,这里补上文件同步的配置。

  • 安装同步软件

    # 安装同步服务所需的软件
    yum -y install rsync
  • 配置密码本

    mkdir -p /etc/rsyncfg/
    # 注意:下面的两个SyncPwd必须一致
    echo 'SyncName:SyncPwd' > /etc/rsyncfg/server.pwd
    echo 'SyncPwd' > /etc/rsyncfg/client.pwd
    # 密码文件配置权限
    chmod 600 /etc/rsyncfg/server.pwd
    chmod 600 /etc/rsyncfg/client.pwd
  • 配置防火墙端口

    # 开启防火墙端口
    firewall-cmd --zone=public --add-port=873/tcp --permanent
    firewall-cmd --reload
  • 配置同步软件

    # 编辑配置文件
    vim /etc/rsyncd.conf
    
    # 配置文件内容
    uid = root
    gid = root
    use chroot = yes
    max connections = 4
    exclude = lost+found/
    transfer logging = yes
    timeout = 900
    ignore nonreadable = yes
    dont compress   = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2
    
    [uploads]
    path = /home/wwwroot/PublishPath/uploads
    comment = Host:192.168.6.100 uploads files
    ignore errors
    read only = yes
    write only = no
    list = no
    auth users = syncer
    secrets file = /etc/rsyncfg/server.pwd
    hosts allow = 192.168.6.110
  • 重启服务

    service rsyncd restart && service rsyncd status
  • 执行同步操作

    echo '' > /etc/rsyncfg/sync.log
    echo 'rsync -auv --password-file=/etc/rsyncfg/client.pwd SyncName@192.168.6.100::uploads /home/wwwroot/PublishPath/uploads/' > /etc/rsyncfg/sync.sh
    chmod +x /etc/rsyncfg/sync.sh
    cp /etc/rsyncfg/sync.sh /usr/sbin/
  • 配置计划任务

    crontab -e
    # 添加任务
    # * * * * * /etc/rsyncfg/sync.sh # 取消前面的注释即可
    
    # 重启定时任务服务
    service crond restart && service crond status
  • 问题汇总

    • ERROR: auth failed on module XXX

      @ERROR: auth failed on module XXX
      rsync error: error starting client-server protocol (code 5) at main.c(xxx) [Receiver=x.x.x]
      
      1、密码输入错误:
      请再次确认你登录用户的密码无误
      2、secrets file格式错误:
      secrets file的文件格式是  upload:123456
      表示upload用户的rsync密码是123456
      3、配置文件写错:
      最坑爹的一个,看看自己模块配置下面的auth users、secrets file有没写错
      4、secrets file权限问题
      服务端的secrets file权限必须是600,
      可以使用chmod 600 /home/user/test/rsync/etc/test.pass
      5、secrets file文件拥有者与rsync运行者
      服务端rsync服务是以什么用户运行,则必须保证secrets file文件拥有者必须是同一个
      假设root运行rsync --daemon,则secrets file的owner也必须是root
      6、如果是以--password-file=file的方式附带密码
      确保客户端密码文件格式无误,与服务端的密码文件不同,
      客户端的不用加上用户名,即直接是  123456
    • rsync: failed to connect to X.X.X.X Connection timed out (110)

      rsync: failed to connect to 192.168.6.100 (192.168.6.100): Connection timed out (110)
      rsync error: error in socket IO (code 10) at clientserver.c(125) [Receiver=3.1.2]
      
      端口不通,开启防火墙的873端口:
      firewall-cmd --zone=public --add-port=873/tcp --permanent
      firewall-cmd --reload
    • ERROR: password file must not be other-accessible

      ERROR: password file must not be other-accessible
      rsync error: syntax or usage error (code 1) at authenticate.c(196) [Receiver=3.1.2]
      
      密码本权限不对:
      chmod 600 /etc/rsyncfg/server.pwd
      chmod 600 /etc/rsyncfg/client.pwd

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Numerical Recipes 3rd Edition

Numerical Recipes 3rd Edition

William H. Press、Saul A. Teukolsky、William T. Vetterling、Brian P. Flannery / Cambridge University Press / 2007-9-6 / GBP 64.99

Do you want easy access to the latest methods in scientific computing? This greatly expanded third edition of Numerical Recipes has it, with wider coverage than ever before, many new, expanded and upd......一起来看看 《Numerical Recipes 3rd Edition》 这本书的介绍吧!

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试