rsync 同步文件

一. 场景:利用rsync实现在负载均衡情况下,项目文件代码实现指定频率同步

二. 安装:

1.检测是否安装rsync服务

rpm -qa|grep rsync

2.服务端和客户端安装rsync

yum -y install rsync

也可源码安装

rsync下载地址:http://rsync.samba.org/

安装方式  

./configure

make && make install

      服务器A,B都安装rsync服务。A为主服务器,A服务器以服务器模式运行rsync,而B则以客户端方式运行rsync。

当A服务器有文件变更时,B同步变更文件。一实现文件同步。

三. 服务端配置:

1. 服务器A配置

vi  /etc/rsyncd.conf                                          #根据自己的文件目录而定

#[globle]
strict modes = yes
port = 873
uid = root
gid = root
user chroot = no
max connections = 5                                     #同时的最大连接数
timeout = 600
pid file = /var/run/rsyncd.pid                          #进程的pid存放位置
lock file = /var/run/rsyncd.lock                        #locak文件位置
log file = /var/log/rsyncd.log                          #日志文件位置

[eeetb.com-rsyncd]                                      #建立一个同步名,服务器B通过此名称获得同步位置
path = /home/wwwroot                                    #需要同步的文件存放位置
ignore errors
read only = no
list = no
hosts allow = 47.94.255.44                             #允许服务器B地址,如果是内网可以使用内网IP
auth users = root                                      #允许哪些用户
secrets file = /etc/rsyncd.password                    #指定允许的用户和密码

2. 建立用户密码文件

vi  /etc/rsyncd.password

root:123456 #允许的用户和密码

3. 修改防火墙策略,允许873端口(tcp/udp)

vi /etc/sysconfig/iptables  #加入下面规则
-A INPUT -s 47.94.255.44 -p tcp -m state --state NEW -m tcp --dport 873 -j ACCEPT

4. 启动rsync服务端

/usr/bin/rsync --daemon --config=/etc/rsync.conf

添加rsyncd开机启动

echo '/usr/bin/rsync --daemon --config=/ect/rsyncd.conf' >>/etc/rc.local 

四. 客户端配置:

1. 客户端服务器B配置

vi  /etc/rsyncd.password
123456  #服务器A设置的密码

2. 启动客户端

/usr/bin/rsync -avzP --delete --progress --password-file=/etc/rsyncd.password root@ip地址::eeetb.com-rsyncd /home/wwwroot/

3. 设置定时任务

略。。。

五. 注意:

  • 客户端启动 注意密码文件  文件权限必须为 600  
  • 服务端,客户端密码一致性(注:服务端:用户:密码   客户端: 密码)

猜你喜欢

转载自www.cnblogs.com/xiaommvik/p/9959769.html