rsync+inotify实现实时同步案例--转
副标题[/!--empirenews.page--]
转自:http://chocolee.blog.51cto.com/8158455/1400596 随着应用系统规模的不断扩大,对数据的安全性和可靠性也提出的更好的要求,rsync在高端业务系统中也逐渐暴露出了很多不足,首先,rsync同步数据时,需要扫描所有文件后进行比对,进行差量传输。如果文件数量达到了百万甚至千万量级,扫描所有文件将是非常耗时的。而且正在发生变化的往往是其中很少的一部分,这是非常低效的方式。其次,rsync不能实时的去监测、同步数据,虽然它可以通过linux守护进程的方式进行触发同步,但是两次触发动作一定会有时间差,这样就导致了服务端和客户端数据可能出现不一致,无法在应用故障时完全的恢复数据。基于以上原因,rsync+inotify组合出现了! 1.1?inotify介绍 2.1?rsync+inotify同步逻辑图 3.1?环境部署 4.1?inotify-slave部署 4.1.1检查是否安装rsync 4.1.2?新建rsync用户及模块目录并更改其用户组 4.1.3?编写rsync?daemon配置文件/etc/rsyncd.conf 4.1.4?配置虚拟用户的密码文件 4.1.5?启动rsync?服务 4.1.6?通过inotify-master测试推送 5.1?inotify-master部署 5.1.1?查看当前系统是否支持inotify 5.1.2?下载inotify源码包并编译安装 5.1.3?inotify之inotifywait命令常用参数详解 5.1.4?编写监控脚本并加载到后台执行 5.1.5?实时同步测试 1.1?inotify介绍 inotify是一种强大的、细粒度的、异步的文件系统事件控制机制。linux内核从2.6.13起,加入了inotify支持,通过inotify可以监控文件系统中添加、删除、修改、移动等各种事件,利用这个内核接口,第三方软件就可以监控文件系统下文件的各种变化情况,而inotify-tools正是实施监控的软件。 2.1?rsync+inotify同步逻辑图 3.1?环境部署 4.1?inotify-slave部署 这里就是部署rsync服务,rsync?daemon工作模式。 4.1.1检查是否安装rsync |
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!