两台Linux服务器 centos 多个文件目录实现同步

1 篇文章 0 订阅
1 篇文章 0 订阅

1.软件安装

首先检查是否已经安装,检查是否安装rsync软件
rpm -qa |grep rsync

主节点安装sersync
yum –y install sersync

备份节点安装rsync
yum –y install rsync

2.编写配置

  • 主节点为IP149 

在/usr/local/sersync/conf/tmp的下有个confxml.xml

复制一份到/usr/local/sersync/conf下,进行修改配置

sks_pdf.xml

<?xml version="1.0" encoding="ISO-8859-1"?>
<head version="2.5">
    <host hostip="localhost" port="8008"></host>
     <!--debug 模式打印  -->
    <debug start="false"/>
	<!--xfs 文件系统开关  -->
    <fileSystem xfs="false"/>
	<!--#过滤文件 true开启 false关闭 相对于rsync 过滤的文件不会被监控,加大性能 -->
    <filter start="false">
	<exclude expression="(.*)\.svn"></exclude>
	<exclude expression="(.*)\.gz"></exclude>
	<exclude expression="^info/*"></exclude>
	<exclude expression="^static/*"></exclude>
    </filter>
    <inotify>
	<delete start="true"/>      <!--#监控文件或目录的删除  -->
	<createFolder start="true"/>  <!--#监控目录的创建 -->
	<createFile start="false"/>  <!--#监控文件创创建事项的修改 -->
	<closeWrite start="true"/>   <!-- #监控文件关闭的事件的修改 两者只需要一个 -->
	<moveFrom start="true"/>     <!--#监控文件移动 -->
	<moveTo start="true"/>       <!--#监控文件移动 -->
	<attrib start="false"/>      <!--#监控文件属组改变 -->
	<modify start="false"/>      <!--#监控文件权限 -->
    </inotify>

    <sersync>
	<!--#设置监控的目录 watch-->
	<!--##指定目标主机的IP地址remote ip=和模块名name[名称](和samba的类似,不是目录的名称)-->
<localpath watch="/application/tomcat7/webapps/TZ">
        <remote ip="192.168.5.120" name="sign_xml"/>
</localpath>
 <rsync> 
<!-- #指定rsync 运行时的参数,可根据自身需要更改-->
     <commonParams params="-aruz"/>
	<!-- #启用验证,指定用户名和密码文件(只用写一个密码即可) -->
      <!-- #用户名是目标服务器上rsync配置文件中指定的用户名,密码文件中的密码也目标服务器上rsync指定的密码文件指定的密码-->
     <auth start="true" users="root" passwordfile="/etc/eisp_rsync/rsync.password"/>
     <userDefinedPort start="false" port="874"/><!-- port=874 -->
	 <!--超时 timeout=100 -->
     <timeout start="true" time="100"/>
     <ssh start="false"/>
 </rsync>

<!--#指定错误的日志文件路径-->
 <failLog path="/usr/local/sersync/logs/eisp_signatrue_rsync_fail_log.sh" timeToExecute="60"/><!--default every 60mins execute once-->
	<crontab start="false" schedule="600"><!--600mins-->
	    <crontabfilter start="false">
		<exclude expression="*.php"></exclude>
		<exclude expression="info/*"></exclude>
	    </crontabfilter>
	</crontab>
	<plugin start="false" name="command"/>
    </sersync>

    <plugin name="command">
	<param prefix="/bin/sh" suffix="" ignoreError="true"/>	<!--prefix /opt/tongbu/mmm.sh suffix-->
	<filter start="false">
	    <include expression="(.*)\.php"/>
	    <include expression="(.*)\.sh"/>
	</filter>

	<!--#插件模式-->
    </plugin>

    <plugin name="socket">
	<localpath watch="/opt/tongbu">
	    <deshost ip="192.168.138.20" port="8009"/>
	</localpath>
    </plugin>
    <plugin name="refreshCDN">
	<localpath watch="/data0/htdocs/cms.xoyo.com/site/">
	    <cdninfo domainname="ccms.chinacache.com" port="80" username="xxxx" passwd="xxxx"/>
	    <sendurl base="http://pic.xoyo.com/cms"/>
	    <regexurl regex="false" match="cms.xoyo.com/site([/a-zA-Z0-9]*).xoyo.com/images"/>
	</localpath>
    </plugin>
</head>


注意修改配置

watch 为同步到备份端的目录。

remote为备份服务器的IP和路径配置别名,sgin_xml在后面会有对应的目录。

users为备份服务器的用户,我用的root所以是root。

passwordfile 是密码文件,填入对应的目录和地址即可。


rsync.password配置如下:

必须改变文件权限为600 ,chomod 600 /etc/eisp_rsync/rsync.password 

rsync.password

test
  • 备份服务器IP120

在/etc的的目录下新建一个rsyncd-eisp.conf文件

rsyncd-eisp.conf

#rsync_config_______________start
##rsyncd.conf start##
uid = root
gid = root
use chroot = no
max connections = 200
timeout = 300
pid file = /var/run/rsyncd-eisp.pid
lock file = /var/run/rsync-eisp.lock
log file = /var/log/rsyncd-eisp.log
ignore errors
read only = false
list = false
hosts allow = 192.168.5.149
hosts deny = 0.0.0.0/32
auth users = root
secrets file = /etc/eisp_rsync/rsync.password
[sign_xml]
path = /application/tomcat7/webapps/TZ

#rsync_config_______________end
###########################################

hosts allow 允许接入的IP。此处我的主服务器的149所以配置这个。

hosts deny 禁止接入的IP。

auth users 验证密码用户,此处我用的root用户。

secrets file 密码文件。指定你配置的目录即可

备份节点的rsync.password文件和主节点的不同,备份服务器需要加入验证的用户名格式固定为

系统用户:密码

必须改变文件权限为600,chomod 600 /etc/eisp_rsync/rsync.password 

root:test

3.启动服务

启动主节点 149机器上执行:

/usr/local/sersync/bin/sersync -r -d -o /usr/local/sersync/conf/sks_pdf.xml

启动备份节点:

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

初始同步所有文件一次命令,在149的服务上执行:

cd /application/tomcat7/webapps/TZ && rsync -aruz -R  --timeout=100 "./" root@192.168.5.120::sign_xml --password-file=/etc/eisp_rsync/rsync.password

 

  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值