云计算百科
云计算领域专业知识百科平台

自动化备份全网服务器数据平台

主机名IP地址
web01 192.168.115.156
nfs01 192.168.115.157
backup 192.168.115.158
  • Web服务器搭建部署
    验证Rsync服务能否推送成功。
    开发脚本实现打包备份、推送、校验、删除。
    配置定时任务每天0点定时推送(0时是时间的一个分割点)。
  • NFS服务器搭建部署
    验证Rsync服务能否推送成功。
    开发脚本实现打包备份、推送、校验、删除。
    配置定时任务每天0点定时推送(0时是时间的一个分隔点)。
    配置脚本和web服务器类似,过程略。
  • 搭建备份服务器
    rsync服务器搭建部署。
    开发脚本实现校验、删除、报警。
    配置实时任务每天6点实时执行。
    配置告警邮件发送平台# 环境搭建
  • web01服务器环境搭建

  • 安装Centos7.9系统,替换yum源,连接xshell
  • 关闭防火墙和selinux,设置主机名
    [root@localhost ~]# systemctl stop firewalld
    [root@localhost ~]# systemctl disable firewalld
    [root@localhost ~]# vi /etc/selinux/config
    SELINUX=disabled
    [root@localhost ~]# hostnamectl set-hostname web01
    [root@localhost ~]# reboot
  • 设置静态ip
    [root@web01 ~]#vi /etc/sysconfig/network-scripts/ifcfg-ens32
    请添加图片描述
  • [root@web01 ~]# systemctl restart network
    [root@web01 ~]# yum install vim tree tar net-tools rsync nfs-utils -y
    [root@web01 ~]# wget -O /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo
    [root@web01 ~]# yum makecac
    [root@web01 ~]# yum install nginx -y
    [root@web01 ~]# mkdir -p /www/sczl
    [root@web01 ~]# cd /www/sczl
    4. 部署网站示例
    使用xftp将web源文件上传至/www/sczl
    请添加图片描述
    [root@web01 ~]# vim /etc/nginx/nginx.conf # 修改第42行之后的路径
    42 root /www/sczl;
    [root@web01 ~]# systemctl start nginx
    [root@web01 ~]# systemctl enable nginx

    nfs服务器环境搭建

  • 安装Centos7.9系统,替换yum源,连接xshell
  • 关闭防火墙和selinux,设置主机名
    [root@localhost ~]# systemctl stop firewalld
    [root@localhost ~]# systemctl disable firewalld
    [root@localhost ~]# vi /etc/selinux/config
    SELINUX=disabled
    [root@localhost ~]# hostnamectl set-hostname nfs01
    [root@localhost ~]# reboot
  • 设置静态ip
    [root@nfs01 ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens32
    请添加图片描述
    [root@nfs01 ~]# systemctl restart network
    [root@nfs01 ~]# yum install vim tree tar net-tools rsync -y
  • 部署共享存储,nfs01为服务端,web01为客户端
  • backup服务器环境搭建

  • nfs01服务端操作
    [root@nfs01 ~]# yum install rpcbind -y
    [root@nfs01 ~]# yum install nfs-utils -y
    [root@nfs01 ~]# mkdir /nfsfile
    [root@nfs01 ~]# echo “welcome to www.openlab.com” > /nfsfile/readme
    [root@nfs01 ~]# chmod -Rf 777 /nfsfile
    [root@nfs01 ~]# vim /etc/exports # 编辑nfs配置文件,添加如下内容
    /nfsfile 192.168.115.0/24(rw,sync,all_squash)
    [root@nfs01 ~]# systemctl start rpcbind
    [root@nfs01 ~]# systemctl enable rpcbind
    [root@nfs01 ~]# systemctl start nfs-server
    [root@nfs01 ~]# systemctl enable nfs-server
  • web01客户端操作
    [root@web01 ~]# showmount -e 192.168.115.157
    [root@web01 ~]# mkdir /web_nfs
    [root@web01 ~]# mount -t nfs 192.168.115.157:/nfsfile /web_nfs
    [root@web01 ~]# cd /web_nfs
    [root@web01 web_nfs]# ls
    readme
    [root@web01 web_nfs]# cd ~
    [root@web01 web_nfs]# vim /etc/fstab
    192.168.115.157:/nfsfile /web_nfs nfs defaults 0 0
    [root@web01 web_nfs]# mount -a
    [root@web01 web_nfs]# df -h
    请添加图片描述
  • backup服务器环境搭建

  • 安装Centos7.9系统,替换yum源,连接xshell,过程略

  • 关闭防火墙和selinux,设置主机名
    [root@localhost ~]# systemctl stop firewalld
    [root@localhost ~]# systemctl disable firewalld
    [root@localhost ~]# vi /etc/selinux/config
    SELINUX=disabled
    [root@localhost ~]# hostnamectl set-hostname backup
    [root@localhost ~]# reboot

  • 设置静态ip
    请添加图片描述
    [root@backup ~]# systemctl restart network
    [root@backup ~]# yum install vim tree tar net-tools rsync mailx -y

  • 修改rsync配置文件
    [root@backup ~]# vim /etc/rsyncd.conf

  • 根据配置文件设置
    [root@backup ~]# useradd -M -s /sbin/nologin rsync
    [root@backup ~]# mkdir /backup
    [root@backup ~]# chown -R rsync /backup
    [root@backup ~]# systemctl enable –now rsyncd
    [root@backup ~]# ps -ef | grep rsync
    在这里插入图片描述
    [root@backup ~]# echo “rsync:rsync123” > /etc/rsync.password
    [root@backup ~]# chmod 600 /etc/rsync.password

  • 配置备份脚本

    配置web01客户端本地备份脚本

  • web01客户端主机需要打包备份的内容:
    [root@web01 nginx]# tree /var/log/nginx
    [root@web01 nginx]# tree /www
    请添加图片描述
  • 编写备份web01服务器的脚本
    [root@web01 ~]# mkdir /backup
    [root@web01 ~]# mkdir -p /server/scripts
    [root@web01 ~]# vim /server/scripts/backup.sh
    请添加图片描述
    [root@web01 ~]# vim /etc/rsync.password
    rsync123 (注意:只写密码)
    [root@web01 ~]# chmod 600 /etc/rsync.password
  • 测试
    [root@web01 ~]# bash /server/scripts/backup.sh
    请添加图片描述
    [root@backup ~]# ls /backup/192.168。115.156
    请添加图片描述
  • 配置nfs01客户端本地备份脚本

  • nfs01客户端主机需要打包备份的内容
    [root@nfs01 ~]# tree /nfsfile/
    /nfsfile/
    └── readme
  • 编写备份nfs01服务器的脚本
    [root@nfs01 ~]# mkdir /backup
    [root@nfs01 ~]# mkdir -p /server/scripts
    [root@nfs01 ~]# vim /server/scripts/backup.sh
    请添加图片描述
    [root@nfs01 ~]# vim /etc/rsync.password
    rsync123 ( 注意:只写密码)
    [root@nfs01 ~]# chmod 600 /etc/rsync.password
    [root@nfs01 ~]# ls -ld /etc/rsync.password
    请添加图片描述
  • 测试
    [root@nfs01 ~]# bash /server/scripts/backup.sh
    请添加图片描述
    [root@backup ~]# ls /backup/
    请添加图片描述
  • 配置定时任务

  • web01服务器编辑定时任务,实现每天00:00定时备份本地数据,并推送到Rsync服务器上
    [root@web01 ~]# systemctl status crond
    若未安装可执行:
    [root@web01 ~]# yum install crontabs
    [root@web01 ~]# crontab -e
    请添加图片描述
    请添加图片描述
  • nfs01服务器过程同上
    请添加图片描述
  • backup服务器编写脚本,实现删除180天前的所有备份数据,但保存每周一的
    请添加图片描述
  • backup服务器配置定时任务,实现服务端180天前数据自动删除
    请添加图片描述
  • 数据传输完整性验证与监控告警

    验证数据完整性

  • backup服务端针对客户端备份时的md5指纹数据,利用MD5命令进行验证,完成数据传输过程完整性验证。
    [root@backup scripts]# vim send_mail.sh
    请添加图片描述
  • 配置邮件告警

  • 安装邮件服务
    [root@backup ~]# yum install mailx -y
  • 配置qq邮箱ssl证书
    [root@backup ~]# mkdir -p /root/.certs
    [root@backup ~]# cd /root/.certs
    [root@backup .certs]# echo -n | openssl s_client -connect smtp.qq.com:465 | sed -ne ‘/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p’ > ~/.certs/qq.crt
    [root@backup .certs]# certutil -A -n “GeoTrust SSL CA” -t “C,” -d ~/.certs -i ~/.certs/qq.crt
    [root@backup .certs]# certutil -A -n “GeoTrust Global CA” -t “C,” -d ~/.certs -i ~/.certs/qq.crt
    [root@backup .certs]# certutil -A -n “GeoTrust SSL CA – G3” -t “Pu,Pu,Pu” -d ./ -i qq.crt
  • 配置邮件服务
    [root@backup .certs]# vim /etc/mail.rc
    请添加图片描述
  • 测试邮件服务
    [root@backup ~]# echo “testmail” | mail -s “testmail” 304*******@qq.com
    [root@backup ~]# bash /server/scripts/send_mail.sh
    请添加图片描述
  • 赞(0)
    未经允许不得转载:网硕互联帮助中心 » 自动化备份全网服务器数据平台
    分享到: 更多 (0)

    评论 抢沙发

    评论前必须登录!