目录
简述rsync+sersync
- rsync在同步时,只同步发生变化的文件或目录(每次发生变化的数据相对整个同步目录数据来说很小,rsync在遍历查找对比文件时,速度很快),因此效率很高
- sersync可以记录被监听目录中发生变化的(增,删,改)具体某个文件或目录的名字;
同步原理
- 1. 在源数据服务器上开启sersync服务,sersync负责监控配置路径中的文件系统事件变化;
- 2. 调用rsync命令把更新的文件同步到目标服务器;
- 3. 需要在源数据服务器配置sersync,在同步目标服务器配置rsync server
同步原理
- 用户实时的往sersync服务器上写入更新文件数据;
-
在另一台服务器开启rsync守护进程服务,以同步拉取来自sersync服务器上的数据;通过rsync的守护进程服务后可以发现,实际上sersync就是监控本地的数据写入或更新事件;然后,在调用rsync客户端的命令,将写入或更新事件对应的文件通过rsync推送到目标服务器
配置rsync服务
vim /etc/rsyncd.conf 编辑rsync配置文件
vim /etc/rsyncd_users.db 编辑用户文件
backuper:abc123,. 格式:用户:密码
chmod 600 /etc/rsyncd_users.db 对用户文件调整权限
chmod 777 /var/www/html
用户backuper也需要对/var/www/html/有相应的读写权限,实际上只要other组具有读写权限,则备份用户backuper和运行nobody用户也就有读写权限了。
vim /etc/server.pass 在数据源端创建密码文件
chmod 600 /etc/server.pass
rsync -az --delete --password-file=/etc/server.pass /etc/hosts backuper@192.168.200.111::wwwroot
测试上传本地/etc/hosts文件到rsync服务器上,然后在目标服务器上查看到hosts
配置Sersync服务
tar xf sersync2.5.4_64bit_binary_stable_final.tar.gz -C /usr/local/ 将下载好的软件包解压
cd /usr/local/
mv GNU-Linux-x86/ sersync
cd sersync/
cp confxml.xml confxml.xml.$(date +%F) 创建备份文件
vim confxml.xml 编辑主配置文件
mkdir -p /var/www/html 准备监控目录
./sersync2 -d -r -o /usr/local/sersync/confxml.xml 启动进程守护
killall sersync2 重启sersync进程:先杀死再启动
在sersync监控端创建自动同步到rsync服务端