rsync 主主同步
一,当同步的目录数据量不大时,建议使用Rsync+Inotify-tools;当数据量很大(几百G甚至1T以上)、文件很多时,建议使用Rsync+sersync。
二.具体操作
目 的:2.2.2.2和1.1.1.1的/home/ye/packs/目录相互同步
服务器:2.2.2.2 1.1.1.1
同步目录:/home/ye/packs/
(一)两台服务器均需安装rsync
1、安装rsync
yum -y install rsync
2、创建rsyncd.conf配置文件
vi /etc/rsyncd.conf
port = 888
uid = root
gid = root
max connections = 10
log file = /var/log/rsyncd.log
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsyncd.lock
#模块自定义名称 ---这个需要与源服务器Sersync对应
[ye_packs]
#需要同步到这个目录
path = /home/ye/packs/
comment = st2 pack sync
ignore errors = yes
#默认为true,修改为no,增加对目录文件软连接的备份
use chroot = no
#设置rsync服务端文件为读写权限
read only = no
#允许访问源服务器IP,主系统ip列表
hosts allow = 1.1.1.1
#拒绝所有IP连接,先允许后拒绝
hosts deny = 0.0.0.0/32
不同步的目录
exclude =
注:这里只是列出一些配置项而已,其他在配置时按需选择。
------------------------------
3、启动服务
/usr/bin/rsync --daemon /etc/rsyncd.conf
4、测试rsync是否生效
rsync -avzP /home/ye/packs/ root@2.2.2.2::st2_packs/
(一)1.1.1.1和2.2.2.2均安装sersync
1、安装sersync工具,实时触发rsync进行同步
# cd /opt
# wget --no-check-certificate https://raw.githubusercontent.com/orangle/sersync/master/release/sersync2.5.4_64bit_binary_stable_final.tar.gz
# tar zxvf sersync2.5.4_64bit_binary_stable_final.tar.gz
# mv /opt/GNU-Linux-x86/* /usr/local/sersync/
# vi /usr/local/sersync/confxml.xml
需要修改如下几个地方:
<localpath watch="/home/ye/packs/">
<!—-设置监控的目录-->
<remote ip="1.1.1.1" name="ye_packs"/>
</localpath>
<rsync>
<commonParams params="-artuz"/>
<auth start="true" users="axe_rsync" passwordfile="/etc/rsyncd.secrets"/>
<!—-设置同步的用户名和密码文件-->
<userDefinedPort start="true" port="888"/><!-- port=874 -->
<!—-设置rsync的端口,要和从那边开启的端口一致-->
<timeout start="false" time="100"/><!-- timeout=100 -->
<ssh start="false"/>
</rsync>
注:如果目的服务器的rsync有配置账号密码时,这里需要配置/etc/rsyncd.secret
2、启动sersync
/usr/local/sersync/sersync2 -r -d -o /usr/local/sersync/confxml.xml

浙公网安备 33010602011771号