在同步服务器上开启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. JVM-类文件结构

    无关性的基石 I> "平台无关性"实现在操作系统的应用层上:sun公司以及其他虚拟机提供商发布了许多可以运行在各种不同平台上的虚拟机,这些虚拟机都可以载入和执行同一种平台无关 ...

  2. JavaScript基础--超级玛丽(七)(上下左右控制)

    相信大家都玩过超级玛丽,下面实现控制玛丽的上.下.左.右等基本功能,本篇只是在练习JavaScript的用法 1.创建一个HTML页面 <!doctype html> <html l ...

  3. C语言:typedef 跟 define 的区别

    typedef (int*) pINT1;以及下面这行:#define pINT2 int* pINT1 a,b; 与pINT2 a,b; 定义的a,b 有差别吗 回答: typedef作为类型定义关 ...

  4. Airbase-ng帮助

    Airbase-ng 1.2 rc2 - (C) 2008-2014 Thomas d'Otreppe  Original work: Martin Beck  http://www.aircrack ...

  5. 2016 - 1- 14 UI阶段学习补充 transform属性详解

    UIView的transform属性 transform是view的一个重要属性,它在矩阵层面上改变view的显⽰状态,能实现view的缩放.旋转.平移等功能.transform是CGAffineTr ...

  6. linux基础命令学习(六)DHCP服务器配置

    工作原理:        1.客户机寻找服务器:广播发送discover包,寻找dhcp服务器        2.服务器响应请求:单播发送offer包,对客户机做出响应.提供客户端网络相关的租约以供选 ...

  7. Discuz 插件制作之后台常用函数详解

    目录 showsetting()表单显示 cpmsg()提示消息 showformheader()创建表单头 showformfooter()创建表单尾 showtableheader()创建表格头 ...

  8. IOS 用正则表达式解析HTML等文件,得到所有文本

    获得网页内容 NSURL *url=[NSURL URLWithString:@"http://121.199.34.52/wordpress/?json=core.get_post_con ...

  9. 破解 AD_CM#3

    系统 : Windows xp 程序 : AD_CM#3 程序下载地址 :http://pan.baidu.com/s/1skwXPVn 要求 : 编写注册机 使用工具 :IDA & OD 可 ...

  10. HDU 4862(费用流)

    Problem Jump (HDU4862) 题目大意 给定一个n*m的矩形(n,m≤10),每个矩形中有一个0~9的数字. 一共可以进行k次游戏,每次游戏可以任意选取一个没有经过的格子为起点,并且跳 ...