美文网首页
D-34-全网备份项目

D-34-全网备份项目

作者: 荆俊玮 | 来源:发表于2019-08-19 01:44 被阅读0次

    一、全网备份项目部署说明(企业版)

    第一里程:对工作任务进行确认
    笔记或录音记录
    第二里程:根据需求编写文档资料
    步骤规划、时间规划(多预留部分时间)、人员规划
    第三历程:和领导开会
    相关人员进行着急
    第四里程:根据规划完成任务
    阶段汇报实际情况
    第五里程:任务完成后项目文档总结
    项目总结会议、人员培训

    二、全网备份需求完成阶段

    1)所有服务器的备份目录必须都为/backup
    mkdir -p /backup
    2)要备份的系统配置文件包括但不限于:
    a.定时任务服务的配置文件(/var/spool/cron/root)(适合 web 和 nfs 服务器) 。
    b.开机自启动的配置文件(/etc/rc.local)(适合 web 和 nfs 服务器) 。
    c.日常脚本的目录 (/server/scripts)。
    d.防火墙 iptables 的配置文件(/etc/sysconfig/iptables)。
    在nfs01服务器
    mkdir /backup
    mkdir -p /server/scripts
    touch /etc/sysconfig/iptables
    方法一:压缩数据---绝对路径
    tar zcvhPf /backup/system_backup_(date +%F_%w/a/A).tar.gz /var/spool/cron/root /etc/rc.local /server/scripts /etc/sysconfig/iptables 方法二:压缩数据---相对路径 cd / tar zcvhf /backup/system_backup_(date +%F_%w/a/A).tar.gz ./var/spool/cron/root ./etc/rc.local ./server/scripts ./etc/sysconfig/iptables
    注意:定时任务文件必须由定时任务存在
    3)Web 服务器站点目录假定为(/var/html/www)
    在web01服务器
    mkdir -p /var/html/www
    mkdir /backup
    tar zcvhPf /backup/web_info_backup_(date +%F_%w/a/A).tar.gz /var/html/www 4)Web 服务器 A 访问日志路径假定为(/app/logs) 在web01服务器 mkdir -p /app/logs tar zcvhPf /backup/web_log_backup_(date +%F_%w/a/A).tar.gz /app/logs
    5)Web 服务器保留打包后的 7 天的备份数据即可(本地留存不能多于 7 天,因为太多硬盘会 满)
    find /backup -type f -name ".tar.gz" -mtime +7 -delete
    6)备份服务器上,保留6个月之内数据,同时保留6个月之前每周一的所有数据副本
    find /backup -type f -name "
    .tar.gz" -mtime +180 -delete
    保留周一数据信息
    方法一:根据文件名称信息进行保留
    (date +%F_%w/a/A) find /backup -type f -name "*.tar.gz" -mtime +180 ! -iname "*_1.tar.gz" -delete 方法二:将每周一的数据单独保存 find /backup -type f -iname "*_1.tar.gz"|xargs mv -t /backup_1 find /backup -type f -name "*.tar.gz" -mtime +180 -delete 7)备份服务器上要按照备份数据服务器的内网 IP 为目录保存备份,备份的文件按照时间名字保存 方法一:在备份客户端主机上的backup目录中创建由 IP地址信息的子目录 mkdir /backup/172.16.1.31(在哪个服务器上就创建哪个服务的对应私网IP地址) tar -zcvhPf /backup/172.16.1.31/system_backup_(date +%F_%w).tar.gz /var/spool/cron/root /etc/rc.local /server/scripts /etc/sysconfig/iptables
    rsync -avz /backup/ rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password
    方法二:
    rsync -avz /backup/ rsync_backup@172.16.1.41::backup/172.16.1.31/ --password-file=/etc/rsync.password
    8)需要确保备份的数据尽量完整正确,在备份服务器上对备份的数据进行检查,把备份的成功及失败结 果信息发给系统管理员邮箱中
    a.验证数据传输完整性
    第一个步骤:客户端生成文件指纹信息
    find /backup/ -type f -name "
    .tar.gz"|xargs md5sum >/backup/172.16.31/finger.txt
    第二个步骤:进行指纹对比
    find /backup/ -type f -name "*finger.txt"|xargs md5sum -c >/tmp/check_data.txt

    b.对验证结果进行邮件告诉运维人员
    linux系统发送邮件原理
    邮件发送服务客户端 --- > 邮件服务服务端 ---> QQ邮箱
    foxmail ---> QQ企业邮箱 ---> 发送邮件
    Linux postfix --->QQ邮箱 163邮箱 ---> 其他人发送邮件
    第一个里程: 配置邮箱信息: 163 QQ
    QQ:
    设置 账户 开启IMAP/SMTP服务
    授权码:qqzolqmdnyufbfde

    image.png
    163:
    设置 pop3 勾选IMAP 保存 客户授权码 开启
    授权码:
    第二里程:Linux系统中进行邮件配置
    需要哪个服务器发送邮件即在哪个服务器下配置(备份服务器)
    vim /etc/mail.rc
    set from=邮箱地址@qq.com <-- 连接邮箱名称信息
    set smtp=smtp.qq.com <-- 设置邮箱服务地址信息
    set smtp-auth-user=邮箱地址@qq.com
    set smtp-auth-password= <-- 邮箱授权密码
    set smtp-auth=login <-- 指定进行远程登录连接
    第三个里程: 重启系统邮件服务
    systemctl restart postfix.service
    第四个里程: 进行邮件发送测试
    echo oldboy63|mail -s "test_mail"***@163.com
    mail -s "test_mail" ***@163.com <要发送的内容文件路径信息
    mail -s "backup_data_notify" ***@16.com </tmp/check_data.txt

    三、全网备份脚本编写过程

    备份服务客户端脚本

    nfs01:初始化脚本

    vim  /server/scripts/backup.sh
    #!/bin/bash
    
    Backup_Dir="/backup"
    Backup_IP=$(hostname -I|awk '{print $NF}')
    
    mkdir $Backup_Dir/$Backup_IP -p
    mkdir -p /server/scripts
    touch /etc/sysconfig/iptables
    
    #01 compress data
    tar zchPf $Backup_Dir/$Backup_IP/system_backup_$(date +%F_%w).tar.gz /var/spool/cron/root /etc/rc.local /server/scripts /etc/sysconfig/iptables
    
    #02 create finger file
    find $Backup_Dir/ -type f -name "*.tar.gz"|xargs md5sum >$Backup_Dir/$Backup_IP/finger.txt
    
    #03 push date info
    rsync -az $Backup_Dir/  rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password
    
    #04 delete 7 day ago
    find $Backup_Dir/ -type f -name  "*.tar.gz"  -mtime +7 -delete
    

    web01初始化脚本
    mkdir -p /server/scripts

    vim  /server/scripts/backup.sh
    #!/bin/bash
    Backup_Dir="/backup"
    Backup_IP=$(hostname -I|awk '{print $NF}')
    
    mkdir $Backup_Dir/$Backup_IP -p
    mkdir -p /server/scripts
    touch /etc/sysconfig/iptables
    
    #01 compress data
    tar zchPf $Backup_Dir/$Backup_IP/system_backup_$(date +%F_%w).tar.gz /var/spool/cron/root /etc/rc.local /server/scripts /etc/sysconfig/iptables
    tar zchPf $Backup_Dir/$Backup_IP/web_info_backup_$(date +%F_%w).tar.gz /var/heml/www/
    tar zchPf $Backup_Dir/$Backup_IP/web_log_backup+$(date +%F_%w).tar.gz /app/logs
    
    #02 create finger file
    find $Backup_Dir/ -type f -name "*.tar.gz"|xargs md5sum >$Backup_Dir/$Backup_IP/finger.txt
    
    #03 push date info
    rsync -az $Backup_Dir/ rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password
    
    #04 delete 7 day ago
    find $Backup_Dir/ -type f -name  "*.tar.gz"  -mtime +7 -delete
    

    备份服务器服务端脚本

    mkdir -p /server/scripts

    vim  /server/scripts/backup.sh
    #!/bin/bash
    
    #01 check data info
    find /backup/ -type f -name "finger.txt"|xargs md5sum -c >/tmp/check_data.txt
    
    #02 sent notify mail
    mail -s "backup_data_notify" ***@163.com </tmp/check_data.txt
    
    #03 delete 180 day ago
    find /backup -type f -name "*.tar.gz" -mtime +180 ! -iname "*_2.tar.gz" -delete 
    

    四、编写定时任务

    客户端定时任务时间: 00:00
    服务端定时任务时间: 06:00

    相关文章

      网友评论

          本文标题:D-34-全网备份项目

          本文链接:https://www.haomeiwen.com/subject/kwtjsctx.html