码迷,mamicode.com
首页 > 其他好文 > 详细

综合架构_Rsync备份服务

时间:2019-10-22 10:42:44      阅读:98      评论:0      收藏:0      [点我收藏+]

标签:排查   有关   端口号   基于   最大连接数   远程主机   sync   服务安装   mct   

搭建备份服务意义:

  保证数据不会丢失

  便于数据进行恢复

  便于进行数据对比

备份服务实现:

  利用rsync软件实现数据统一存储备份
  rsync --- a fast, versatile, remote (and local) file-copying tool
  快速, 多功能, 远程(和本地)文件复制
  可以实现数据全量或者增量备份:
  A主机(5G) -5G-> backup(5G) --- 全量备份
  A主机(5G+10G) -15G-> backup(5G+10G) --- 全量备份 备份数据效率比较低
  A主机(5G+10G) -10G-> backup(5G+10G) --- 增量备份 备份数据效率更高

增量备份算法:
  01. 对比文件属性信息 *

  技术图片
  02. 验证文件指纹信息

备份服务应用过程:

1.Local:本地进行数据备份 ==cp

本地备份文件:
cp 源文件  目标路径
cp /etc/hosts /tmp/
rsync /etc/hosts /tmp/
    
本地备份目录:
cp -a /oldboy  /tmp/
rsync -a /oldboy  /tmp/

2.Access via remote shell: 远程方式进行数据备份

技术图片

技术图片

技术图片

Pull: rsync [OPTION...] [USER@]HOST:SRC... [DEST]

Push: rsync [OPTION...] SRC... [USER@]HOST:DEST

在backup服务器上操作:
	拉取文件信息:
	rsync root@10.0.0.200:/etc/hosts  /backup
	拉取目录信息:
	rsync -r root@10.0.0.200:/oldboy  /backup

在backup服务器上操作:
	推送文件信息:
	rsync /etc/hosts root@10.0.0.200:/backup
	推送目录信息:
	rsync -r /oldboy root@10.0.0.200:/backup
	
	异常问题: 拉取或者推送目录信息
	目录信息后面有/    /oldboy/  表示将目录下面的内容进行远程拉取或者推送
	目录信息后面没有/  /oldboy   表示将目录本身以及目录下面的内容进行远程拉取或者推送

 Access via rsync daemon: 守护进程方式进行远程备份 

特点:

  1.免交互传输备份数据

  2.进行远程传输验证

    a.基于认证用户用户信息

    b.基于地址进行验证

  3.传输数据时进行管理控制

   远程主机Pull: rsync [OPTION...] [USER@]HOST::SRC... [DEST]

        rsync [OPTION...] rsync://[USER@]HOST[:PORT]/SRC... [DEST]
Push: rsync [OPTION...] SRC... [USER@]HOST::DEST
    客户端推送备份文件信息      
    rsync -avz /etc/hosts  rsync_backup@172.16.1.41::backup
    客户端推送备份目录信息
    rsync -avz /oldboy/  rsync_backup@172.16.1.41::backup
          
		  
    rsync [OPTION...] SRC... rsync://[USER@]HOST[:PORT]/DEST
备份服务安装部署:


服务端部署: 第一个历程: 安装软件程序 yum install -y rsync 第二个历程: 编写服务配置文件 vim /etc/rsyncd.conf uid = rsync --- 指定备份目录属主信息 ??? gid = rsync --- 指定备份目录属组信息 ??? port = 873 --- 定义服务端口号 fake super = yes --- 将虚拟用户(rsync)伪装成管理员 use chroot = no --- 安全有关参数 max connections = 200 --- 最大连接数 timeout = 300 --- 设置连接超时时间,链路上多久没有数据传输, 就会强制断开连接 pid file = /var/run/rsyncd.pid --- 表示服务处于运行状态 | 根据文件中号码杀死进程 lock file = /var/run/rsync.lock --- 结合max connections控制最大的连接数 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 --- 备份目录 第三个历程: 创建用户信息(虚拟用户) useradd -M -s /sbin/nologin rsync 第四个历程: 创建密码文件 echo "rsync_backup:oldboy123" >/etc/rsync.password chmod 600 /etc/rsync.password 第五个历程: 创建备份数据目录 mkdir /backup chown rsync.rsync /backup/ ??? 第六个历程: 启动服务程序 systemctl start rsyncd systemctl enable rsyncd 客户端部署: 第一个历程: 进行备份数据测试 rsync -avz /etc/hosts rsync_backup@172.16.1.41::backup 第二个历程: 实现免交互备份数据 echo oldboy123 >/etc/rsync.password chmod 600 /etc/rsync.password rsync -avz /oldboy/ rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password  

  

  

rsyncs守护进程数据备份原理:

  1.执行传输命令,建立网络连接

  2.进行用户认证过程 用户名rsync_backup 密码 ******

  3.用户身份转换    任意用户 -----> rsync

   确保备份目录属主和属组     rsync

  4.文件保存到备份目录中     利用rsync用户将文件属性和属主进行修改

   文件属主和属组变为rsync 将rsync伪装成一个超级管理员 fack super 

综合架构_Rsync备份服务

标签:排查   有关   端口号   基于   最大连接数   远程主机   sync   服务安装   mct   

原文地址:https://www.cnblogs.com/zhanghongqi/p/11718203.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!