Rsync+sersync部署

摘要:
Web服务器A,假设角色S1,IP:172.16.100.1,主机名:rsync-server-1 Web服务器B,假设角色S2,IP:17216.100.2,主机名为rsync-seerver-26.1.2服务器端配置特别提醒:本文中的SWEB服务器是SWEB1,SWEB2。这里,我们仅以SWEB1的Rsync服务器部署为例。SWEB2的部署与SWEB1的部署相同。上述Rsync服务的配置文件表明允许主机访问172.16.100.0网段。Rsync同步模块名为[web]和[download]。同步文件分别放置在相应路径指定的目录/data/web和/data/download中。请注意,Rsync服务帐户应具有对同步目录的写入和更新权限。

内核版本:2.6.32-431.el6.x86_64

系统采用最小化安装,系统经过了基本优化,selinux 为关闭状态,iptables 为无限制模式 源码包存放位置:/root

Rsync 客户端+Sersync 服务器(SERSYNC),承担角色 MASTER,IP:172.16.100.3,主机名:

rsync-client-sersync

SERSYNC_SLAVE,作为 SERSYNC 的从机,如果 SERSYNC 宕机,SERSYNC_SLAVE 来接管服务,

保证业务不中断,本实验不包括它!

Web 服务器 A(即 Rsync 服务端)(SWEB1),承担角色 S1,IP:172.16.100.1,主机名:rsync-server-1

Web 服务器 B(即 Rsync 服务端)(SWEB2),承担角色 S2,IP:172.16.100.2,主机名:rsync-server-2

6.1.2  服务器端配置

特别提醒:本文的 SWEB 服务器即为 SWEB1(172.16.100.1),SWEB2(172.16.100.2)。此 处仅以 SWEB1 的 Rsync 服务端部署为例,SWEB2 的部署和 SWEB1 一样,此处不再敖述。

1.安装 Rsync

[root@SWEB1 ~]# yum install rsync –y

2、修改 Rsync 配置文件

[root@SWEB1 ~]# cat > /etc/rsyncd.conf << EOF

#Rsync server

#created by sunsky 00:17 2013-06-28

##rsyncd.conf start##                                                                                                                     27

uid = root     # rsync 对后面模块中的 path 路径拥有什么权限 gid = root     # rsync 对后面模块中的 path 路径拥有什么权限 use chroot = no     # 安全操作

max connections = 2000      # 定义连接数 2000 timeout = 600      # 600 秒超时

pid file = /var/run/rsyncd.pid lock file = /var/run/rsync.lock log file = /var/log/rsyncd.log ignore errors     # 忽略错误

read only = false   # false 才能上传文件,true 不能上传文件

list = false   # 文件列表

hosts allow = 172.16.100.0/24 hosts deny = *

auth users = rsync_bak   # 虚拟用户,同步时需要用这个用户

secrets file = /etc/rsync.password     # 密码文件

##################################### [web]      # 模块名称

comment = redhat.sx site files by sunsky 00:17 2013-06-28   # 注释

path = /data/web                # 模块的路径

#################################### [download]

comment = redhat.sx site sit data files by sunsky 00:17 2013-06-28 path = /data/download

##################################### EOF

做一个目录即可。

上面的 Rsync 服务的配置文件,表明允许 172.16.100.0 网段的主机访问,Rsync 同步模块名 为[web]和[download],将同步过来的文件分别放入对应 path 指定的目录/data/web,

/data/download 下。

如果有多台目标服务器,则每一台都需要进行类似的 rsync 服务端配置,上面的 uid 和

gid 需要换成你服务器的相应的同步用户。注意,Rsync 服务账户(本文用 root)要有对被同

步目录(/data/web 和/data/download)的写入和更新权限。

3、创建相关待同步目录

[root@SWEB1 ~]# mkdir /data/{web,download} -p

[root@SWEB1 ~]# tree /data

/data

├── download

└── web

2 directories, 0 files

