sersync+rsync实现实时同步

目录

  • 一.基本介绍
    • 1.rsync
    • 2.sersync
    • 3.同步原理
  • 二.环境搭建
    • 1.rsync环境搭建详情[rsync搭建](https://blog.csdn.net/m0_71163619/article/details/131456472?spm=1001.2014.3001.5502)
    • 2.数据服务器安装sersync
  • 三.验证
  • 四.sersync文件详解

一.基本介绍

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服务
sersync+rsync实现实时同步_第1张图片

            ###本地同步目录
 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参数,则默认执行同步程序

sersync+rsync实现实时同步_第2张图片

三.验证

数据同步成功
在这里插入图片描述
sersync+rsync实现实时同步_第3张图片
sersync+rsync实现实时同步_第4张图片
sersync+rsync实现实时同步_第5张图片

如果还想同步另外一个目录,需要将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为不检测

        true"/>
        true"/>
        false"/>
        true"/>
        true"/>
        true"/>
        false"/>
        false"/>



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

修改rsync服务器验证的账号密码配置

    "/>
    false" users="myuser" passwordfile="/etc/rsync.password"/>
    false" port="874"/>
    false" time="100"/>
    >
</rsync>

你可能感兴趣的:(linux,linux,运维)