day 31综合架构备份服务章节

课程介绍

1. rsync备份服务传输数据原理
2. rsync备份服务命令参数说明
3. rsync备份服务企业应用方式
4. rsync备份服务常见异常服务
5. rsync备份服务全网备份项目  上级测验

rsync守护进程模式备份数据原理

第一步:客户端向服务端发送请求传输数据信息  执行命令  有认证用户信息  传输数据信息
第二步:服务端向客户端接收到传输数据信息    审核认证用户   发送回复信息   需要认证密码
第三步:客户端向服务端 发送请求传输数据信息   发送认证密码信息
第四步:服务端向客户端发送确认信息
第五步:客户端向服务端将用户携带数据通过网络进行传输   需要对用户身份进行身份转换 转换成rsync(配置文件指定)
第六步:服务端对客户端发送的数据存储完毕确认信息  将数据保存到备份目录中   备份目录权限属主为rsync
  当数据存储完成以后将修改备份数据属主和属组信息    用rsync用户身份修改文件权限
rsync执行备份服务数据原理
错误说明:
chgrp ".hosts.Zb1kyS" (in backup) failed: Operation not permitted (1)
chgrp  change group ownership(修改数据属组信息)

[oldboy@backup ~]$ chgrp oldgirl oldboy 
chgrp: changing group of 'oldboy': Operation not permitted
[oldboy@backup ~]$ chgrp oldgirl /etc/hosts
chgrp: changing group of '/etc/hosts': Operation not permitted
解释说明:普通用户无法修改文件的属组信息

rsync命令参数说明

-a, --archive                 archive mode; equals -rlptgoD (no -H,-A,-X)
                              归档模式参数;等价于-rlptgoD
 -r, --recursive              recurse into directories
                              递归传输目录
-l, --links                   copy symlinks as symlinks
                              备份传输软链接文件保持属性不变
-p, --perms                   preserve permissions
                              保持权限信息不变  644 755
-t, --times                   preserve modification times
                              保持文件修改时间不变
 -o, --owner                  preserve owner (super-user only)
                              保持文件属主信息不变
 -g, --group                  preserve group
                              保持文件属组信息不变
 -D                           same as --devices --specials
                              保持设备文件属性信息不变
  -L, --copy-links            transform symlink into referent file/dir
                              备份传输软链接文件时,会将源文件内容信息进行传输备份   -L这个参数不包含-a
 -v, --verbose                increase verbosity
                              传输备份数据详细过程信息
  -P                          same as --partial --progress
                              传输进度信息
  --exclude=PATTERN           exclude files matching PATTERN
                              根据指定数据信息进行排除
 --exclude-from=FILE          read exclude patterns from FILE
                              根据指定文件进行批量排除数据信息
  --delete                    delete extraneous files from destination dirs
                              进行无差异同步传输数据
                              同步目录数据信息时,保证目录中数据信息一模一样
-z, --compress                compress file data during the transfer
                              在传输数据时,对文件进行压缩传输
 --bwlimit=RATE               limit socket I/O bandwidth
                              限制传输速率
 --password-file=FILE         read daemon-access password from FILE
                              实现免交互传输数据信息

rsync守护进程备份服务企业应用

守护进程模式:
  推:客户端将数据备份到备份服务器
  拉:客户端进行数据恢复 --备份服务器
    :服务端 - - 数据备份 - - 客户端(部署rsync守护进程)
Access via rsync daemon:
Pull: rsync [OPTION...] [USER@]HOST::SRC... [DEST]
      SRC:  备份服务器上模块信息
      DEST: 本地保存数据路径信息
      
      rsync [OPTION...] rsync://[USER@]HOST[:PORT]/SRC... [DEST]
Push: rsync [OPTION...] SRC... [USER@]HOST::DEST
      rsync [OPTION...] SRC... rsync://[USER@]HOST[:PORT]/DEST

企业多模块应用过程:

01.守护进程模式多模块创建
第一个里程:配置文件中创建多个模块信息
    [sa_backup]
    comment = "backup dir by oldboy"
    path = /backup/sa_dir/
    [dev_backup]
    comment = "backup dir by oldboy"
    path = /backup/dev_dir/
    [dba_backup]
    comment = "backup dir by oldboy"
    path = /backup/dba_dir/

