搭建备份服务意义:

  保证数据不会丢失

  便于数据进行恢复

  便于进行数据对比

备份服务实现:

  利用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 [email protected]:/etc/hosts  /backup
	拉取目录信息:
	rsync -r [email protected]:/oldboy  /backup

在backup服务器上操作:
	推送文件信息:
	rsync /etc/hosts [email protected]:/backup
	推送目录信息:
	rsync -r /oldboy [email protected]:/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  [email protected]::backup
    客户端推送备份目录信息
    rsync -avz /oldboy/  [email protected]::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 [email protected]::backup 第二个历程: 实现免交互备份数据 echo oldboy123 >/etc/rsync.password chmod 600 /etc/rsync.password rsync -avz /oldboy/ [email protected]::backup --password-file=/etc/rsync.password

  

  

  

   

02-11 17:44