加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

linux 配置 Sersync

发布时间:2020-12-13 23:29:57 所属栏目:Linux 来源:网络整理
导读:[[email?protected] sersync]# cp conf/confxml.xml conf/confxml.xml.bak.$(date +%F) ? ? [[email?protected] sersync]# ls ? ? bin ?conf ?logs ? ? [[email?protected] sersync]# ls conf/ ? ? confxml.xml ?confxml.xml.bak.2014-06-04 ? ? 初始化的配

[[email?protected] sersync]# cp conf/confxml.xml conf/confxml.xml.bak.$(date +%F)

?

?

[[email?protected] sersync]# ls

?

?

bin ?conf ?logs

?

?

[[email?protected] sersync]# ls conf/

?

?

confxml.xml ?confxml.xml.bak.2014-06-04

?

?

初始化的配置文件内容如下:

?

?

[[email?protected] sersync]# cat conf/confxml.xml -n

?

?

1<?xml version="1.0" encoding="ISO-8859-1"?>

?

?

2<head version="2.5">

?

?

3??? <host hostip="localhost" port="8008"></host>

?

4??? <debug start="false"/>

?

5??? <fileSystem xfs="false"/>

?

6??? <filter start="false">

?

7<exclude expression="(.*).svn"></exclude>

?

8<exclude expression="(.*).gz"></exclude>

?

9<exclude expression="^info/*"></exclude>

?

?

11??? </filter>

?

12??? <inotify>

?

13<delete start="true"/>

?

14<createFolder start="true"/>

?

15<createFile start="false"/>

?

16<closeWrite start="true"/>

?

?

17<moveFrom start="true"/>

?

?

18<moveTo start="true"/>

?

?

19<attrib start="false"/>

?

?

20<modify start="false"/>

?

?

21??? </inotify>

?

?

23??? <sersync>

?

?

24<localpath watch="/opt/tongbu">

?

?

25??? <remote ip="127.0.0.1" name="tongbu1"/>

?

?

26??? <!--<remote ip="192.168.8.39" name="tongbu"/>-->

?

?

27??? <!--<remote ip="192.168.8.40" name="tongbu"/>-->

?

?

28</localpath>

?

?

29<rsync>

?

?

30??? <commonParams params="-artuz"/>

?

?

31??? <auth start="false" users="root" passwordfile="/etc/rsync.pas"/>

?

32??? <userDefinedPort start="false" port="874"/><!-- port=874 -->

?

33??? <timeout start="false" time="100"/><!-- timeout=100 -->

?

34??? <ssh start="false"/>

?

35</rsync>

?

36<failLog path="/tmp/rsync_fail_log.sh" timeToExecute="60"/><!--default every 60mi ns execute once-->

?

?

38??? <crontabfilter start="false">

?

39<exclude expression="*.php"></exclude>

?

40<exclude expression="info/*"></exclude>

?

41??? </crontabfilter>

?

42</crontab>

?

43<plugin start="false" name="command"/>

?

?

44??? </sersync>

?

?

46??? <plugin name="command">

?

?

47<param prefix="/bin/sh" suffix="" ignoreError="true"/><!--prefix /opt/tongbu/mm

?

?

m.sh suffix-->

?

?

48<filter start="false">

?

?

49??? <include expression="(.*).php"/>

?

?

50??? <include expression="(.*).sh"/>

?

?

51</filter>

?

?

52??? </plugin>

?

?

54??? <plugin name="socket">

?

?

55<localpath watch="/opt/tongbu">

?

?

56??? <deshost ip="192.168.138.20" port="8009"/>

?

?

57</localpath>

?

?

58??? </plugin>

?

59??? <plugin name="refreshCDN">

?

60<localpath watch="/data0/htdocs/cms.xoyo.com/site/">

?

61??? <cdninfo domainname="ccms.chinacache.com" port="80" username="xxxx" pass wd="xxxx"/>

62??? <sendurl base="http://pic.xoyo.com/cms"/>

?

?

es"/>

?

64</localpath>

?

65??? </plugin>

?

66</head>

?

为了满足我们的需求,我们需要修改如下几处设置:

?

1?修改 24-28 行的内容,原内容为:

?

?

<localpathwatch="/opt/tongbu">??????? #定义本地要同步的目录

?

?

<remoteip="127.0.0.1" name="tongbu1"/> ?#

?

?

<!--<remoteip="192.168.8.39" name="tongbu"/>-->???? #同步到哪个机器,,同步到

?

?

机器的哪个模块

?

?

<!--<remoteip="192.168.8.40" name="tongbu"/>-->

?

?

</localpath>

?

修改后内容为:

?

?

<localpathwatch="/data/web">

?

?

<remoteip="172.16.100.1" name="web"/>???? #这里取掉了两旁的注释

?

?

<remoteip="172.16.100.2" name="web"/>???? #这里取掉了两旁的注释

?

?

</localpath>

?

?

该文件中分隔符形式为:<!--###########################-->

?

2?修改 31-34 行,认证相关部分:

?

?

<commonParamsparams="-artuz"/>

?

<auth start="false"users="root" passwordfile="/etc/rsync.pas"/>

?

<userDefinedPortstart="false" port="874"/><!-- port=874 -->

?

<timeoutstart="false" time="100"/><!-- timeout=100 -->

