linux 配置 Sersync
[root@SERSYNC sersync]# cp conf/confxml.xml conf/confxml.xml.bak.$(date +%F)
[root@SERSYNC sersync]# ls
bin conf logs
[root@SERSYNC sersync]# ls conf/
confxml.xml confxml.xml.bak.2014-06-04
初始化的配置文件内容如下:
[root@SERSYNC 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
rsync_bak@172.16.100.1::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 进行重新同步。
修改后的完整配置文件为:
[root@SERSYNC 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 的实例配置文件:
[root@SERSYNC 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>
linux 配置 Sersync的更多相关文章
- (转)Linux系统sersync数据实时同步
Linux系统sersync数据实时同步 原文:http://blog.csdn.net/mingongge/article/details/52985259 前面介绍了以守护进程的方式传输或同步数据 ...
- linux配置网卡IP地址命令详细介绍及一些常用网络配置命令
linux配置网卡IP地址命令详细介绍及一些常用网络配置命令2010-- 个评论 收藏 我要投稿 Linux命令行下配置IP地址不像图形界面下那么方 便,完全需要我们手动配置,下面就给大家介绍几种配置 ...
- linux配置java环境变量(详细)
linux配置java环境变量(详细) 本文完全引用自: http://www.cnblogs.com/samcn/archive/2011/03/16/1986248.html 一. 解压安装jdk ...
- linux配置hosts
linux配置hosts linux下配置hosts和windows下其实就是一样的,找到文件在哪里就好 sudo vim /etc/hosts
- linux配置java环境变量
linux配置java环境变量(详细) 一. 解压安装jdk 在shell终端下进入jdk-6u14-linux-i586.bin文件所在目录, 执行命令 ./jdk-6u14-linux-i586. ...
- Linux 配置本地yum源
Linux 配置无网络状态利用yum安装软件 在有网络的情况下安装软件只需一条yum install xxx命令,例如安装gcc只需一条指令:yum install gcc 那么在没有网络的情况下该 ...
- Linux配置支持高并发TCP连接(socket最大连接数)
Linux配置支持高并发TCP连接(socket最大连接数) Linux配置支持高并发TCP连接(socket最大连接数)及优化内核参数 2011-08-09 15:20:58| 分类:LNMP&a ...
- Linux配置完iptables后,重启失效的解决方案
Linux配置完iptables后,重启失效的解决方案 因为只有root用户才可访问1024以下的端口,非root用户登陆是不能启用80端口的.web service 往往启动1024以上的端口,并通 ...
- linux配置java环境变量(转)
linux配置java环境变量(详细) 一. 解压安装jdk 在shell终端下进入jdk-6u14-linux-i586.bin文件所在目录, 执行命令 ./jdk-6u14-linux-i586. ...
随机推荐
- 【bzoj2821】作诗(Poetize)
*题目描述: 神犇SJY虐完HEOI之后给傻×LYD出了一题:SHY是T国的公主,平时的一大爱好是作诗.由于时间紧迫,SHY作完诗 之后还要虐OI,于是SHY找来一篇长度为N的文章,阅读M次,每次只阅 ...
- 解决:未能加载文件或程序集“MiniProfiler”或它的某一个依赖项。找到的程序集清单定义与程序集引用不匹配
参考:https://www.lanhusoft.com/Article/120.html 产生的原因: 公司原来的项目用的是MiniProfiler 3.0.11新项目本来想使用4.0,但是无奈网上 ...
- 20180827(02)- Java发送邮件
Java 发送邮件 使用Java应用程序发送E-mail十分简单,但是首先你应该在你的机器上安装JavaMail API 和Java Activation Framework (JAF) . 你可以在 ...
- sqlserver控制台-添加用户
1.右键新建登陆名 2. 常规选项 3.服务器角色 4.用户映射
- Java 中如何使用clone()方法克隆对象?
java为什么要 对象克隆: 在程序开发时,有时可能会遇到以下情况:已经存在一个对象A,现在需要一个与A对象完全相同的B 对象,并对B 对象的属性值进行修改,但是A 对象原有的属性值不能改变.这时,如 ...
- python使用__new__创建一个单例模式(单例对象)
#单例模式:使一个类只产生一个对象.他们的id地址都指向同一个内存地址 第一步:理解谁创建了对象 # 单例模式# 首先明白,我们在创建一个类的对象的时候,其实是调用的这个类的父类,即继承object, ...
- Binder进程与线程ProcessState以及IPCThreadState
ProcessState以及IPCThreadState ProcessState是负责打开Binder节点并做mmap映射,IPCThreadState是负责与Binder驱动进行具体的命令交互. ...
- 基于PyQt5的Python-Gui开发
环境搭建 电脑环境 win10 64位系统 Python3.5安装 从Python官网下载python3.5安装文件,选择windows 64位版本python-3.6.5-amd64.exe.双击安 ...
- 查询IP地址
在黑窗口里面输入:ipconfig
- 宝塔 windows下apache环境下禁止某文件夹内运行PHP脚本、禁止访问文件
首先我们来看两段对上传目录设置无权限的列子,配置如下: //在宝塔下如用/upload这个路径应用无效,一定要C:/wwwroot/upload才有效果 <Directory "要去掉 ...