Rsync+sersync实现数据实时同步
作者:互联网
内容:
#1.为什么选用Rsync+sersync
#2.准备环境
#3.搭建配置
#4.测试
#5.搬运学习博客链接
#1.为什么选用Rsync+sersync
1)sersync是基于Inotify开发的,类似于Inotify-tools的工具。
sersync可以记录被监听目录中发生变化的(包括增删改)具体某一个文件或某一个目录的名字,
然后使用rsync同步的时候,只同步发生变化的这个文件或者这个目录。
2)Rsync+Inotify-tools与Rsync+sersync这两种架构有什么区别?
rsync在同步的时候,只同步发生变化的这个文件或者这个目录(每次发生变化的数据相对整个同步目录数据来说是很小的,
rsync在遍历查找比对文件时,速度很快),因此,效率很高。
当同步的目录数据量不大时,建议使用Rsync+Inotify-tools;当数据量很大(几百G甚至1T以上)、文件很多时,建议使用Rsync+sersync。
#2.准备环境
#3.搭建配置
修改环境
1)inotify默认内核参数值太小,我们需要手动修改参数:
sysctl -w fs.inotify.max_queued_events="99999999"
sysctl -w fs.inotify.max_user_watches="99999999"
sysctl -w fs.inotify.max_user_instances="65535"
vim /etc/sysctl.conf #添加以下代码
fs.inotify.max_queued_events=99999999
fs.inotify.max_user_watches=99999999
fs.inotify.max_user_instances=65535
2)关闭selinux
在/etc/sysconfig/selinux 这个文件,设置SELINUX=disable
3)防火墙开通873端口
firewall-cmd --zone=public --add-port=873/tcp --permanent
firewall-cmd --reload
本地两台测试虚拟机,防火墙已关闭,无需操作。
***注意:以上两台服务器都需要配置。***
部署rsync
1)安装rsync,配置rsync
yum install rsync -y
vim /etc/rsyncd.conf
uid = root
gid = root
use chroot =no
list = no
log file = /var/log/rsyncd.log
[helloweba]
path=/data/file
comment=helloweba file backup
ignore errors=yes
read only=no
list=no
max connections=2000
timeout=200
auth users=rsync
secrets file=/etc/rsync.pas
hosts allow=*
#host deny=0.0.0.0/0
2)创建同步的用户与密码的文件,将用户名和密码写入密码文件中,同样要设置这个文件的权限为600。
echo "rsync:123456" >> /etc/rsync.pas
chmod 600 /etc/rsync.pas
3)创建同步的目录
mkdir -p /data/file
4)启动和管理rsync
systemctl start rsyncd
systemctl enable rsyncd
netstat -tunpl | grep :873
***注意:以上两台服务器都需要配置。***
源服务器[192.168.108.101]部署sersync
1)下载sersync
http://code.google.com/p/sersync/downloads/list
http://sersync.sourceforge.net/ 下载旧版本
包:sersync2.1_64bit_binary.tar.gz
2)安装sersync
cd /abcs/tools/rsync_sersync
tar xf sersync2.1_64bit_binary.tar.gz
标签:Rsync,sersync,inotify,max,rsync,实时,etc 来源: https://www.cnblogs.com/yachengmuCC/p/16341955.html