sersync+rsync实现实时同步

一.基本介绍

1.rsync

rsync原理配置

2.sersync

sersync是基于inotify开发的,类似于inotify-tools的工具,sersync可以记录下被监听目录中发生变化的(包括增加删除修改)具体某一个文件或者某一个目录的名字,然后使用rsync同步的时候,只同步发生变化的文件或者目录,因此效率更高。

3.同步原理

  • 在数据服务器开启sersync服务,sersync负责监控配置路径中文件或者目录中发生的变化
  • 调用rsync命令把更新的文件内容同步到备份服务器中
  • 需要在数据服务器配置sersync,在同步到备份服务器

用户实时的往sersync数据服务器写入更新文件数据
备份服务器开启rsync守护进程服务,以同步拉取来的sersync数据服务器上的数据。

架构
10.10.100.222 数据服务器 rsync+sersync
10.10.100.221 备份服务器 rsync

二.环境搭建

1.rsync环境搭建详情rsync搭建

2.数据服务器安装sersync

###解压压缩包
[root@localhost ~]# tar xf  sersync2.5.4_64bit_binary_stable_final.tar.gz 
###改名
[root@localhost ~]# mv GNU-Linux-x86/  sersync-2.5.4
###软链接
[root@localhost ~]# ln -s sersync-2.5.4   sersync
[root@localhost ~]# cd sersync
###命令复制到/usr/bin/sersync
[root@localhost ~]# cp sersync2 /usr/bin/sersync

2.1配置resync服务
在这里插入图片描述

            ###本地同步目录
 24         <localpath watch="/data">    
            ###备份服务器地址和指定的模块
 25             <remote ip="10.10.100.221" name="backup"/>

 29         <rsync>
 30             <commonParams params="-artuz"/>
            ###指定用户名和文件密码
 31             <auth start="true" users="myuser" passwordfile="/etc/rsync.passwd"/>

2.2启动sersync服务

   sersync -dro sersync/confxml.xml    ###启动sersync服务

参数说明

参数-d:启用守护进程模式
参数-r:在监控前,将监控目录与远程主机用rsync命令推送一遍
参数-n:指定开启守护线程的数量,默认为10个
参数-o:指定配置文件,默认使用confxml.xml文件
参数-m:单独启用其他模块,使用 -m refreshCDN 开启刷新CDN模块
参数-m:单独启用其他模块,使用 -m socket 开启socket模块
参数-m:单独启用其他模块,使用 -m http 开启http模块
不加-m参数,则默认执行同步程序

在这里插入图片描述

三.验证

数据同步成功
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

如果还想同步另外一个目录,需要将config.xml文件拷贝,重新命名、修改端口、同步路径、模块名称

# cp confxml.xml confxml-1.xml
# vim confxml-1.xml
修改端口为8009、修改同步路径、修改模块名称
3     <host hostip="localhost" port="8009"></host>
24         <localpath watch="test">
25             <remote ip="10.10.100.221" name="data"/>
 

四.sersync文件详解

confxml.xml

修改配置文件部分配置
指定部分文件不同步,排除某些文件
/data

查看文件的6-11行
<filter start="false">
        <exclude expression="(.*)\.svn"></exclude>
        <exclude expression="(.*)\.gz"></exclude>
        <exclude expression="^info/*"></exclude>
        <exclude expression="^static/*"></exclude>
</filter>

(.*)\.svn 排除.svn文件 
"(.*)\.gz 排除.gz文件
^info/*   以info开头的内容
^static/* 以static开头的内容

指定事件监控,可以开,关某些事件,看文件 12-21 行
true为检测,false为不检测
<inotify>
        <delete start="true"/>
        <createFolder start="true"/>
        <createFile start="false"/>
        <closeWrite start="true"/>
        <moveFrom start="true"/>
        <moveTo start="true"/>
        <attrib start="false"/>
        <modify start="false"/>
</inotify>


sersync重点配置,如rsync备份服务器的地址填写
localpath 本地目录 watch 进行监测(最好加上个/)
填写rsync备份服务器的地址,以及模块名
 <localpath watch="/data/">
            <remote ip="10.10.100.221" name="backup"/>
            <!--<remote ip="192.168.8.39" name="tongbu"/>-->
            <!--<remote ip="192.168.8.40" name="tongbu"/>-->
 </localpath>
 
 
cat /etc/rsyncd.conf 查看rsync的配置

修改rsync服务器验证的账号密码配置
<rsync>
    <commonParams params="-artuz"/>
    <auth start="false" users="myuser" passwordfile="/etc/rsync.password"/>
    <userDefinedPort start="false" port="874"/><!-- port=874 -->
    <timeout start="false" time="100"/><!-- timeout=100 -->
    <ssh start="false"/>
</rsync>
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值