在同步服务器上开启sersync,将监控路径中的文件同步到目标服务器,因此需要在同步服务器配置sersync,在同步目标服务器配置rsync。

一、同步目标服务器配置rsync

  1. # rpm -qa |grep rsync
  2. rsync-2.6.8-3.1
  3. # rpm -e rsync-2.6.8-3.1

unistall系统自带安装的rsync,安装3.0版的rsync

  1. # wget -c http://rsync.samba.org/ftp/rsync/rsync-3.0.8.tar.gz
  2. # tar xf rsync-3.0.8.tar.gz
  3. # ./configure --prefix=/usr && make && make install
  4. # vi /etc/rsyncd.conf

添加下面的代码到rsyncd.conf中

  1. uid = nobody
  2. gid = nobody
  3. use chroot = no
  4. strict modes = yes
  5. max connections = 200
  6. pid file = /var/run/rsyncd.pid
  7. lock file = /var/run/rsync.lock
  8. log file = /var/log/rsyncd.log
  9. [test]
  10. path = /home/
  11. comment = test
  12. read only = no
  13. write only = no
  14. ignore errors = yes
  15. list = yes
  16. uid = root
  17. gid = root

启动rsync服务

  1. # rsync --daemon

二、配置sersync2

sersync2是金山逍遥网技术支持部平台组周洋童鞋,开发的一款基于 inotify + rsync 的大量文件的多服务器自动同步程序,目前已开源,开源协议为 New BSD License,项目的下载地址:

  1. http://code.google.com/p/sersync/

这个配置超简单的,下载文件,解压即可

  1. # wget -c http://sersync.googlecode.com/files/sersync2.5_64bit_binary_stable_final.tar.gz
  2. # tar xf sersync2.5_64bit_binary_stable_final.tar.gz
  3. # cd GNU-Linux-x86
  4. # mkdir /etc/sersync2
  5. # cp confxml.xml /etc/sersync2
  6. # cp sersync2 /usr/bin

配置sersync2

  1. <sersync>
  2. <localpath watch="/data/bb">
  3. <remote ip="192.168.1.4" name="test"/>
  4. <remote ip="192.168.1.6" name="test"/>
  5. <!--<remote ip="192.168.8.40" name="tongbu"/>-->
  6. </localpath>
  7. <rsync>
  8. <commonParams params="-artuz"/>
  9. <auth start="false" users="root" passwordfile="/etc/rsync.pas"/>
  10. <userDefinedPort start="false" port="874"/><!-- port=874 -->
  11. <timeout start="false" time="100"/><!-- timeout=100 -->
  12. <ssh start="false"/>
  13. </rsync>
  14. <failLog path="/var/log/rsync_fail.log" timeToExecute="60"/><!--default every 60mins execute once-->
  15. <crontab start="false" schedule="600"><!--600mins-->
  16. <crontabfilter start="false">
  17. <exclude expression="*.php"></exclude>
  18. <exclude expression="info/*"></exclude>
  19. </crontabfilter>
  20. </crontab>
  21. <plugin start="false" name="command"/>
  22. </sersync>

表明要将同步服务器上本地的/data/bb 路径下的文件,同步到远程服务器 192.168.1.4 与 192.168.1.6上的test 模块下。

接下来,运行sersync2

#  sersync2 -r -o /etc/sersync2/confxml.xml

-r的意义

  1. -r 在开启实时监控之前对同步服务器目录与远程目标机目录进行一次整体同步

运行完了输出

  1. set the system param
  2. execute:echo 50000000 > /proc/sys/fs/inotify/max_user_watches
  3. execute:echo 327679 > /proc/sys/fs/inotify/max_queued_events
  4. parse the command param
  5. option: -r      rsync all the local files to the remote servers before the sersync work
  6. option: -d      run as a daemon
  7. option: -o      config xml name:  /etc/sersync2/confxml.xml
  8. daemon thread num: 10
  9. parse xml config file
  10. host ip : localhost     host port: 8008
  11. daemon start,sersync run behind the console
  12. config xml parse success
  13. please set /etc/rsyncd.conf max connections=0 Manually
  14. sersync working thread 112  = 1(primary thread) + 1(fail retry thread) + 10(daemon sub threads)
  15. Max threads numbers is: 32 = 12(Thread pool nums) + 20(Sub threads)
  16. please according your cpu ,use -n param to adjust the cpu rate
  17. ------------------------------------------
  18. rsync the directory recursivly to the remote servers once
  19. working please wait...
  20. execute command: cd /data/bb && rsync -artuz -R --delete ./ 192.168.1.4::test >/dev/null 2>&1
  21. run the sersync:
  22. watch path is: /data/bb

sersync2的参数

  1. sersync2 -h
  2. set the system param
  3. execute:echo 50000000 > /proc/sys/fs/inotify/max_user_watches
  4. execute:echo 327679 > /proc/sys/fs/inotify/max_queued_events
  5. parse the command param
  6. _______________________________________________________
  7. 参数-d:启用守护进程模式
  8. 参数-r:在监控前,将监控目录与远程主机用rsync命令推送一遍
  9. c参数-n: 指定开启守护线程的数量,默认为10个
  10. 参数-o:指定配置文件,默认使用confxml.xml文件
  11. 参数-m:单独启用其他模块,使用 -m refreshCDN 开启刷新CDN模块
  12. 参数-m:单独启用其他模块,使用 -m socket 开启socket模块
  13. 参数-m:单独启用其他模块,使用 -m http 开启http模块
  14. 不加-m参数,则默认执行同步程序
  15. ________________________________________________________________

