综合架构day31--备份服务章节

1.课程介绍部分

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

输出杨辉三角脚本

  $1=6
  #!/bin/bash
  for((i=1;i<=$1;i++))
  do
    for((j=$1;j>i;j--))
    do
    echo -n " "
    done
    for m in `seq 1 $i`
    do
    echo -n "* "
    done
  echo
  done
  01     *       4个空格 1个星空格
  02   *   *     1个空格 2个星空格
  03 *   *   *   0个空格 3个星空格
rsync守护进程模式备份数据原理.jpg

2.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
解释说明:
普通用户无法修改文件的属组信息

补充: 配置文件参数
fake super = yes        --- 让指定虚拟用户伪装成管理员用户, 可以强行修改文件属主属组权限信息

3.rsync命令参数说明

-a, --archive               archive mode; equals -rlptgoD (no -H,-A,-X)
                            归档模式参数; 等价于 -rlptgoD
-r, --recursive             recurse into directorie
                            递归传输目录
-l, --links                 copy symlinks as symlinks
                            备份传输软链接文件保持属性不变
-L, --copy-links            transform symlink into referent file/dir
                            备份传输软连接文件时,会将源文件内容信息进行传输备份
-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
                            保持设备文件属性信息不变  c b s
-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         实现免交互传输数据信息

补充: 客户端部署过程(rsync)
第一个里程: 创建生成密码文件
echo oldboy123 >/etc/rsync.password
chmod 600 /etc/rsync.password
第二个里程: 实现免交互传输数据 
rsync -avz  /oldboy/oldboy.txt rsync_backup@172.16.1.41::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

4.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

企业多模块应用过程:


rsync允许与组织策略详情.png
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  rsync_backup@172.16.1.41::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  rsync_backup@172.16.1.41::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

    补充: rsyncd.conf配置文件说明
    全局配置: 在模块上面配置的信息,为全局配置,会影响所有模块
    局部配置: 在模块里面配置的信息,为局部配置,只会影响指定模块

03. 守护进程模式数据无差异同步
    --delete
    rsync -avz --delete /sa_dir/ rsync_backup@172.16.1.41:/ --password-file=/etc/rsync.password
    企业应用: 保证数据同步一致  存储服务器数据  == 备份服务器数据
    PS: --delete参数,一定要慎用,容易造成误删数据

04. 守护进程模式创建子目录功能
    [root@nfs01 oldboy]# rsync -avz /etc/hosts rsync_backup@172.16.1.41::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. 守护进程模式访问策略功能
    白名单配置/黑名单配置
    参见图示

06. 守护进程模式列表功能说明 (了解)
    list = false         --- 可以实现客户端列表显示备份服务端所有模块信息
    [root@nfs01 oldboy]# rsync  rsync_backup@172.16.1.41::
    sa_backup       "sa backup dir"
    dev_backup      "dev backup dir"
    dba_backup      "dba backup dir"

5.课程知识总结

1) rsync服务传输原理
2) rsync服务命令参数
3) rsync服务企业应用
   a 多模块配置应用
   b 数据传输排除功能     局部配置/全局配置
   c 数据传输无差异同步
   d 创建子目录功能
   e 守护进程访问策略
   f 守护进程列表功能   
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,457评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,837评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,696评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,183评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,057评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,105评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,520评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,211评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,482评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,574评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,353评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,213评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,576评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,897评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,174评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,489评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,683评论 2 335

推荐阅读更多精彩内容