提示:此步在 S1,S2 上都要执行,否则,rsync 服务会因为没有 PATH 路径而无法启动。

4、相关认证和权限项配置

[root@SWEB1 /]# echo 'rsync_bak:redhat' > /etc/rsync.password

[root@SWEB1 /]# chmod 600 /etc/rsync.password

[root@SWEB1 /]# cat /etc/rsync.password

rsync_bak:redhat

[root@SWEB1 /]# ll /etc/rsync.password

-rw-------. 1 root root 7 Jun 4 00:20 /etc/rsync.password

5、以守护进程方式启动 rsync 服务

[root@SWEB1 ~]# rsync –daemon

6、查看 rsync 服务状态

COMMAND  PID USER  FD  TYPE DEVICE SIZE/OFF NODE NAME

rsync  20982 root  3u IPv4 88170      0t0 TCP *:rsync (LISTEN)

rsync  20982 root  5u IPv6 88171      0t0 TCP *:rsync (LISTEN)

7、为 rsync 添加开机自启动

[root@SWEB1 /]# echo "# rsyncd service daemon by sun 20140702" >>/etc/rc.local

[root@SWEB1 /]# echo "/usr/bin/rsync --daemon" >> /etc/rc.local

[root@SWEB1 /]# grep daemon /etc/rc.local

# rsyncd service daemon by sun 20140702

/usr/bin/rsync --daemon

这里顺带附上重启的命令,rsync 重启有点麻烦,需要以先杀掉后台守护进程,然后再启动的方式

来重启服务。

[root@SWEB1 /]# pkill rsync

[root@SWEB1 /]# rsync --daemon

免责声明:文章转载自《Rsync+sersync部署》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇几个常用的linux命令(操作服务器时会用到)斯特林数的基础性质与斯特林反演的初步入门下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

依赖项useEffect的执行顺序问题

场景:在需要进行修改操作,给整个表单赋值时,在子组件中有依赖父级项如props.test,父级props.test被修改了 子组件: let [data, setData] = useState<array<any>>([]) useEffect(()=>{ //此处进行了一些初始化获取数据列表的操作   setData([1...

微信小程序地图组件中的include-points怎样缩放视野并将所有坐标点在规定的视野内展示?

开发微信小程序过程中运用到了map地图组件,官网文档写的比较简陋一些,好多核心功能没有详细说明,比如include-points,怎样做到类似滴滴那种将所有坐标点都展示在视野范围内呢; 1.如果不设置中心点latitude、longitude会有不能展现到视野内的问题;所以先要计算两点之间的中心点: var lat = (that.data.from_l...

夺命雷公狗---node.js---9实现页面的跳转

废话不多说,我们先来看看项目的文件结构,如下所示: 然后我们创建一个index.js的文件让他来做端口监听,代码如下所示: var http = require('http'); var fs = require('fs'); var url = require('url'); FILE = "d:/node/code/http"; http.cr...

CDH目录

配置文件都在:/etc/服务名, 看hadoop的classpath   |grep conf /etc/hadoop/conf log都在: /var/log/服务名  看scm的log: tail -1000 /var/log/cloudera-scm-server/cloudera-scm-server.log |grep error hive: /...

Web Worker

写在前面 众所周知,JavaScript是单线程的,JS和UI更新共享同一个进程的部分原因是它们之间互访频繁,但由于共享同一个进程也就会造成js代码在运行的时候用户点击界面元素而没有任何响应这样的情况,这么糟糕的用户体验HTML5怎么会不修订了,这样Web Worker诞生了。 简介 Web Worker进程加载的js运行的时候不仅不会影响浏览器UI,而且...

CentOS 修改主机名

最新文章:Virson's Blog 1.临时修改主机名 地址:http://www.cnblogs.com/mawanglin2008/p/3530790.html 显示主机名: oracle@localhost:~$ hostname localhost 修改主机名: oracle@localhost:~$ sudo hostname orcl1 o...