05.08 全网备份项目说明

第一章 全网备份项目介绍说明

将全网架构中所有服务器上重要数据进行汇总备份保存!

   自动化:数据信息的自动备份
   规范化:避免备份数据出错

第二章 全网备份项目实施过程

1. 规划定义好备份服务器

   部署rsync备份服务(采用rsync守护进程方式)
   编写脚本文件管理备份数据信息
   编写定时任务执行脚本管理数据

2. 确认验证好架构服务器

   验证rsync备份服务
   编写脚本文件统一备份数据信息
   编写定时任务执行脚本备份数据

第三章 全网备份项目rsync守护进程模式部署

1. rsync服务端部署操作
2. rsync客户端验证操作


第四章 全网备份项目脚本编写

1. rsync客户端脚本编写需求
本地创建backup备份目录
将备份数据统一压缩进行保存,有软连接文件tar -h
推送备份目录数据到rsync备份服务器上
删除本地保存的7天以前的数据信息
对备份数据进行验证,加上指纹信息 md5sum -c 客户端传输过来的指纹文件

2. rsync服务端脚本编写需求
验证数据完整性
将完整性验证结果,通过邮件发送给监管人员 邮箱的配置 与 发送邮件的方式(两种方式发送邮件)
发送邮件方式,利用文件方式表示邮件内容

mail -s “check data” 835868899@qq.com  </tmp/mail.txt

发送邮件,利用命令行方式表示邮件内容

# echo "系统有异常问题,请检查系统"|mail -s "异常告警" 13661086369@163.com

将180天的数据进行删除,保留每周一的数据

find /backup/ -type f -mtime +180 ! -name "*week01.tar.gz"|xargs rm -f

第五章 全网备份项目定时任务编写

rsync客户端编写定时任务
rsync服务端编写定时任务


第六章 全网备份项目部署步骤

1. 【服务端】确认rsync包是否安装

[root@backup ~]# rpm -qa rsync
rsync-3.0.6-12.el6.x86_64

[root@backup ~]# rpm -qa |egrep rsyn* --color
rsyslog-5.8.10-10.el6_6.x86_64
rsync-3.0.6-12.el6.x86_64

2. 【服务端】配置rsync软件配置文件

cat >>/etc/rsyncd.conf <<END
##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/rsync.lock
log file = /var/log/rsyncd.log
[backup]
path = /backup
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
END

配置多模块步骤:
        01:修改rsyncd.conf配置文件信息,创建多模块配置参数
        02:创建多模块指定的备份存储目录,并对备份存储目录进行授权
        03:客户端指定新创建的模块,进行测试数据传输备份

3. 【服务端】创建rsync软件进程用户

useradd -s /sbin/nologin -M rsync
id rsync

4. 【服务端】创建rsync备份目录/授权rsync用户管理备份目录

[root@backup ~]# mkdir /backup -p
[root@backup ~]# ll -d /backup/
drwxr-xr-x 2 root root 4096 May  4 12:00 /backup/
[root@backup ~]# # 修改备份目录权限
[root@backup ~]# chown -R rsync.rsync /backup/
[root@backup ~]# ll -d /backup/
drwxr-xr-x 2 rsync rsync 4096 May  4 12:00 /backup/

5. 【服务端】创建认证用户密码文件

[root@backup ~]# # 创建认证用户密码文件
[root@backup ~]# echo "rsync_backup:123456" >/etc/rsync.password
[root@backup ~]# cat /etc/rsync.password
rsync_backup:123456
[root@backup ~]# chmod 600 /etc/rsync.password
[root@backup ~]# ll /etc/rsync.password
-rw------- 1 root root 20 May  4 12:04 /etc/rsync.password

6. 【服务端】启动rsync守护进程服务

rsync --daemon

7. 【服务端】Rsync开机自启动

**方法1利用/etc/rc.local 开机自启动文件**
[root@backup ~]# echo "rsync --daemon" >>/etc/rc.local 
[root@backup ~]# tail -2 /etc/rc.local 
# rsync boot info
rsync --daemon

**方法2编写脚本文件**
编写出脚本文件,可以利用rsync --daemon启动命令
将编写脚本文件,放置到/etc/init.d/ 目录下面
脚本内容信息要添加 # chkconfig: 2345 55 25
授予脚本执行权限
添加到chkconfig启动管理服务列表中

