备份服务器

备份服务器

功能 :

  1. 对网站数据进行备份 防止数据丢失或误删
  2. 可以对网站服务器数据进行 对比分析
  3. 对网站数据进行统一管理 web服务集群 web日志文件

安全 :(中石油 两地三中心)

  1. 同一机房多个备份服务器
  2. 不同机房要有多太备份服务器
  3. 不同地理位置要有多个备份服务器

存储那些数据 :

  1. 内部人员产生数据 : 脚本文件 代码信息 配置文件 数据库文件 日志文件 (定时任务进行备份)
  2. 外部人员产生的数据 : 图片信息 附件信息 视频信息 (试试备份)

rsync 备份数据

  1. 全量备份 : 将所有数据进行完整备份传输 传输效率低
  2. 增量备份 : 将变化的数据进行传输备份 备份传输效率高

增量备份数据原理 :

  1. 比较数据属性信息
  2. 比较数据指纹 : 生成标识 对比指纹信息 -c

rsync 使用方式

  1. 进行本地备份 和cp 使用方法相同

    rsync /etc/hosts 172.16.1.31:/tmp

  2. 远程备份文件 目录

    rsync -vrp /oldboy 172.16.1.31:/tmp

    传输目录后面有斜线传输目录下内容 无斜线时全都传过去

rsync使用格式 :

rsync 守护进程服务部署

服务端 :

  1. 确认软件是否安装 rpm -qa 命令

  2. 编写配置文件 :

    1. vim /etc/rsyncd.conf

    2. uid = rsync >>管理备份目录的属主信息

    3. gid = rsync>>管理备份目录的属组信息

    4. prot = 873>>指定rsync守护进场服务端口信息 默认873

    5. fake super = yes >> 让指定虚拟用户伪装长超级管理员用户来强行修改文件属组属主权限信息

    6. use chroot = yes>>和远程传输安全有关的参数

    7. max connections = 200 >> 设置最大连接数

    8. imeout = 300 >>连接超时

    9. pid file = /var/run/rsyncd.pid >> 记录服务进程号码文件判断服务是否开启或关闭

    10. lock file = /var/run/rsync.lock >> 锁文件 当max connetion 达到上限利用锁文件阻止新连接建立

    11. log file = /var/log/rsync.password >> 程序日志文件 (排错 详细错误日志)

    12. ignore errors >>忽略小的错误提示提升传输效率

    13. read only = false >> 设置备份目录权限为可读可写

    14. last = false

    15. hosts allow = 172.16.1.0/24 >> 设置白名单

    16. auth users = rsync_backup >> 认证用户密码文件 用户信息:密码信息

    17. [backup] >> 模块信息

    18. comment = “backup dir by oldboy” >> 模块注释信息

    19. path = /backup/ >> 指定备份目录

      uid = rsync
      gid = rsync
      port = 873
      
      fake super = yes
      
      use chroot = no
      max connections = 200
      timeout = 300
      pid file = /var/run/rsyncd.pid
      lock file = /var/run/rsync.lock
      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
      [模板]
      
  3. 创建rsync服务虚拟用户 (useradd -M -s /sbin/nologin rsync)

  4. 创建密码文件(修改文件权限600)

    echo rsync_backup:oldboy123 > /etc/rsync.password创建密码文件
    ll /etc/rsync.password检查是否常见成功
    chmod 600 /etc/rsync.password修改文件权威属主可读可写
    ll /etc/rsync.password 查看密码文件权限
    
  5. 创建备份目录 修改目录属主 和属组信息

    mkdir /backup

    chown rsync.rsync /backup

  6. 重启服务

    systemctl start rsyncd

    systemctl restart rsyncd

    systemctl enable rsyncd

客户端

  1. 测试配
rsync -avz /etc//hosts [email protected]::backup

rsync 备份原理

  1. 客户端向服务端发送传输数据的请求信息(认证用户信息 传输数据信息)

  2. 服务端该客户端发送信息接收传输信息并审核用户回复需要认证密码

  3. 客户端向服务端发送传输数据信息 发送认证密码信息

  4. 服务端向客户端发送确认信息

  5. 客户端收到确认信息 用户携带数据通过网络进行传输同时对用户身份进行转换 >rsync(配置指定)

  6. 服务端向客户端发送数据存储完毕确认将数据保持到备份目录 并确认目录权限为属主为 rsync

    修改备份数据属主属组信息 rsync用户身份修改

rsync 参数信息 :

参数名 全拼 作用
-a -–archive 归档模式参数相当于 -rlptgoD
-r -–recursive 递归传输目录
-l -–links 备份传输的软连接文件保持属性必变(只复制连接)
-L -copy-links 备份传输软连接文件保持属性不变
-p -perms 保持权限信息不变 644 755
-t -tinmes 保持文件修改时间不变
-g -group 保持文件属组信息不变
-D 保持设备文件属性信息不变
-v -verbose 显示传输数据详细过程信息
-P 传输进度信息
-exclude=PATTERN 根据指定数据信息进行排除
-exclude-from=FILE 根据指定文件进行批量赔偿数据信息
-delete 进行无差异同步传输数据
-z -compress 在传输文件时对文件进行压缩传输
-bwlimit=RATE 限制传输速率
-password-file 实现面交互传输数据信息

客户端部署 ( rsync )

创建生成密码文件 :

echo oldboy123 >/etc/rsync.password

修改文件权限 :

chmod 600 /etc/rsync.password

实现面交互传输数据

rsync -avz  /oldboy/oldboy.txt [email protected]::backup   --password-file=/etc/rsync.password 

守护进程多模块信息 :

配置 文件中创建多个模块信息

[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 服务

你可能感兴趣的:(备份服务器)