一.简介

sersync是基于Inotify开发的,类似于Inotify-tools的工具;

sersync可以记录下被监听目录中发生变化的(包括增加、删除、修改)具体某一个文件或某一个目录的名字;

rsync在同步的时候,只同步发生变化的这个文件或者这个目录(每次发生变化的数据相对整个同步目录数据来说是很小的,rsync在遍历查找比对文件时,速度很快),因此,效率很高;

:当同步的目录数据量不大时,建议使用Rsync+Inotify-tools;当数据量很大(几百G甚至1T以上)、文件很多时,建议使用Rsync+sersync。

二.具体操作

操作系统:centos6.6
源服务器(sersync):192.168.0.1  --> 目标服务器(rsync):192.168.0.2

目的:使用root用户,把源服务器上的/test1目录下的文件实时同步到目标服务器的/test2目录下

 
(一)目标服务器(rsync):192.168.0.2
1、安装rsync
yum -y install rsync
2、创建rsyncd.conf配置文件
vi /etc/rsyncd.conf
--------------------------
uid = root
gid = root
max connections = 10
log file = /var/log/rsyncd.log
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsyncd.lock
 
[test]     #模块自定义名称 ---这个需要与源服务器Sersync对应
path = /test2 #需要同步到这个目录
comment = Mirror to test
ignore errors = yes
use chroot = no  #默认为true,修改为no,增加对目录文件软连接的备份
read only = no    #设置rsync服务端文件为读写权限
hosts allow = 192.168.0.1 #允许访问源服务器IP
hosts deny = 0.0.0.0/32 #拒绝所有IP连接,先允许后拒绝
exclude =/data1 /data2  不同步的目录
 
:这里只是列出一些配置项而已,其他在配置时按需选择。
------------------------------
3、启动服务

/usr/bin/rsync --daemon /etc/rsyncd.conf

(二)源服务器(sersync):192.168.0.1
1、安装rsync
yum -y install rsync
2、同步数据

rsync -avzP /test1/ root@192.168.0.2::test/  测试同步文件

--/test1/ 同步目录
--192.168.0.2 目的服务器,安装并配置完毕rsync
--test 模块自定义名称,即目的服务器的rsync配置文件中配置的
3、安装sersync工具,实时触发rsync进行同步
#cd /usr/local/src

#wget https://sersync.googlecode.com/files/sersync2.5.4_64bit_binary_stable_final.tar.gz

 
#tar zxvf sersync2.5_32bit_binary_stable_final.tar.gz
    GNU-Linux-x86/
    GNU-Linux-x86/sersync2
    GNU-Linux-x86/confxml.xml
#mv /usr/local/src/GNU-Linux-x86/ /usr/local/sersync/
#vi /usr/local/sersync/confxml.xml
需要修改如下几个地方:
<localpath watch="/data/test">
    <!—-设置监控的目录-->
    <remote ip="192.168.0.2" name="test"/>
    <!—设置从服务器的IP-->
    <!--<remote ip="192.168.8.39" name="tongbu"/>-->
    <!--<remote ip="192.168.8.40" name="tongbu"/>-->
</localpath>
<rsync>
    <commonParams params="-artuz"/>
    <auth start="true" users="root" passwordfile="/etc/rsyncd.secret"/>
    <!—-设置同步的用户名和密码文件-->
    <userDefinedPort start="true" port="873"/><!-- port=874 -->
    <!—-设置rsync的端口,要和从那边开启的端口一致-->
    <timeout start="false" time="100"/><!-- timeout=100 -->
    <ssh start="false"/>
</rsync>
 
注:如果目的服务器的rsync有配置账号密码时,这里需要配置/etc/rsyncd.secret
4、启动sersync

/usr/local/sersync/sersync2 -r -d -o /usr/local/sersync/confxml.xml

