sersync+rsync 实时复制
前言
在网站集群架构中,数据永远是网站最重要的,一旦数据造成丢失,将会给企业造成巨大损失,因此,企业网站
和应用需要有完善的数据备份方案确保数据安全。
备份——》实时复制:rsync(复制推送)+Inotify(监控服务)
1.实时复制inotify机制介绍
Inotify是一种异步的件系统事件监控机制,监控文件系统中添加、删除,修改、移动等各种事件,利用这个内核接口,
第三方软件就可以监控文件系统下文件的各种变化情况。
inotify-tools:监控指定目录数据实时变化的软件程序。
Inotify程序原理是一种事件驱动机制,它为应用程序监控文件系统事件提供了实时响应事件的机制,可以做到对事件处理的实时响应。
inotify的实现有几款第三方软件:inotify-tools、sersync、Irsyncd(不好用)。
优点:监控文件文件系统事件变化,通过复制工具实现实时数据复制。支持多线程实时复制。
缺点:实测并发如果大于200个文件(10-100k),复制会有延迟。
2.inotify实践
安装:
[root@nfs01~]#yum install epel-release -y
#<==安装epel源,默认的官方源没有inotify-tools工具包.
(wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo)
[root@nfs01~]#yum install inotify-tools -y#<==下载inotify软件工具
inotifywait 命令参数:
常用监控文件事件功能参数:

inotify工具命令格式
inotifywait 命令语法格式示意图:
举例:
inotifywait -mrq -timefmt 'd/%m/%y %H:%M' --format '%T%w%f' -e create /data
监控/data目录create状态,处于阻塞状态,可以开两个窗口,一个监视,一个创建。

3.sersync 安装配置
参照:https://blog.51cto.com/wsxxsl/1767071
sersync文件放置路径:
编辑confxml.xml文件:
运行服务:
/application/sersync/bin/sersync -d -n 10 -o /application/sersync/conf/confxml.xml