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

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

项目背景知识

总体需求
复制代码
   某企业里有一台Web服务器,里面的数据很重要,但是如果硬盘坏了数据就会丢失,现在领导要求把数据做备份,这样Web服务器数据丢失在可以进行恢复。
 要求如下:
	1.每天00点整在Web服务器上按日期打包备份系统配置文件、网站程序目录及访问日志文件。
	2.通过rsync命令推送到备份服务器上保存。
	3.备份服务器定时清除旧记录。
	4.搭建邮件告警平台。
备份需求
复制代码
	1.所有服务器的备份目录必须都为/backup。
	2.要备份的系统配置文件包括但不限于:
	3.定时任务服务的配置文件(/var/spool/cron/root) (适合Web和NFS服务器)。
	4.开机自启动的配置文件(/etc/rc.local) (适合Web和NFS服务器)。
	5.日常脚本的目录 (/server/scripts)。
Web服务器要求
复制代码
	1.Web站点目录假定为/var/html/www,如果没有,可以先模拟创建。
	2.Web服务器访问日志路径假定为/app/logs,如果没有,可以先模拟创建。
	3.Web服务器本地保留打包后的7天备份数据即可(本地留存不能多于7天,因为数据太多硬盘会满)。
备份服务器要求
复制代码
	1.保留最近7天所有备份数据,保留6个月内每周一的所有数据副本。
	2.要按照备份数据服务器内网IP为目录名称,备份的文件按照时间、名称为文件名称。
	3.需要确保备份的数据尽量完整准确,在备份服务器上对备份的数据是否完整进行检查。
	4.备份服务器每天早晨8:00把备份成功或失败结果信息发送到系统管理员邮箱里。
项目环境
项目拓扑
软硬件环境

!!! Centos7.9的iso下载链接:https://mirrors.aliyun.com/centos/7.9.2009/isos/x86_64/CentOS-7-x86_64-

DVD-2207-02.iso

项目实施步骤:

1.环境搭建

1.1web01服务器环境搭建
1.1.1.安装Centos7.9系统,替换yum源,连接xshell,过程略
1.1.2.关闭防火墙和selinux,设置主机名




1.1.3.设置静态ip


重新启动
1.1.4.安装所有软件
1.1.5.部署网站




1.1.6.配置nginx文件



如果显示wget命令报错,需要先安装wget
重启nginx之后,到浏览器输入web01ip地址测试网站是否搭建成功。

到此,web01服务器搭建完成。

1.2.nfs01服务器环境搭建
1.2.1.安装Centos7.9系统,替换yum源,连接xshell,过程略
1.2.2.关闭防火墙和s!elinux,设置主机名




1.2.3.设置静态ip



1.2.4.安装必备软件
1.2.5.部署共享存储,nfs01为服务端,web01为客户端
1.2.5.1. 在nfs01服务端操作





1.2.5.2. web01客户端操作
永久挂载


到此,nfs01服务器搭建完成。
1.3 backup服务器环境搭建
1.3.1.安装Centos7.9系统,替换yum源,连接xshell,过程略
1.3.2.关闭防火墙和selinux,设置主机名




1.3.3.设置静态ip




1.3.4. 安装需要的软件
1.3.5. 修改rsync配置文件


1.3.6. 根据配置文件设置
1.3.6.1 创建rsync账户及共享目录并修改目录属主为rsync
1.3.6.2 开机并启动服务
1.3.6.3 创建rsync虚拟账户名和密码,并赋予密码文件600权限
1.4 配置web01客户端本地备份脚本
1.4.1. web01客户端主机需要打包备份的内容:
1.4.2. 编写备份web01服务器的脚本


客户端建立认证文件的密码



测试
1.5 配置nfs01客户端本地备份脚本
1.5.1. nfs01客户端主机需要打包备份的内容:
1.5.2.编写备份nfs01服务器的脚本



测试:在backup备份服务器中可以看到推送的数据
1.6 配置定时任务
1.6.1. web01服务器编辑定时任务,实现每天00:00定时备份本地数据,并推送到Rsync服务器上
1.6.1.1 查看crond服务状态,默认已安装
注意若未安装可执行:

root@web01 \~\]# yum install crontabs ###### 1.6.1.2 编辑定时任务 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/22052d9a0c294224b6fd2faa1593f1fa.png) ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/3bc40cbe23e148019de520669e71437b.png) ###### 若出现定时任务如下信息不用处理: no crontab for root - using an empty one crontab: installing new crontab ###### nfs01服务器过程同上 ###### backup服务器编写脚本,实现删除180天前的所有备份数据,但保存每周一的 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/9bc2c55ecfe9406db528583166d8153c.png) ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/b68062404dea477db9632935aa6f42c7.png) ###### 1.6.1.3 backup服务器配置定时任务,实现服务端180天前数据自动删除 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/63a3d59f8a5b40c2844c31c27850b19f.png) ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/98afe53894ae47a0a35565a786f91580.png) ##### 1.7 数据传输完整性验证与监控告警 ###### 1.7.1. 验证数据完整性 ###### backup服务端针对客户端备份时的md5指纹数据,利用MD5命令进行验证,完成数据传输过程完整性验证。 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/bc5e8dd3a74a4b0a97d48944aa0da158.png) ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/0302fc0420894fc783ef487fd5d8ad03.png) ##### 1.8 配置邮件告警 ###### 1.8.1. 安装邮件服务 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/e53832b606954f6db82985088d75d550.png) ###### 1.8.2.配置qq邮箱ssl证书 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/8d9b1983ea6c478db5506bac3e66af4f.png) ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/dacee83fbfd14981b81ec43bb01fcc5c.png) ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/9e71373fb747479a835c029693ed960d.png) ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/cff050eb5b494aa3a721e5d419cd6604.png) ###### 1.8.3. 配置邮件服务 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/f5cd61ab548a4ab49bd0f01735158dcf.png) ###### 在最后一行添加如下内容 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/85f4034a1250470492f6773a3fba8b50.png) ###### 1.8.4. 测试邮件服务 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/e142e386263a42a583468b268aae7bb7.png) ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/ece3680397f140de8c5e11f23799b86b.png) ##### 项目完成!

相关推荐
前端市界21 分钟前
用 React 手搓一个 3D 翻页书籍组件,呼吸海浪式翻页,交互体验带感!
前端·架构·github
郝学胜-神的一滴28 分钟前
深入浅出:使用Linux系统函数构建高性能TCP服务器
linux·服务器·开发语言·网络·c++·tcp/ip·程序人生
happyprince31 分钟前
2026年02月07日热门github项目
github
Doro再努力41 分钟前
【Linux操作系统12】Git版本控制与GDB调试:从入门到实践
linux·运维·服务器·git·vim
Lsir10110_1 小时前
【Linux】进程信号(上半)
linux·运维·服务器
开开心心就好2 小时前
发票合并打印工具,多页布局设置实时预览
linux·运维·服务器·windows·pdf·harmonyos·1024程序员节
CoderJia程序员甲2 小时前
GitHub 热榜项目 - 日榜(2026-02-06)
人工智能·ai·大模型·github·ai教程
css趣多多2 小时前
add组件增删改的表单处理
java·服务器·前端
L543414462 小时前
告别代码堆砌匠厂架构让你的系统吞吐量翻倍提升
大数据·人工智能·架构·自动化·rpa
Sheep Shaun2 小时前
揭开Linux的隐藏约定:你的第一个文件描述符为什么是3?
linux·服务器·ubuntu·文件系统·缓冲区