服务器上备份项目,全网备份项目解决方案实例

大规模集群全网备份案例

项目要求:

1、需要备份的文件或目录有(原则上,只要是运维人员写入或更改的数据,都需要备份):

/var/spool/cron/root /etc./rc.local /etc/sysconfig/iptables /var/www/html /app/logs

2、为了规范化,每台web服务器进行本地备份时都本分到/backup目录下

3、每台web服务器进行本地备份时,都备份到backup下以本机IP地址命名的目录中

4、打的tar包文件名中需要包含执行当天的日期

5、统一备份数据的服务器通过rsync daemon方式提供存储备份数据的目录/backup

6、由于web服务器本地存储空间有限,需要将超过7天的备份数据删除

7、为了方便的知道每次备份是否成功 我们需要做如下操作:

a.在每台web服务器上检查备份是否成功

b.在存储备份数据的服务器上检查备份数据是否推送成功,并发送邮件至管理员邮箱

8由于备份服务器空间有限 需要删除超过180天的备份数据,但每周六的备份数据需要永久保存

客户端上的配置:

#vim bak.sh

#!/bin/bash

IP=$(ifconfig eth1|awk -F "[ :]+" 'NR==2 {print $4}')

Path=/backup

if [ $(date +%w) -eq 0 ]

then

Time="week$(date +%F%w -d "-1day")"

else

Time=$(date +%F -d "-1day")

fi

mkdir $Path/$IP/ -p

cd / &&\

tar zcfh $Path/$IP/backup$Time.tar.gz var/spool/cron/root etc/rc.local etc/sysconfig/iptables var/www/html app/logs server/scripts &&\

md5sum $Path/$IP/backup$Time.tar.gz >$Path/$IP/flag_$Time.log &&\

rsync -az $Path/ rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password &&\

find /backup/ -type f -mtime +7 ( -name ".log" -o -name ".tar.gz" ) |xargs rm -f

#crontab -e

00 00 * /bin/sh bak.sh > /dev/null

备份服务器上的配置

#vim baf.sh

#!/bin/bash

IP=$(ifconfig eth1|awk -F "[ :]+" 'NR==2 {print $4}')

Path=/backup

if [ $(date +%w) -eq 0 ]

then

Time="week$(date +%F%w -d "-1day")"

else

Time=$(date +%F -d "-1day")

fi

LANG=en

find /backup -type f -name "${Time}.log"|xargs md5sum -c >>$Path/${Time}_result.log 2>&1

mail -s "$Time bak result" oldboytraining@163.com

find /backup/ -type f -mtime +180 ! -name "week_6*" |xargs rm -f

#crontab -e

00 00 * /bin/sh baf.sh > /dev/null

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值