综合架构之备份服务rsync补充

  • 备份服务进行多模块配置
  • 备份数据进行排除备份
  • 企业备份服务创建多级目录
  • 企业备份数据访问控制
  • 企业备份数据模块列表功能
  • 企业应用无差异同步
  • 企业传输数据扩展应用

第一部分 备份服务进行多模块配置

说明:主要实现不同用户对应不同目录


1.1 具体要实现的需求

开发人员 ---dev --- /devop
运维人员 ---sa --- /sa
数据库人员 ---dba --- /dba
注意:备份目录不要冲突


1.2 具体实现的步骤

 第一个历程:修改配置文件
       [sa]
       comment = "for system admin"
       path = /sa
       [devop]
       comment = "for devop"
       path = /devop
       [dba]
       comment = "for database"
       path = /dba
   第二个历程:修改备份目录
   mkdir /{sa,dev,dba} -p      
   chown rsync.rsync /{sa,dev,dba}
   # ll -d /{sa,dev,dba}
   drwxr-xr-x  2 rsync rsync    6 Jul 15 09:09 /dba
   drwxr-xr-x 19 rsync rsync 3340 Jul 12 15:15 /devop
   drwxr-xr-x  2 rsync rsync    6 Jul 15 09:09 /sa
测试:
rsync -avz /etc/hosts [email protected]::dba --password-file=/etc/rsync.password 
sending incremental file list
hosts

sent 221 bytes  received 43 bytes  528.00 bytes/sec
total size is 356  speedup is 1.35
测试成功

1.3 扩展:将数据存储在一个目录中,区分不同数据是哪个用户存储的

oldboy用户备份的数据在备份文件中的属主、属组是自己。
oldgirl用户备份的数据在备份文件中的属主、属组也是是自己。


 修改配置:
       uid = root
       gid = root
       #fake super = yes
         chown root.root /backup/
测试:
rsync -avz /etc/hosts [email protected]::dba --password-file=/home/oldboy/rsync.password 
sending incremental file list
hosts

sent 221 bytes  received 43 bytes  528.00 bytes/sec
total size is 356  speedup is 1.35

 ps:#备份服务器中一定要有指定存储的用户存在!!!
          如果不存在会出现 文件传输会有问题
           只会显示一个用户id 
      #多个主机用户id要保持一致
       #useradd -u 1000  

第二部分 备份数据进行排除备份

2.1 环境准备

mkdir /oldboy/{a..c} -p
touch /oldboy/{a..c}/oldboy{01..03}.txt
[oldboy@localhost ~]$ tree /oldboy/
/oldboy/
├── a
│   ├── oldboy01.txt
│   ├── oldboy02.txt
│   └── oldboy03.txt
├── b
│   ├── oldboy01.txt
│   ├── oldboy02.txt
│   └── oldboy03.txt
├── c
│   ├── oldboy01.txt
│   ├── oldboy02.txt
│   └── oldboy03.txt

--exclude: 排除指定单个数据信息
--exclude-from:排除指定多个数据信息

2.2 实现排除文件或目录的需求

2.2.1 备份/oldboy整个数据,排除b目录不要同步备份 排除c目录中oldboy03.txt文件不要备份

[root@nfs01 ~]# rsync -avz /oldboy/ --exclude=b --exclude=c/oldboy03.txt [email protected]::backup --password-file=/etc/rsync.password 
       sending incremental file list
       ./
       a/
       a/oldboy01.txt
       a/oldboy02.txt
       a/oldboy03.txt
       c/
       c/oldboy01.txt
       c/oldboy02.txt

PS:--exclude指定排除数据信息,目录结构必须是相对路径,相对于传输的目录而言

2.2.2 需求02:备份/oldboy整个数据,排除b目录中01.txt 02.txt c 01 02

环境准备

vi /oldboy/exclude.txt
b/oldboy01.txt
b/oldboy02.txt
c/oldboy01.txt
c/oldboy02.txt

 [root@nfs01 ~]# rsync -avz /oldboy/ --exclude-from=/oldboy/exclude.txt [email protected]::backup --password-file=/etc/rsync.password 
       sending incremental file list
       ./
       exclude.txt
       a/
       a/oldboy01.txt
       a/oldboy02.txt
       a/oldboy03.txt
       b/
       b/oldboy03.txt
       c/
       c/oldboy03.txt

