备份服务rsync的服务端和客户端部署

2019-06-12  本文已影响0人  古巷挂青灯
1.概念:什么是rsync服务程序
1.概念:什么是rsync服务程序
rsync - a   fast,      versatile,       remote (and local) file-copying tool
            快速的     多功能的          远程(本地的)文件拷贝工具
本地备份    tar+定时任务
远程        scp    rsync
2.搭建备份服务的意义:

保证数据不会丢失、便于数据的恢复

3.备份服务说明

a .备份工作如何完成(自动完成)
定时任务进行备份
实时同步数据备份

b. 将数据进行传输备份

4.全量和增量

全量:将所有数据都进行传输备份(效率较低 浪费时间 占用带宽)
增量:将变化数据都进行传输备份(效率快高)

增量传输备份数据原理  
以其delta-transfer算法闻名。
减少通过网络数据发送数量,利用只发送源文件和目标文件之间的差异信息,从而实现数据的增量同步复制。
比对文件是否相同:
1)MD5 利用指纹
2)根据文件属性中 修改时间 文件大小
5.特性
image.png
6.应用场景

不同服务器之间的数据备份 定时任务和rsync 全网服务
存储服务器实时备份(同步) sersync+rsync 存储实时同步解决存储的单点故障
rsync守护进程方式实现数据备份存储

7.rsync的各种姿势(模式)

预备姿势:推 拉


image.png

举例

把/etc目录推到 nfs01的/tmp下面 
rsync -av  /etc  172.16.1.31:/tmp/

#把nfs01的/etc/hostname 拉到本地/tmp下面 
rsync  -avz   172.16.1.31:/etc/hostname    /tmp/

详细部署过程:

rsync服务端:

第一个历程:确认软件是否安装

[root@backup ~]# rpm -qa rsync

rsync-3.1.2-4.el7.x86_64

[root@backup ~]# yum install rsync -y

[root@backup ~]# yum reinstall rsync -y(这个是重新下载)

第二个历程:编写rsync服务配置文件/etc/rsyncd.conf

vim  如果黏贴的东西前面有注释 那么复制完以后前面都会有注释
vi   不会出现这种情况
(补充:centos6系统上默认没有rsync配置文件,需要手动创建)

配置文件参数说明:
[root@backup ~]# cat /etc/rsyncd.conf 
#rsync_config
#created by HQ at 2017
##rsyncd.conf start##

uid = rsync    用于管理备份目录 默认用nobody
gid = rsync    用于管理备份目录 默认用nobody
port = 873     服务的默认端口号

fake super = yes centos7 centos6             不同点 提升了rsync安全性
use chroot = no                              安全相关的配置
max connections = 200                        同时允许多少个人进行连接 备份数据
timeout = 300 超时时间 当网络链路上没有数据传输时开始倒计时300秒时间一到会强行端口链路

lock file = /var/run/rsync.lock      控制并发连接数,只能是max connections参数指定的数量
pid file = /var/run/rsyncd.pid       进程号码信息放到一个文件中
                                           1)便于快速停止进程
                                           2)可以用于判断服务是否启动

log file = /var/log/rsyncd.log       日志文件
ignore errors                        忽略一些传输数据不严重问题
read only = false                    对备份目录是否设置为只读权限
list = false

hosts allow = 172.16.1.0/24           配置白名单 安全策略
hosts deny = 0.0.0.0/32               配置黑名单 安全策略
auth users = rsync_backup             指定认证用户(真正根本不存在的虚拟用户)  
secrets file = /etc/rsync.password    密码文件(用户和密码对应关系)

[backup] 模块 (变量)
comment = "backup dir by oldboy"
path = /backup                         数据传输过来默认保存在指定 /backup

第三个历程:创建rsync虚拟用户信息

[root@backup ~]# useradd -s /sbin/nologin -M rsync

第四个历程:创建备份目录 修改所有者

[root@backup ~]# mkdir -p /backup
[root@backup ~]# chown -R rsync.rsync /backup 修改权限

第五个历程:创建密码文件修改权限

[root@backup ~]# echo "rsync_backup:oldboy123" >>/etc/rsync.password
[root@backup ~]# chmod 600 /etc/rsync.password

第六个历程:启动守护进程服务

centos6:rsync --daemon

centos7:systemctl start rsyncd

systemctl is-active rsyncd.service 查看是否启动
systemctl start rsyncd.service 启动
systemctl is-active rsyncd.service
systemctl enable rsyncd.service
systemctl is-enabled rsyncd.service

检查

[root@backup ~]# ps -ef |grep rsync

root 9749 1 0 16:12 ? 00:00:00 /usr/bin/rsync --daemon --no-detach

root 9751 9490 0 16:13 pts/1 00:00:00 grep --color=auto rsync

[root@backup ~]# ss -lntup|grep rsync

tcp LISTEN 0 5 *:873 *:* users:(("rsync",pid=9749,fd=3))

tcp LISTEN 0 5 :::873 :::* users:(("rsync",pid=9749,fd=5))

第七个历程:验证

[root@backup ~]# rsync -avz /etc/hosts rsync_backup@172.16.1.41::backup

如遇到权限问题,修改属主 .属组权限,去掉fake super的注释

客户端部署

测试操作:(交互方式传输数据)

[root@backup ~]# rsync -avz /etc/hosts rsync_backup@172.16.1.41::backup

password:

实现客户端备份数据, 不需要输入密码信息 (免交互的传输数据)

01. 查看软件是否安装,并进行安装yum
02. 配置创建认证密码文件, 权限修改(600)

[root@backup ~]# echo "oldboy123" >>/etc/rsync.password
[root@backup ~]# chmod 600 /etc/rsync.password

03. 最终的确认工作


[root@backup ~]# rsync -avz /etc/hosts rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password

rsync守护进程传输数据原理

1.客户端执行rsync传输数据命令

2.服务端要对用户信息进行认证 rsync_backup

3.服务端要对用户密码进行认证 password: oldboy123 --- 查看密码文件
--password-file=/etc/rsync.password

4.客户端将数据进行上传备份

5.服务端需要更改数据文件属主 属组信息
centos6 服务端可以有能力修改文件属主和属组信息
centos7
服务端可以有能力修改文件属主和属组信息 文件属主 属组是普通用户

服务端没有能力修改文件属主和属组信息 文件属主 属组是超级用户
0 + 配置文件 fake super = yes

补充说明:属主 属组权限没有修改成功
1)配置文件 fake super = yes
2)数据没有资格向目录中进行备份
rsync.rsync /etc/hosts --- rsync -- root.root /backup

rsync参数说明
sync命令参数说明

-avz
-a            属于一个归档参数,等于直接使用 -rlptgoD 参数的效果
-r            递归备份传输数据
-l            保持链接文件属性信息
-L            将链接文件源文件信息进行备份
-p            保持普通文件属性信息(权限)
-t            保持文件时间信息不被改变(修改时间)
-g            保持文件属组信息不变
-o            保持文件属主信息不变
-D            保持设备文件属性信息
-v            显示命令执行过程
-z            传输文件时,对文件进行压缩处理
              可以使传输效率更高
              可以节省网络带宽

rsync备份服务总结
优点:

    02. 软件配置部署简单
    03. 数据传输的时候可以实现全量 或 增量备份

缺点:

01. 备份大量小文件时候,容易造成数据传输中断 传输效率不高
          将大量小文件进行打包压缩
02. 备份文件容量比较大(G)容易造成数据传输中断
          利用一些收费软件 七牛云存储
上一篇 下一篇

猜你喜欢

热点阅读