rsync服务的使用方法

这次我把rsync服务使用在了web前端网站的提测、测试和更新方面。先介绍流程和配置。

1. 前提

网站上线流程太过原始:前端研发提测,邮件将提测文件打包给测试--->测试手动上传文件到测试环境,测试通过后把提测包邮件发送给运维--->运维进行线上更新,也需要手动更新文件

这个过程太繁琐,太漫长,即使把上线操作自动化,但是对于前段研发和测试来说,也是可以把人逼疯的流程。尤其是在测试任务大的情况下。

2. 解决方案

2.1 给前端研发提供提测专用FTP。FTP服务的部署就不在这里说了。

2.2 在提测专用FTP所在的系统上部署rsync服务,让测试环境自动同步提测专用FTP上的文件。

2.3 在测试环境同样部署rsync服务,让生产环境手动同步测试环境的文件。

2.4 然后再进行线上跟踪测试。

3. 环境说明

提测专用FTP:CentOS6.2 192.168.1.167

网站测试服务器:CentOS6.2 192.168.1.6

生产环境网站服务器:CentOS5.8 192.168.64.82

4. rsync服务的部署以及自动同步设置

4.1 rsync服务的部署

可以以单独进程方式开启,也可以配置到xinetd守护进程,让其自动开启。

4.1.1 安装

非常简单,yum安装即可

yum install -y rsync

4.1.2 配置

创建配置文件,和密码文件

touch /etc/rsyncd.conf

touch /etc/rsyncd.pwd

chmod 600 /etc/rsyncd.pwd #必须改成属主读写权限,否则不能进行密码校验

下面是本例中/etc/rsyncd.conf文件和/etc/rsyncd.pwd文件的内容:

提测专用FTP服务器:192.168.1.167上的rsyncd.conf配置:

port=873

uid = root

gid = root

pid file = /var/run/rsyncd.pid

lock file = /var/run/rsyncd.lock

log file = /var/log/rsyncd.log

[web_update] #实例名

uid=root #使用root用户权限,可自行制定使用的系统用户

gid=root #使用root用户组权限

path=/home/data01/website/ #实例根目录所在位置

host allow=192.168.1.6 # 允许连接此服务的主机 ,指定只允许测试服务器来同步

read only=true # ture只读权限,false读写权限

auth users = rsync # 允许传送文件的用户

secrets file = /etc/rsyncd.pwd # 指定密码验证文件的位置

提测专用FTP服务器:192.168.1.167上的rsyncd.pwd的配置:

rsync:yourpassword167 # 冒号前面是auth users 指定的用户rysnc,后面是自定义的密码。

# 密码必须是可读的,就是说密码中不能有特殊字符

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/20aed2c0b86d9d3209823513a6e19177.html