2.3.企业备份服务创建多级目录

2.3.1实现运维人员1 2 3 分别存在/da/da01 /da/da02 /da/da03

sa01 sa02 运维人员
sa01 /sa/sa01/scripts
sa02 /sa/sa02/conf


2.3.2实现需求

rsync -avz /oldboy/  [email protected]::dba/sa01/scripts/ --password-file=/etc/rsync.password
rsync -avz /oldboy/  [email protected]::dba/sa02/conf/ --password-file=/etc/rsync.password

注:如果备份的目录服务端已有的时候,则实现增量备份。


2.4.企业备份数据访问控制(一级一级创建出来的,不能一次性创建多级目录)

hosts allow = 172.16.1.0/24   --- 允许172.16.1.0网段主机存储数据  172.16.1.31  10.0.0.31
    hosts deny = 0.0.0.0/32       --- 阻止0.0.0.0地址主机存储数据

2.4.1安全策略限制的三种情况

白名单优先于黑名单


2.4.2 全局配置和局部配置(和环境变量类似)

备份服务配置文件中:全局配置 局部配置
    全局配置:在模块之上配置都是全局配置  可以影响所有模块  
    局部配置:在模块中的配置都是局部配置  可以影响指定模块
[devop]
comment = "backup dir by devop"
path = /devop
[sa]
comment后面属于局部配置,可自定义配置项
PS:局部配置优先于全局配置
    当局部变量配置黑名单,全局配置白名单的时候,优先白名单优先。

2.5 企业备份数据模块列表功能

list = false   --- 如果改为true,客户端可以列表显示服务端详细模块信息
    # rsync -avz [email protected]:: (回车)
    backup          "for system admin"
    dev             "for dev"
    dba             "for database"
PS:不安全 列表显示出来

2.6 企业应用无差异同步

--delete:保证客户端和服务端数据高度一致
注:只有守护进程有用户映射概念 其他模式都是保持属主和属组信息不变
rsync -avz --delete /null/ /dba
ll -d /dba 会看到dba的属性发生了变化,那是因为/null传输的内容保持属性不变。


2.6.1清空数据

快速清空删除目录数据:rm -f xxx
    清空数据目录:rsync -avz --delete /null  172.16.1.41:/backup
    清空数据文件:rsync -avz --delete /oldboy.txt  /backup/oldboy.txt

2.6.2 传输大的文件,如何显示传输过程 (-P)

    sending incremental file list
    500M
        524,288,000 100%  115.28MB/s    0:00:04 (xfr#1, to-chk=0/1)
    
    sent 509,967 bytes  received 43 bytes  68,001.33 bytes/sec
    total size is 524,288,000  speedup is 1,027.00

第三部分 企业传输数据扩展应用(rsync的参数的扩展)

3.1服务端端口号发生改变 --port 端口号

[root@nfs01 ~]# rsync -avzP /tmp/500M [email protected]::backup --password-file=/etc/rsync.password --port 874
       sending incremental file list
       
       sent 47 bytes  received 20 bytes  134.00 bytes/sec
       total size is 524,288,000  speedup is 7,825,194.03

3.2服务端配置文件保存路径不正确

   rsync --daemon [OPTION]...
        --address=ADDRESS       bind to the specified address            指定监听地址
        --bwlimit=RATE          limit socket I/O bandwidth               指定传输速率(错误案例)
                               例如:人人网  某一时刻带宽不足了    开发人员  --- 服务器(上传开发代码)解决方法:每个连接进行限速
        --config=FILE           specify alternate rsyncd.conf file       指定配置文件
  
         --port=PORT             listen on alternate port number          指定监听发端口       
        --log-file=FILE         override the "log file" setting
       
    [root@backup ~]# rsync --daemon --config=/tmp/rsync.conf
    [root@backup ~]# netstat -lntup|grep rsync
    tcp        0      0 0.0.0.0:874             0.0.0.0:*               LISTEN      9933/rsync          
    tcp6       0      0 :::874                  :::*                    LISTEN      9933/rsync   

第四部分 备份服务优点缺点

优点:实现增量备份数据
缺点:在同步大量小文件 容易造成数据丢失 (将目录进行压缩处理)
在同步大文件数据 容易造成数据传输中断 断点续传功能不强 FTP 数据--流媒体(视频 音频) 图片

你可能感兴趣的:(综合架构之备份服务rsync补充)