首页 > 代码库 > sersync实时复制工具实践

sersync实时复制工具实践

在nfs服务器上面操作


(一)工具下载sersync_installdir_64bit网上很多。在本文附件也提供了。

nfs服务器新建目录/application

[root@oldboy ~]# mkdir /application -p

[root@oldboy ~]# cd /application/

[root@oldboy application]# rz -y 上传sersync_installdir_64bit.zip软件到nfs服务器里面

[root@oldboy application]# unzip sersync_installdir_64bit.zip  #加压zip软件

[root@oldboy application]# mv sersync_installdir_64bit/sersync/ . #把sersync_installdir_64bit/sersync/目录移动到/application中

然后再删除[root@oldboy application]# rm -fr sersync_installdir_64bit目录

[root@oldboy application]# ls
sersync  sersync_installdir_64bit.zip

[root@oldboy application]# tree
.
├── sersync
│   ├── bin
│   │   └── sersync  #启动文件
│   ├── conf
│   │   └── confxml.xml #配置文件
│   └── logs
└── sersync_installdir_64bit.zip

4 directories, 3 files


[root@oldboy conf]# vim confxml.xml

修改内容下图所示:

技术分享

[root@oldboy sersync]# pwd
/application/sersync

[root@oldboy sersync]# chmod +x bin/sersync

[root@oldboy sersync]# /application/sersync/bin/sersync -h
set the system param
execute:echo 50000000 > /proc/sys/fs/inotify/max_user_watches
execute:echo 327679 > /proc/sys/fs/inotify/max_queued_events
parse the command param
_______________________________________________________
参数-d:启用守护进程模式
参数-r:在监控前,将监控目录与远程主机用rsync命令推送一遍
c参数-n: 指定开启守护线程的数量,默认为10个
参数-o:指定配置文件,默认使用confxml.xml文件
参数-m:单独启用其他模块,使用 -m refreshCDN 开启刷新CDN模块
参数-m:单独启用其他模块,使用 -m socket 开启socket模块
参数-m:单独启用其他模块,使用 -m http 开启http模块
不加-m参数,则默认执行同步程序


[root@oldboy sersync]# /application/sersync/bin/sersync -d -r -n 8 -o /application/sersync/conf/confxml.xml


[root@oldboy sersync]# ps -ef|grep sersync
root       2005      1  0 14:04 ?        00:00:00 /application/sersync/bin/sersync -d -r -n 8 -o /application/sersync/conf/confxml.xml
root       2036      1  0 14:05 ?        00:00:00 /application/sersync/bin/sersync -d -r -n 8 -o /application/sersync/conf/confxml.xml
root       2050   1895  0 14:06 pts/0    00:00:00 grep sersync


cd /data目录,删除/data目录下面所有文件

[root@oldboy data]# rm -f *
[root@oldboy data]# ll
total 0

新建stu{01..100}这100个文件
[root@oldboy data]# touch stu{01..100}


以下内容是在rsync(backup)服务器上面操作的:

[root@backup ~]# cd /nfsbackup/
[root@backup nfsbackup]# ls|wc -l
100
[root@backup nfsbackup]# ls
stu001  stu011  stu021  stu031  stu041  stu051  stu061  stu071  stu081  stu091
stu002  stu012  stu022  stu032  stu042  stu052  stu062  stu072  stu082  stu092
stu003  stu013  stu023  stu033  stu043  stu053  stu063  stu073  stu083  stu093
stu004  stu014  stu024  stu034  stu044  stu054  stu064  stu074  stu084  stu094
stu005  stu015  stu025  stu035  stu045  stu055  stu065  stu075  stu085  stu095
stu006  stu016  stu026  stu036  stu046  stu056  stu066  stu076  stu086  stu096
stu007  stu017  stu027  stu037  stu047  stu057  stu067  stu077  stu087  stu097
stu008  stu018  stu028  stu038  stu048  stu058  stu068  stu078  stu088  stu098
stu009  stu019  stu029  stu039  stu049  stu059  stu069  stu079  stu089  stu099
stu010  stu020  stu030  stu040  stu050  stu060  stu070  stu080  stu090  stu100

上面内容可以验证了在nfs上面创建文件后,再rsync(backup)服务器上面会同步


验证文件删除:

在nfs服务器上面删除

[root@oldboy data]# rm -f *

然后再到rsync(backup)服务器上面查看

[root@backup nfsbackup]# ls|wc -l
0
[root@backup nfsbackup]# ll
total 0

验证了删除也是同步的。


在nfs服务器上面操作:

加入开机启动

把/application/sersync/bin/sersync -d -r -n 8 -o /application/sersync/conf/confxml.xml

追加到/etc/rc.local文件里面。


[root@oldboy ~]# cat /etc/rc.local
#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don‘t
# want to do the full Sys V style init stuff.

touch /var/lock/subsys/local
>/etc/udev/rules.d/70-persistent-net.rules

###########################
/application/sersync/bin/sersync -d -r -n 8 -o /application/sersync/conf/confxml.xml

技术分享


本文出自 “sandshell” 博客,请务必保留此出处http://sandshell.blog.51cto.com/9055959/1955739

sersync实时复制工具实践