?

<sshstart="false"/>

?

修改后内容为:

?

<commonParamsparams="-aruz"/>

?

?

<userDefinedPortstart="false" port="874"/><!-- port=874 -->

?

<timeoutstart="true" time="100"/><!-- timeout=100 -->

?

<sshstart="false"/> 提示:上面的几个配置就是在拼接

rsync -aruz --timeout=100 /data/web

?

[email?protected]::www/

?

?

--password-file=/etc/rsync.password

?

?

?

?

?

3)修改 36-37 行

?

?

<failLogpath="/tmp/rsync_fail_log.sh"timeToExecute="60"/><!--default every 60mins exe

?

?

cute once-->

?

修改后内容为

?

?

<failLog path="/usr/local/sersync/logs/rsync_fail_log.sh "timeToExecute="60"/><!--defau

?

?

lt every 60mins execute once-->

?

?

当同步失败后,日志记录到/usr/local/sersync/logs/rsync_fail_log.sh,并且每 60 分钟对失败的

?

?

log 进行重新同步。

?

修改后的完整配置文件为:

?

?

[[email?protected] sersync]# cat -n /usr/local/sersync/conf/confxml.xml

?

?

1<?xml version="1.0" encoding="ISO-8859-1"?>

?

?

2<head version="2.5">

?

3??? <host hostip="localhost" port="8008"></host>

?

4??? <debug start="false"/>

?

5??? <fileSystem xfs="false"/>

?

6??? <filter start="false">

?

7<exclude expression="(.*).svn"></exclude>

?

8<exclude expression="(.*).gz"></exclude>

?

?

10<exclude expression="^static/*"></exclude>

?

11??? </filter>

?

12??? <inotify>

?

13<delete start="true"/>

?

14<createFolder start="true"/>

?

15<createFile start="false"/>

?

?

16<closeWrite start="true"/>

?

?

17<moveFrom start="true"/>

?

?

18<moveTo start="true"/>

?

?

19<attrib start="false"/>

?

?

20<modify start="false"/>

?

?

21??? </inotify>

?

?

23??? <sersync>

?

?

24<localpath watch="/data/web">

?

?

25??? <remote ip="172.16.100.1" name="web"/>

?

?

26??? <remote ip="172.16.100.2" name="web"/>

?

?

27</localpath>

?

?

28<rsync>

?

?

29??? <commonParams params="-aruz"/>

?

?

30??? <auth start="true" users="rsync_bak" passwordfile="/etc/rsync.password"/>

?

31??? <userDefinedPort start="false" port="874"/><!-- port=874 -->

?

32??? <timeout start="true" time="100"/><!-- timeout=100 -->

?

33??? <ssh start="false"/>

?

34</rsync>

?

35<failLog path="/usr/local/logs/rsync_fail_log.sh" timeToExecute="60"/><!--default e very 60mins execute once-->

?

?

37??? <crontabfilter start="false">

?

38<exclude expression="*.php"></exclude>

?

39<exclude expression="info/*"></exclude>

?

40??? </crontabfilter>

?

41</crontab>

?

42<plugin start="false" name="command"/>

?

?

43??? </sersync>

?

?

45??? <plugin name="command">

?

?

46<param prefix="/bin/sh" suffix="" ignoreError="true"/><!--prefix /opt/tongbu/mm

?

?

m.sh suffix-->

?

?

47<filter start="false">

?

?

48??? <include expression="(.*).php"/>

?

?

49??? <include expression="(.*).sh"/>

?

?

50</filter>

?

?

51??? </plugin>

?

?

53??? <plugin name="socket">

?

?

54<localpath watch="/opt/tongbu">

?

?

55??? <deshost ip="192.168.138.20" port="8009"/>

?

?

56</localpath>

?

?

57??? </plugin>

?

58??? <plugin name="refreshCDN">

?

59<localpath watch="/data0/htdocs/cms.xoyo.com/site/">

?

60??? <cdninfo domainname="ccms.chinacache.com" port="80" username="xxxx" pass wd="xxxx"/>

61??? <sendurl base="http://pic.xoyo.com/cms"/>

?

?

es"/>

?

63</localpath>

?

64??? </plugin>

?

65</head>

?

以上的配置文件,我们仅仅配置了针对 SWEB1 和 SWEB2 上 web 这个模块,即/data/web

?

目录的自动同步。由于我们还有一个 download 模块,即/data/download 目录需要进行自动

?

?

同步。因此这就意味着,我们需要配置多实例了。

?

?

Sersync 的多实例和往常的 apache,nginx 一样,你只需要把配置文件拷贝一份出来,然后针

?

?

对不同的实例做不同的修改,然后在最后开启 sersync 服务的时候指定不同的配置文件做启动

?

?

即可!

?

?

配置针对 download 的实例配置文件:

?

?

[[email?protected] sersync]# cp /usr/local/sersync/conf/confxml.xml /usr/local/sersync/con

1

f/download_confxml.xml

?

?

修改方法如上,这里仅贴出和上个实例之间不一样的地方:

?

?

23??? <sersync>

?

?

24<localpath watch="/data/download">

?

?

25??? <remote ip="172.16.100.1" name="download"/>

?

?

26??? <remote ip="172.16.100.2" name="download"/>

?

?

27</localpath>

?

?

28<rsync>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读