最近需要在生产环境上rsync+inotify实时同步,但是测试发现效果极其不理想,我需要实时同步的目录大小大概为70G。起初用空目录测试的话效果极佳,但是本身我需要同步的目录很大,当我测试写入一个文件时会马上同步到备机,但是脚本后台执行内容日志一直刷扫遍目录下的所有文件,再写入一个文件时是不会马上同步到备机上的,当然等多久我不知道,我想应该会把目录扫遍完成吧!所以在网上找了一个sersync+rsync,我做了一下并发测试,同步效果确实不错。
环境:192.168.168.207(主机)
192.168.168.208(备机)
前提两台服务器都已经安装了rsync命令。
备机操作:
1、在/etc目录下新增一个rsyncd.conf文件,内容如下:
uid=root
gid=root
maxconnections=36000
usechroot=no
logfile=/var/log/rsyncd.log
pidfile=/var/run/rsyncd.pid
lockfile=/var/run/rsyncd.lock
[xxx] ===========>此处为模块名
path=/opt/xxx ===========>此处为目录路径
comment=rsync files
ignoreerrors=yes
read only=no
hostsallow=192.168.168.0/24
hostsdeny=*
2、保存上述文件并启动rsync服务。
rsync --daemon
3、确保服务正常启动
netstat -an | grep 873查看873端口是否开启
温馨提示:确保主机能访问到备机的873端口
主机操作:
4、下载sersync软件,因为我的操作系统是64位的,所以下载64位版本
wget http://sersync.googlecode.com/files/sersync2.5_64bit_binary_stable_final.tar.gz
解压文件
tar zxvf sersync2.5_64bit_binary_stable_final.tar.gz
5、修改解压后GNU-Linux-x86/confxml.xml文件,主要修改如下内容:
其它内容不变即可。
6、启动脚本(当然网上有很多启动相关参数,需要的可以查看一下)
./sersync2 -d -r
7、测试工作(略)
相关文章
- 04-03文件实时同步后防篡改的操作记录
- 04-03inotify+rsync文件实时同步报错:usr/local/bin/inotifywait: error while loading shared libraries: libinotifytools.so.0:
- 04-03rsync同步文件,排除多个文件/目录
- 04-03C#实现对文件目录的实时监控
- 04-03rsync同步文件,排除多个文件/目录
- 04-03文件实时同步服务器---rsync基本概述和概念
- 04-03flume集群安装与部署,flume入门操作案例:监控端口数据官方案例和实时监控指定目录下的多个追加文件
- 04-03rsync 同步文件包括目录
- 04-03分类保存与实时同步共享文件夹使用说明
- 04-03inotifywait+rsync做实时服务器文件同步(程序流写入可以用,例如java创建文件等)