自动化备份全网服务器数据平台项目
【项目需求】
某企业里有一台Web服务器,里面的数据很重要,但是如果硬盘坏了数据就会丢失,现在领导要求把数据做备份,这样Web服务器数据丢失在可以进行恢复
要求如下:
(1)每天00点整在Web服务器上按日期打包备份系统配置文件、网站程序目录及访问日志文件
(2)通过rsync命令推送到备份服务器上保存
(3)备份服务器定时清除旧记录
(4)搭建邮件告警平台
备份内容:
(1)定时任务服务配置文件:/var/spool/cron/root
(2)开机自启动配置文件:/etc/rc.local
(3)日常脚本目录:/server/scripts
(4)web服务网站和目录:/www/
(5)web服务器访问日志路径:
【项目环境】
1.项目拓扑结构
2.软硬件环境清单
需要3台服务器主机,主机名分别为web01、nfs01、backup
【环境搭建】
(1)Web服务器搭建部署
验证Rsync服务能否推送成功
开发脚本实现打包备份、推送、校验、删除
配置定时任务每天0点定时推送(0时是时间的一个分割点)
(2)NFS服务器搭建部署
验证Rsync服务能否推送成功。
开发脚本实现打包备份、推送、校验、删除。
配置定时任务每天0点定时推送(0时是时间的一个分隔点)。
配置脚本和web服务器类似,过程略。
(3)搭建备份服务器
rsync服务器搭建部署。
开发脚本实现校验、删除、报警。
配置实时任务每天6点实时执行。
配置告警邮件发送平台
具体流程如下:
1.创建虚拟机
2.三台虚拟机同时连接xshell
3.环境搭建
3.1web01服务器环境搭建
(1)替换yum源
(2)修改主机名
(3)关闭防火墙
(4)关闭selinx
(5)设置静态ip
(6)安装所需软件
3.2nfs01服务器环境搭建
步骤同上述web01服务器环境搭建相同
安装所需软件
3.3backup服务器环境搭建
步骤同上述web01服务器环境搭建相同
安装所需软件
4.web01端部署网站
4.1下载EPEL仓库配置文件
4.2安装nginx
4.3创建存放网站目录/www,通过xftp将网站文件移至linux/www下
4.4编辑nginx配置文件
4.5重启nginx服务
4.6测试
5.nfs01端部署共享存储
5.1安装nfs-utils、rpcbind
5.2创建共享目录、修改目录权限为777
5.3编辑nfs配置文件
5.4启动rpcbind、nfs服务
5.5测试-定位web01客户端-查看nfs01服务端共享的目录
5.6创建挂载目录/web_nfs
5.7将nfs01端共享目录挂载到客户端/web_nfs
5.8设置永久挂载
6.定位backup端
6.1编辑rsync配置文件
6.2根据配置文件设置
6.2.1创建rsync账户
6.2.2创建备份目录/backup并设置目录属主为rsync
6.2.3启动rsync服务并设置开机启动
6.2.4查看rsync进程
6.2.5创建rsync账户的密码文件并赋予权限为600
(服务端密码验证文件格式为账户:账户密码)
7.配置备份脚本
7.1配置web01客户端本地备份脚本
(1)创建备份目录及备份web01服务器的脚本
(2)编辑备份脚本
(3)客户端创建认证的密码文件并修改权限为600
(4)执行脚本
7.2配置nfs01端本地备份脚本
(1)创建备份目录及备份nfs01服务器的脚本
(2)客户端创建认证的密码文件并修改权限为600
(3)执行脚本
8.配置定时任务
web01服务器编辑定时任务,实现每天00:00定时备份本地数据,并推送到Rsync服务器上
8.1web01端编辑定时任务
8.2nfs01、backup端编辑定时任务
8.3backup服务端编写脚本,实现删除180天前的所有备份数据,但保存每周一的
9.数据传输完整性验证与监控告警
9.1验证数据完整性
backup服务端针对客户端备份时的md5指纹数据,利用MD5命令进行验证,完成数据传输过程完整性验证。