怎样使用rsync组件进行服务器数据同步?

rsync远程数据传输
rsync远程数据同步传输

rsync是一款开源、多功能可实现全量及增量的数据备份同步的优秀工具, 操作快速便捷, 适用于多种操作系统之上。本文介绍怎样使用rsync工具进行服务器间的数据同步操作方法。

一、实验环境

主机名
 网卡ip
 默认网关
用途
nfs-server
10.0.0.11
10.0.0.254
rsync服务器端
web-client01
10.0.0.12
10.0.0.254
rsync客服端
web-client02
10.0.0.13
10.0.0.254
rsync客服端

二、实验步骤

1.什么是rsync?
rsync是一款开源的,快速的,多功能的可实现全量及增量的数据备份同步的优秀工具,适用于多种操作系统之上。
2.rsync特性
1)支持拷贝链接文件特殊文件
2)可以排除文件或目录,类似打包命令tar的–exclude功能
3)可实现增量和全量备份数据功能
4)可以通过socket传输文件和数据

3.rsync在企业中的应用 
1)把所有客户服务器数据同步到备份服务器
2)两台服务器之间定时同步数据
3)实现多台服务器数据实时备份机制(rsync+inotify/rsync+sersync)

生产场景集群架构服务器本分方案
1)针对公司重要数据混乱状况和领导提出备份全网数据的方案
2)通过本地打包备份,然后rsync+inotify/rsync+sersync把数据备份到一个固定的存储服务器上,然后在存储服务器上通过脚本检查并发送报警给管理员备份结果。 
3)定期将IDE机房的数据备份到公司内部服务器上,防止机房火灾等不可抗因素。
rsync命令:
    rsync [OPTION…] SRC… [DEST]
        -a:表示归档方式传输文件
        -r:对子目录以递归模式(recursive)
        -v:详细模式输出
        -z:在传输过程中压缩
        -P:保持属性
        –exclude:排除
        –exclede-from:从什么什么排除
        –bwlimit:限速 
    rsync -avz /etc/hosts  /tmp —类似拷贝(cp)
    rsync -r –delete /null/ /data/ —类似删除(rm)  

    Pull: rsync [OPTION…] [USER@]HOST:SRC… [DEST]
    Push: rsync [OPTION…] SRC… [USER@]HOST:DEST

    rsync -avzP -e ‘ssh -p 22’ /etc/hosts/ root@10.0.0.12:/tmp   
    rsync -avzP -e ‘ssh -p 22’ chen@10.0.0.13:/data/ /tmp/chen 
    

4.守护进程(socket)的方式传输数据
1.1 服务端配置如下:
1)检查是否安装rsync,没有可使用yum来安装 
rpm -qa rsync  
yum -y install rsync   
2)配置rsync配置文件 
#Rsync server
#created by chen 2016.6.9 
##rsyncd.conf start##
uid = rsync 
gid = rsync
use chroot = no
max connections = 2000
timeout = 300
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
ignore errors
read only = false
list = false
hosts allow = 10.0.0.0/24
hosts deny = 0.0.0.0/32
auth users = rsync_backup
secrets file = /etc/rsync.password
#####################################
[backup]
comment = backup by chen
path = /backup
#####################################
3)创建用户和共享目录
useradd rsync -s /sbin/nologin -M 
mkdir /backup 
chown -R rsync.rsync /backup 
4)将密码文件写入到/etc/rsync.password,并授予权限
echo “rsync_backup:chen”>/etc/rsync.password
chmod 600 /etc/rsync.password 
5)启动rsync服务
rsync –daemon 
6)检查端口是否开启 
netstat -tunpl |grep 873   
lsof -i :873


1.2 客服端配置如下:
1)将密码文件写入到/etc/rsync.pasword 
echo “rsync_backup:chen” >/etc/rsync.pasword 
2)进行远程数据同步测试,是否能实现pull/push功能  

rsync -avz /tmp  rsync_backup@10.0.0.11::backup –password-file=/etc/rsync.password 

rsync -avz rsync_backup@10.0.0.11::backup –password-file=/etc/rsync.password 

    注意:rsync数据的推拉只能在客服端执行

5.客户端排除命令
rsync -avz –exclude=a  /data/ rsync_backup@10.0.0.11::backup –password-file=/etc/rsync.password 

rsync -avz –exclude={a..g} /data/ rsync_backup@10.0.0.11::backup –password-file=/etc/rsync.password  

6.服务端排除命令
将如下命令放在/etc/rsyncd.conf(不常用)
exclude=a b  /tmp/chen 

7.无差异备份(谨慎使用,存在一定的风险操作,一般在两台服务器之间数据需必须一样的时候使用)
rsync -avz –delete /tmp/ rsync_backup@10.0.0.11::backup –password-file=/etc/rsync.password   

rsync -avz –delete rsync_backup@10.0.0.11::backup /tmp –password-file=/etc/rsync.password 

发表评论

电子邮件地址不会被公开。

rsync远程数据传输

怎样对远程传输数据模块rsync进行安全加固设置?

rsync是两台服务器间进行数据同步的便捷工具,通过rsync可以实现负载均衡与弹性伸缩的灵活搭配。但是,如果直接使用rsync的默认传输通道,是没有加密措施的,数据将会直接暴露在互联网,造成数据泄露的风险。那么怎样给rsync远程数据传输服务进行安全设置呢?阿里云代理商为您分享rsync的安全配置方法。

阅读更多 »
CDN内容分发网络加速

CDN+SLB网页将你重定向的次数过多的解决方法

CDN+SLB网页将你重定向的次数过多的解决方法是什么?我们知道,企业上云,CDN+SLB+ECS+RDS+OSS是一种常用的解决方案,但这种解决方案如果配置不小心就会出现重定向次数过多的故障。这是什么原因呢?怎样解决呢?阿里云北京分销中心为您分享网站重定向次数过多的解决方法。

阅读更多 »
谷歌字体

2020年最新解决谷歌google不能访问造成wordpress打开缓慢问题的解决方案

2020年最新解决谷歌google不能访问造成wordpress打开缓慢问题的解决方案是什么?阿里云北京分销中心研发专家为您分享解决方法。概括地说就是本地化、替换cdn服务器公共库两种最可靠的解决方法。wordpress有些地方在调用google提供的服务,当谷歌不能访问的时候,会拖垮wordpress的下载速度。我们通过修改这几处地方来实现脱离google。

阅读更多 »
混合云 云企业网

同地域不同阿里云账号的ECS云服务器能否实现内网互通?

同地域不同阿里云账号的ECS云服务器能否实现内网互通?在使用阿里云服务器时,我们可能注册了多个阿里云账号,并需要将不同阿里云账号里的服务器实现内网互联,那么有什么方法来实现呢?安全组规则放行、VPN创建IPSEC连接或者云企业网,哪个更合适?有什么区别呢?

阅读更多 »