服务器数据备份解决方案

第1章 项目准备工作

1.1 基本备份要求

已知3台服务器主机名分别为:web01,backup,nfs01,主机信息如下表:

服务器说明

 

外网IP

 

内网IP

 

主机名

 

Nginx web服务器

 

10.0.0.8/24

 

172.16.1.8/24

 

web01

 

NFS存储服务器

 

10.0.0.31/24

 

172.16.1.31/24

 

nfs01

 

rsync备份服务器

 

10.0.0.41/24

 

172.16.1.41/24

 

backup

 

需求:每天晚上0点整在web服务器上打包备份系统配置文件,网站程序目录及访问日志通过rsync命令推送备份服务器backup上备份保留。
 
具体要求如下:
1)web服务器和备份服务器的备份目录都必须为/backup
2)要备份的系统配置文件包括但不限余:
  a.定时任务服务的配置文件(/var/spool/cron/root)
  b.开机自启动的配置文件(/etc/rc.local)
  c.日常脚本的目录(/server/scripts)
  d.防火墙iptables的配置文件(/etc/sysconfig/iptables)
3)web服务器站点目录为(/var/html/www)
4)Web服务器A访问日志的路径为(/app/logs)
5)Web服务器保留打包后的7天的备份数据即可(本地留存不能多于7天,因为太多硬盘会满)
6)备份服务器上,保留最近7天的备份数据,同时保留6个月内每周一的所有数据。
7)备份服务器上要安装备份数据服务器的内网IP为目录保存备份,备份的文件安装时间名字保存。
8)需要确保备份的数据尽量完整争取,在备份服务器上对备份的数据进行检查,把备份的成功及失败结果信息发给系统管理员的邮箱中。
 
1.2 简单逻辑图

服务器数据备份解决方案

1.3 解题思路
1)搭建backup服务器。
  a.搭建rsync服务
2)搭建web服务器。
  1.验证rsync服务能否推送成功。
  2.开发脚本,实现打包,备份,推送,校验,删除。
  3.配置定时任务定时推送,每天0点定时推送。
3)搭建backup服务器。
1.实现校验,删除,报警。
2.配置定时任务每天6点定时执行。
4)搭建nfs服务器。
  1.验证rsync服务能否推送成功。
  2.开发脚本,实现打包,备份,推送,校验,删除。
  3.配置定时任务定时推送,每天0点定时推送。
 
第2章 项目实施
2.1 搭建backup服务器。
2.1.1 rsync的默认配置文件是/etc/rsyncd.conf,配置文件默认是空的,需要自己编辑

[root@backup ~]# cat /etc/rsyncd.conf
#rsync_config_____________________________start
#created by linuxidc 15:01 2007-6-5
##rsyncd.conf start##
uid = rsync 
gid = rsync 
use chroot = no   
max connections = 200     
timeout = 300   
pid file = /var/run/rsyncd.pid     
lock file = /var/run/rsyncd.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]     
path = /backup     
[nfsbackup]
path = /nfsbackup
[luo]
path = /luo
ignore errors
read only = false
list = false
hosts allow = 172.16.1.0/24
#hosts deny = 0.0.0.0/32
auth users = tang
secrets file = /etc/tang
#rsync_config________________________end

2.1.2 添加用户rsync
[root@backup ~]# useradd rsync -s /sbin/nologin -M
[root@backup ~]# cat /etc/passwd|grep rsync
rsync:x:501:501::/home/rsync:/sbin/nologin

为什么用虚拟用户?
应答:文件和进程都要满足属主的要求,文件和进程的存在一定是需要用户的,也是为了安全问题。
2.1.3 根目录下添加backup目录
[root@backup ~]# mkdir -p /backup/
[root@backup ~]# chown -R rsync.rsync /backup/
[root@backup ~]# ls -ld /backup/
drwxr-xr-x 3 rsync rsync 20480 1月  18 09:51 /backup/

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/84ee371ac8a243f8f1c1d70e31926048.html