rsync+sersync实现数据文件实时同步的更多相关文章

  1. rsync+inotify百万级文件实时同步

    实验环境:Centos7.4 目的:将源服务器的文件实时同步至目标服务器 源服务器:10.11.1.107 目标服务器:10.11.1.106 分别在两个节点安装rsync yum -y instal ...

  2. CentOS 7 Sersync+Rsync 实现数据文件实时同步

    rsync+inotify-tools与rsync+sersync架构的区别? 1.rsync+inotify-tools inotify只能记录下被监听的目录发生了变化(增,删,改)并没有把具体是哪 ...

  3. Sersync+Rsync实现数据文件实时同步

    rsync+inotify-tools与rsync+sersync架构的区别1,rsync+inotify-tools只能记录下被监听的目录发生的变化(增删改)并没有把具体变化的文件或目录记录下来在同 ...

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

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

  5. rsync+inotify实现数据的实时同步更新

    rsync可以实现触发式的文件同步,但是通过crontab守护进程方式进行触发,同步的数据和实际数据会有差异,而inotify可以监控文件系统的各种变化,当文件有任何变动时,就触发rsync同步,这样 ...

  6. Rsync + Lsyncd服务实现文件实时同步/备份

    1.接受端安装rsync yum -y install rsync 2.配置同步模块 vim /etc/rsyncd.conf # any name you like [backup] # desti ...

  7. 使用rsync+inotify-tools+ssh实现文件实时同步

    假设某服务器架构中有两台web服务器(IP为192.168.1.252和192.168.1.254),一台代码更新发布服务器(IP为192.168.1.251),需要同步的目录是/data/www/, ...

  8. linux使用rsync+inotify-tools+ssh实现文件实时同步

    假设某服务器架构中有两台web服务器(IP为192.168.1.252和192.168.1.254),一台代码更新发布服务器(IP为192.168.1.251),需要同步的目录是/data/www/, ...

  9. CentOS 7.2 Ubuntu 18部署Rsync + Lsyncd服务实现文件实时同步/备份

    发送端配置: 一.配置密钥 1. 主/从服务器之间启用基于密钥的身份验证.登录发送端服务器并用 " ssh-keygen " 命令生成公共或私有的密钥. 2. 使用 " ...

随机推荐

  1. 判断http 请求来自于手机还是PC

    首先收集了部分客户端请求头部信息如下 iPhone微信: User-Agent: Mozilla/5.0 (iPhone; CPU iPhone OS 8_1_2 like Mac OS X) App ...

  2. htm初学笔记

    一.什么是html HTML(HyperText Markup Language):超文本标记语言,一种纯文本类型的语言 --使用带有尖括号的“标记”将网页中的内容逐一标识出来 用来设计网页的标记语言 ...

  3. 初探CSS

    css基本框架 index.html <!DOCTYPE html> <html> <head> <meta charset="utf-8" ...

  4. Android material design support library -- CollapsingToolbarLayout简介

    本文是codetrick上material design support library教程的第三篇,主要讲的是CollapsingToolbarLayout的概念和应用方法. 原文链接:Materi ...

  5. OC随笔一:类

    总结:        在oc中,我们要整出一个类来,首先需要一个.h头文件和一个.m实现文件.一般我们创建的类都继承了根类,因为根类帮我们实现了很多实用的方法,而类里面会有变量(属性) .函数(方法) ...

  6. (五)JS学习笔记 - Sizzle选择器

    Sizzle词法解析 sizzle对于分组过滤处理都用正则,其中都有一个特点,就是都是元字符^开头,限制匹配的初始,所以tokenize也是从左边开始一层一层的剥离. •可能会应用到正则如下: // ...

  7. Linux修改时间时区并在Tomcat中生效

    Linux查看当前时间时区linux:~ # datelinux:~ # date –Rlinux:~ # zdump -v /usr/share/zoneinfo/Asia/Beijing ---- ...

  8. web移动开发的小细节(持续添加)

    1.触屏设备上如何去掉数字转化为拨号链接的方法 <meta name=”format-detection” content=”telephone=no” /> telephone=no就禁 ...

  9. linux 下编译安装php

    系统环境: CentOS 6.5 x86_64 下载 PHP 源码包 # wget http://cn2.php.net/distributions/php-5.5.9.tar.bz2 # tar x ...

  10. Centos common software install

    1.本地安装soft yum localinstall xxx.rpm 2.kolourpaintyum install kolourpaint