第二个里程:确认指定模块路径是否存在/权限是否正确
第三个里程:重启rsync服务
02.守护进程模式数据排除功能
    创建测试环境: 客户端创建
    [root@nfs01 oldboy]# mkdir /oldboy/oldboy{01..03}
    [root@nfs01 oldboy]# touch /oldboy/oldboy{01..03}/{a..c}.txt
    [root@nfs01 oldboy]# tree /oldboy
    /oldboy
    ├── oldboy01
    │   ├── a.txt
    │   ├── b.txt
    │   └── c.txt
    ├── oldboy02
    │   ├── a.txt
    │   ├── b.txt
    │   └── c.txt
    └── oldboy03
        ├── a.txt
        ├── b.txt
        └── c.txt
    
    3 directories, 9 files
    
    需求01: 备份/oldboy目录数据时,将oldboy01目录进行排除,将oldboy03目录中的b.txt文件进行排除
    需求02: 备份/oldboy目录数据时,将oldboy01目录进行排除a.txt oldboy02/b.txt oldboy03/c.txt
    方法一: 利用rsync命令参数实现
    --exclude
    # rsync -avz    /oldboy/ --exclude=oldboy01/ --exclude=oldboy03/b.txt  [email protected]::sa_backup      --password-file=/etc/rsync.password
    sending incremental file list
    ./
    oldboy02/
    oldboy02/a.txt
    oldboy02/b.txt
    oldboy02/c.txt
    oldboy03/
    oldboy03/a.txt
    oldboy03/c.txt
    
    sent 420 bytes  received 134 bytes  1,108.00 bytes/sec
    total size is 12,288  speedup is 22.18
    说明: 利用--exclude排除数据信息,需要利用相对路径指定需要排除的数据,相对路径是相对于同步目录而言
    方法二: 利用rsync命令参数实现:
    --exclude-from 
    第一个里程: 编写排除数据信息文件
    [root@nfs01 oldboy]# cat execlude.txt 
    oldboy01/a.txt
    oldboy02/b.txt
    oldboy03/c.txt
    第二个里程: 利用命令参数进行排除多个数据
    [root@nfs01 oldboy]# rsync -avz    /oldboy/ --exclude-from=/oldboy/execlude.txt  [email protected]::sa_backup      --password-file=/etc/rsync.password
    sending incremental file list
    ./
    execlude.txt
    oldboy01/
    oldboy01/b.txt
    oldboy01/c.txt
    oldboy02/
    oldboy02/a.txt
    oldboy02/c.txt
    oldboy03/
    oldboy03/a.txt
    oldboy03/b.txt
    
    sent 601 bytes  received 180 bytes  1,562.00 bytes/sec
    total size is 12,333  speedup is 15.79
    方法三: 利用服务端配置文件参数
    exclude         --- 指定数据进行排除同步                   == 客户端命令参数 --exclude
    exclude from    --- 指定多个数据排除文件信息,排除多个数据  == 客户端命令参数 --exclude-from
    
    [sa_backup]
    comment = "backup dir by oldboy"
    path = /backup/sa_dir/
    exclude = oldboy01/a.txt oldboy02/b.txt

    [sa_backup]
    comment = "backup dir by oldboy"
    path = /backup/sa_dir/
    exclude from = /backup/sa_dir/execlude.txt
03. 守护进程模式数据无差异同步
    --delete
    企业应用: 保证数据同步一致  存储服务器数据  == 备份服务器数据
    PS: --delete参数,一定要慎用,容易造成误删数据
04. 守护进程模式创建子目录功能
    [root@nfs01 oldboy]# rsync -avz /etc/hosts [email protected]::sa_backup/oldboy/ --password-file=/etc/rsync.password
    sending incremental file list
    created directory oldboy
    hosts
    
    sent 219 bytes  received 72 bytes  582.00 bytes/sec
    total size is 335  speedup is 1.15
05. 守护进程模式访问策略功能
    白名单配置/黑名单配置
    参见图示
图片.png
06. 守护进程模式列表功能说明 (了解)
    list = false         --- 可以实现客户端列表显示备份服务端所有模块信息
    [root@nfs01 oldboy]# rsync  [email protected]::
    sa_backup       "sa backup dir"
    dev_backup      "dev backup dir"
    dba_backup      "dba backup dir"
补充
    补充: rsyncd.conf配置文件说明
    全局配置: 在模块上面配置的信息,为全局配置,会影响所有模块
    局部配置: 在模块里面配置的信息,为局部配置,只会影响指定模块
客户端部署过程
第一个里程:创建生成密码文件
echo oldboy123>/etc/rsync.password
chmod 600 /etc/rsync.password
第二个里程: 实现免交互传输数据 
rsync -avz  /oldboy/oldboy.txt [email protected]::backup   --password-file=/etc/rsync.password
sending incremental file list
oldboy.txt

sent 93 bytes  received 43 bytes  272.00 bytes/sec
total size is 0  speedup is 0.00

你可能感兴趣的:(day 31综合架构备份服务章节)