索性一次性运行

  1. #  sersync2 -r -d -o /etc/sersync2/confxml.xml

其他功能待研究中

sersync2 实时同步配置的更多相关文章

  1. Rsync结合Inotify 实时同步配置(更新之前繁琐的传输认证)

    今天一位CU的友友根据之前介绍过 通过rsync+inotify-tools+ssh实现触发式远程实时同步  配置分发系统,但是由于认证繁琐,很容易出错,我今天重新整理了下,用rsync密码文件pas ...

  2. centos6.6配置rsync+sersync实现实时同步分布式多客户端分发同步

    1.sersync项目: sersync项目利用inotify与rsync技术实现对服务器数据实时同步到解决方案,其中inotify用于监控sersync所在服务器上文件系统的事件变化,rsync是目 ...

  3. Sersync实时同步企业应用配置实战

    一.实验环境 CentOS版本: 6.6(2.6.32.-504.el6.x86_64) Rsync版本:  Rsync-3.0.6(系统自带) Sersync版本:sersync2.5.4_64bi ...

  4. 数据文件实时同步(rsync + sersync2)

    因近期项目需求,需要同步云端服务器的数据给**方做大数据分析. 思路: 起初只要数据同步,准备开放数据采集接口.但实时性较差,会有延迟. 故而寻觅各种解决方案,最终确定使用 rsync 进行文件同步, ...

  5. sersync2 文件的实时同步备份

    |——需求: 监控192.168.9.5[主]  下的 /data/vmeipai 目录  --> 同步到 192.168.12.8 [备] 下的 /data/vmeipai 目录 |——网络拓 ...

  6. Linux 下配置多机实时同步

    没钱的时候,用此方案做网站内容的负载均衡.异地备份,经济实惠又方便(仅针对网站文件做实时同步,如果数据库,则考虑mysql的多主架构) 一.机器配置及机房IP A机,位于杭州,IP: 115.33.2 ...

  7. 配置rsync+inotify实时同步

    与上一篇同步做 配置rsync+inotify实时同步 1:调整inotify内核参数 在linux内核中,默认的inotify机制提供三个调控参数:max_queue_events.max_user ...

  8. rsync简介与rsync+inotify配置实时同步数据

    rsync简介 rsync是linux系统下的数据镜像备份工具.使用快速增量备份工具Remote Sync可以远程同步,支持本地复制,或者与其他SSH.rsync主机同步. rsync特性 rsync ...

  9. Centos 6.5配置rsync+inotify实现文件实时同步

    1.安装rsync(两台机器执行相同的步骤)yum install gcc yum install rsyncd xinetd -y因为rsync是由xinetd启动的,所以需要修改一个配置vim / ...

随机推荐

  1. Spark的编译

    由于Spark的运行环境的多样性,如可以运行在hadoop的yarn上,这样就必须要对Spark的源码进行编译.下面介绍一下Spark源码编译的详细步骤: 1.Spark的编译方式:编译的方式可以参考 ...

  2. POJ 2752 - Seek the Name, Seek the Fame (KMP)

    题意:给一个字符串s,问s的某个前缀与后缀相同的情况时,长度是多少. 此题使用KMP的next数组解决. next数组中,j=next[i],next[i]表示S[0...i-1]的某个后缀(字符串S ...

  3. PAT 05-树6 Path in a Heap

    这次的作业完全是依葫芦画瓢,参照云课堂<数据结构>(http://mooc.study.163.com/learn/ZJU-1000033001#/learn/content)中何钦铭老师 ...

  4. android中KSOAP2中的anytype{}问题

    如果web返回为空,即空字符串的时候,KSOAP2会返回一个anytype{}这样的一个串回来,要比对下是不是这个串,如果是就返回null,从而避免查不到数据时没有相应处理. if (jsonStr. ...

  5. PHP中常用正则表达式大全

    常用正则表达式大全!(例如:匹配中文.匹配html) 匹配中文字符的正则表达式: [u4e00-u9fa5]    评注:匹配中文还真是个头疼的事,有了这个表达式就好办了 匹配双字节字符(包括汉字在内 ...

  6. CodeForces 56E-Domino Principle

    E - Domino Principle Time Limit:2000MS     Memory Limit:262144KB     64bit IO Format:%I64d & %I6 ...

  7. 配置PhoneGap 到iOS

    下载 phonegap安装phonegap之前需要NodeJS环境,下载NodeJS并安装.安装环境的目的是为了使用phonegap命令行. 3. 安装phonegap使用命令    $phonega ...

  8. 爆破vcrkme01(已补上注册机)

    系统 : Windows xp 程序 : vcrkme01 程序下载地址 :http://pan.baidu.com/s/1mh1n33y 要求 : 爆破 使用工具 :OD 可在“PEDIY Crac ...

  9. HDU 3605

    http://acm.hdu.edu.cn/showproblem.php?pid=3605 用最大流做的,G++超时,C++可以过,看别人写的叫二分图多重匹配,还不会这玩意一会学学 显然的最大流模型 ...

  10. 【转】 golang slice array

    1. array   同一类型数据的集合     var arr [n]type    //声明type类型一维数组     var arr [m][n]type //声明type类型二维数组     ...