您的位置:首页 > 运维架构 > 网站架构

用 RHEL 自带的工具RSYNC务实现文件分发功能

2014-06-10 17:48 176 查看
RHEL 自带的工具RSYNC务实现文件分发功能 rsync是一款非常优秀的文件同步管理软件,具有占用资源少,增量同步等优点。软件包默认包含在RHEL6.0系统中,无需安装。其默认安装的版本是3.0.6 最新版本是3.0.8 功能相差不大。推荐使用系统自带的版本,比较稳定。
经测试.由于接收端用的是增量机制实现文件同步,不占用过多带宽及资源,非常适合做本次项目的文件同步。
下面有这样一个测试环境:
公司站服务器为10.0.0.2和10.0.0.3做的一个集群,运维人员每天会更新10.0.0.2的网站内容,然后使用rsync同步到10.0.0.3上。
安装步骤如下: 相关参数根据实际情况调整
建 RSYNC 服务的配置文件 在分发服务器(10.0.0.2)上设置 RSYNC 服务
#vi /etc/rsync.conf
[www]
path= /var/www/html #需要分发的目录,该目录下的文件及目录会自动分发
list= yes #允许合法用户列目录
readonly = yes #主服务器不允许客户端进行写文件
hosts allow = 10.0.0.3 #只允许连接的客户主机
authusers= receiver #验证合法用户
secretsfile = /etc/rsyncd.pw #指定密码文件,由于用明文,文件权限必须为600
log file=/var/log/rsync.log
编辑用户密码文件
#vi /etc/rsyncd.secrets
receiver:nIha@NHT
设置文件权限,只允许 root 用户查看
#chmod 600/etc/rsyncd.pw
以服务模式运行 RSYNC 并将其添加到/etc/rc.local 使其开机自动运行
#rsync --daemon
注:由于 RSYNC 服务使用 873 端口来进行文件传输,所以防火墙必须有针性的开放该端口
在接收服务器(10.0.0.3)的脚本设置。
注:该脚本会自动同步服务器的目录。且只更新服务器上修改,创建及删除操作的文件。也就是
增量操作。所以在性能上完全可以满足要求
#vi /root/scripts/syncwww.sh
#!/bin/sh
# directory to sync
SDIR=www
RUSER=receiver
SRVIP=10.0.0.2
DDIR=/var/www/html
export RSYNC_PASSWORD= nIha@NHT
OPTS=" -az --delete "
rsync $OPTS $RUSER@$SRVIP::$SDIR $DDIR
定时 每晚 3 点自动执行.
#chmod +x /root/scripts/syncwww.sh
#crontab -e
0 3 * ** /root/scripts/syncwww.sh
注:需要立即同步时,可以手动运行该脚本则可实现立即同步.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  网站 rsync 自动同步