Frank的学习之路

11.0_sersync 配置

 rpm -qa |grep rsync    //检查是否有rsync安装包
rsync (接收端)
1.yum install rsync -y
service iptables stop

vim  /etc/rsyncd.conf

uid=root
gid=root
max connections=36000
use chroot=no
log file=/var/log/rsyncd.log
pid file=/var/run/rsyncd.pid
lock file=/var/run/rsyncd.lock
secrets file=/etc/rsync.pass
[testfile]
path=/tmp/testfile
comment = testfile
ignore errors
read only = no
auth user = rsync_user
hosts allow = 10.10.0.0/16
hosts deny = *

下面是截图

设置密码:
vim /etc/rsync.pass
rsync_user:yixue

mkdir /tmp/testfile -p

启动服务:
chmod 600  /etc/rsyncd.conf
chmod 600  /etc/rsync.pass
ulimit -SHn 65535
/usr/bin/rsync --daemon /etc/rsyncd.conf

设置开机自启动:
echo "ulimit -SHn 65535" >>/etc/rc.local
echo "/usr/bin/rsync --daemon /etc/rsyncd.conf">>/etc/rc.local

sersync (推送端)
yum install rsync -y
mkdir /usr/local/rsync -p
//上传sersync压缩包
tar -zxf sersync_64bit_binary_stable_final.tar

设置密码:
vim /etc/rsync.pass1
rsync_user:yixue

vim confxml.xml
修改源服务器的同步路径
修该目标ip地址和模块
修改rsync的用户和密码
启动服务:
/usr/local/rsync/sersync2 -d -r -o /usr/local/rsync/confxml.xml
设置开机启动:
echo "/usr/local/rsync/sersync2 -d -r -o /usr/local/rsync/confxml.xml" >> /etc/rc.local


说明:
1.修改inotify默认参数(inotify默认内核参数值太小)
查看系统默认参数值:
sysctl -a | grep max_queued_events
结果是:fs.inotify.max_queued_events = 16384
sysctl -a | grep max_user_watches
结果是:fs.inotify.max_user_watches = 8192
sysctl -a | grep max_user_instances
结果是:fs.inotify.max_user_instances = 128
修改参数:
sysctl -w fs.inotify.max_queued_events="99999999"
sysctl -w fs.inotify.max_user_watches="99999999"
sysctl -w fs.inotify.max_user_instances="65535"
参数说明:
max_queued_events:
inotify队列最大长度,如果值太小,会出现"** Event Queue Overflow **"错误,导致监控文件不准确
max_user_watches:
要同步的文件包含多少目录,可以用:find /home/www.jb51.net -type d | wc -l 统计,必须保证max_user_watches值大于统计结果(这里/home/www.jb51.net为同步文件目录)
max_user_instances:
每个用户创建inotify实例最大值

2.添加脚本监控sersync是否正常运行
cd /usr/local/rsync/
vim check_sersync.sh
chmod 775 check_sersync.sh

#!/bin/sh 
sersync="/usr/local/rsync/sersync2" 
confxml="/usr/local/rsync/confxml.xml"
status=$(ps aux |grep 'sersync2'|grep -v 'grep'|wc -l) 
if [ $status -eq 0 ]; 
then
echo "Restart sersync2!"
$sersync -d -r -o $confxml &
else
echo "Do nothing."
exit 0;
fi

设定定时任务
vim /etc/crontab
*/5  * * * *  root/usr/local/rsync/check_sersync.sh > /dev/null 2>&1 

卸载方法:
yum和apt-get安装的需要yum remove 和apt-get remove

http://www.it165.net/os/html/201307/5708.html
http://blog.chinaunix.net/uid-1840233-id-4379852.html
http://sookk8.blog.51cto.com/455855/328076/
http://down.51cto.com/data/1445641
https://www.centos.bz/2012/01/real-time-rsync-file-with-sersync/
http://www.jb51.net/LINUXjishu/142722.html


返回顶部