**方法3 xinetd自启动rsync服务 添加到chkconfig启动管理服务列表中
修改配置文件,让xinetd管理rsync服务**
[root@backup ~]# vim /etc/xinetd.d/rsync 
# default: off
# description: The rsync server is a good addition to an ftp server, as it \
#       allows crc checksumming etc.
service rsync
{
        disable = no
        flags           = IPv6
        socket_type     = stream
        wait            = no
        user            = root
        server          = /usr/bin/rsync
        server_args     = --daemon
        log_on_failure  += USERID

8. 【客户端】确认rsync包是否安装

[root@backup ~]# rpm -qa rsync
rsync-3.0.6-12.el6.x86_64

[root@backup ~]# rpm -qa |egrep rsyn* --color
rsyslog-5.8.10-10.el6_6.x86_64
rsync-3.0.6-12.el6.x86_64

9. 【客户端】创建rsync备份目录/backup

[root@nfs01 ~]# mkdir -p /backup
[root@nfs01 ~]# ll /backup/
total 0

10. 【客户端】创建rsync密码认证文件 执行非交互免密操作

[root@nfs01 ~]# echo "123456" >/etc/rsync.password
[root@nfs01 ~]# cat /etc/rsync.password
123456
[root@nfs01 backup]# chmod 600 /etc/rsync.password
[root@nfs01 backup]# ll /etc/rsync.password
-rw------- 1 root root 7 May  8 16:49 /etc/rsync.password

11. 【客户端】测试向服务端推送是否成功

[root@nfs01 backup]# rsync -avzP /backup/ rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password 
sending incremental file list
./
1.txt
           0 100%    0.00kB/s    0:00:00 (xfer#1, to-check=0/2)

sent 75 bytes  received 30 bytes  70.00 bytes/sec
total size is 0  speedup is 0.00

[root@backup backup]# ll
total 0
-rw-r--r-- 1 rsync rsync 0 May  8 16:51 1.txt

12. 【客户端】编写脚本打包备份文件、指纹验证文件、推送服务端、清理7天前的备份文件

[root@nfs01 scripts]# vim backup_nfs.sh 
#!/bin/bash
. /etc/init.d/functions

host_Ip=$(hostname -I |awk '{print $2}')
date_Info=$(date +%F_week%w)
finger_Path=/backup/172.16.1.31/

#Create file directory
mkdir /var/html/www -p
mkdir /app/logs/ -p
action "NO.1:  Create file directory" /bin/true

#tar file
cd / && mkdir -p /backup/$host_Ip
tar -zchf /backup/$host_Ip/sysfile_${date_Info}.tar.gz  ./var/spool/cron/root ./etc/rc.local ./se
rver/scripts ./etc/sysconfig/iptables
action "NO.2:  Tar sysfile_${date_Info}.tar.gz" /bin/true

tar -zchf /backup/$host_Ip/www_${date_Info}.tar.gz ./var/html/www
action "NO.3:  Tar www_${date_Info}.tar.gz" /bin/true

tar -zchf /backup/$host_Ip/logs_${date_Info}.tar.gz ./app/logs/
action "NO.4:  Tar logs_${date_Info}.tar.gz" /bin/true

#Create finger
find ${finger_Path} -type f -name "*.tar.gz" |xargs md5sum >/${finger_Path}/finger_${date_Info}.t
xt
action "NO.5:  Create finger_${date_Info}.txt" /bin/true

# rsync push data to rsync_server
rsync -az /backup/ rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password
action "NO.6:  rsync push to rsync_server" /bin/true

# clear data info for 7 day ago
find ${finger_Path} -type f -mtime +7 -name "*.tar.gz" |xargs rm -f
find ${finger_Path} -type f -mtime +7 -name "fin*" |xargs rm -f
action "NO.7:  clear data info for 7 day ago" /bin/true

13. 【服务端】脚本验证和清理文件

[root@backup 172.16.1.31]# vim  /server/scripts/backup_nfs.sh
#!/bin/bash
date_Info=$(date +%F_week%w)

#Certification finger
find /backup/172.16.1.31/ -type f -name "finger_${date_Info}*" |xargs md5sum -c >/tmp/mail.txt
mail -s "【NFS】服务器定期备份报告" guoqunchao@yeah.net </tmp/mail.txt

#clear file
find /backup/ -type f -mtime +180 -name "*week01.tar.gz" |xargs rm -f

14. 【客户端】加入定时任务

[root@nfs01 backup]# crontab -e
#rsync nfs file to rsync
00 00 * * * /bin/bash /server/scripts/backup_nfs.sh  >/dev/null 2>&1

15. 【服务端】加入定时任务

[root@backup 172.16.1.31]# crontab -e
#backup_nfs file clear
00 06 * * * /bin/bash /server/scripts/backup_nfs.sh >/dev/null 2>&1

第七章 邮箱服务设置

1. 修改/etc/mail.rc最后一行加入

vim /etc/mail.rc
set from=guoqunchao@yeah.net smtp=smtp.yeah.net smtp-auth-user=guoqunchao smtp-auth-password=gqc1995 smtp-auth=login

   from是发送的邮件地址
   smtp是发生的外部smtp服务器的地址
   smtp-auth-user是外部smtp服务器认证的用户名
   smtp-auth-password是外部smtp服务器认证的用户密码(授权码)
   smtp-auth是邮件认证的方式

2. 邮件配置文件配置完毕后,重启邮件服务

/etc/init.d/postfix restart
Shutting down postfix                        [ ok ]
Start postfix                                [ ok ]
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值