一、全网备份项目
网站数据需要备份
如何备份?打包压缩+定时任务
如何收集?rsync备份服务器收集备份数据(客户端推送到服务端)
1.2 项目流程
1.2.1 环境准备
角色 |
主机 |
运行服务 |
存放备份 (41) |
backup |
rsync服务端 |
生成备份 (31) |
nfs01 |
rsync客户端,其他服务 |
生成备份 (7) |
web01 |
rsync客户端,其他服务 |
….. |
|
|
1.2.2 项目步骤描述
步骤说明 |
详细内容 |
1、rsync服务端并调试 ✅ |
服务端配置 /backup/目录 |
2、rsync客户端节点配置脚本(备份) ✅ |
1备份 2推送 3清理 |
3、其他节点匹配值定时任务 ✅ |
定时运行脚本 |
4、在备份服务器上检查并发送结果邮件 ✅ |
1清理备份 2 在rsync服务端检查备份并发送邮件 |
架构流程图如下:
1.2.3 服务端配置
修改服务端的/etc/rsyncd.conf
配置文件,添加【backup】
创建backup目录和设置用户
远程调试
1.2.4 客户端备份功能
在nfs01和web01进行配置,定时打包数据文件,并上传到backup服务器
web01需要安装nfs01的设置,进行前期的rsync客户端设置
添加定时备份脚本
添加执行权限
测试执行
添加定时任务
1.2.5 服务端检查和清理
编写脚本
测试执行
查看结果和邮件
设置定时任务
1.2.6 增加MD5校验功能
md5检查多个文件
具体应用 — 客户端备份时新增MD5校验文件,并上传
具体应用 — 服务端根据MD5文件进行校验,并输出结果
检验邮件
二、存储服务(NFS)
2.1 什么是存储?
存储是用于存放数据的介质,如资源充足,推荐使用共享存储,对比图如下:
2.2 存储分类
分类 |
说明 |
硬件存储 |
硬件存储,硬盘多,使用的时候挂载即可. |
开源软件 |
普通存储NFS 分布式存储:GlusterFS,Ceph,…..FastDFS |
云产品 |
阿里云OSS(对象存储),七牛云存储,腾讯云COS |
2.3 NFS介绍
NFS是(Network File System)的简写,即网络文件系统。使用NFS可以实现在网络上与它人共享目录和文件。
NFS的工作由两个服务组合完成:
其工作原理如下图所示:
2.4 配置NFS服务
环境准备
环境 |
主机 |
|
nfs服务端 |
nfs01 10.0.0.31/172.16.1.31 |
|
nfs客户端 |
web01 10.0.0.7/172.16.1.7 |
通过挂载使用 |
服务端部署
客户端挂载
2.5 NFS相关的配置文件
nfs服务端或客户端 |
|
NFS服务端配置 |
/etc/exports(配置文件里面的) —> /var/lib/nfs/etab(当前使用的nfs服务端配置) |
NFS客户端配置 |
客户端:mount /etc/rc.local 或/etc/fstab —> /proc/mounts (当前系统的挂载情况) |
2.5.1 服务端配置
核心配置
服务端配置选项 |
说明 |
rw |
可以读写共享目录 |
ro |
只读 read only |
sync |
同步,只要用户上传,就把数据写到磁盘上. |
async |
异步,用户上传的数据,nfs先临时存放到内存中,过一段时间写入到磁盘. 并发高,数据可能丢失. |
服务端用户压缩
- NFS客户端挂载NFS服务端后,创建的文件默认属于nfsnobody,这种操作就叫用户压缩(映射).
用户压缩是通过NFS服务端的配置实现.
服务端配置选项-用户压缩系列 |
说明 |
root_squash |
如果客户端是root用户访问,则到了nfs服务端会被压缩( 默认的 ) |
no_all_squash |
如果客户端不是root用户访问,则不进行压缩(保存原始用户, 默认的 ) |
all_squash |
所有用户都进行压缩(不是太安全) |
anonuid 和 anongid |
用于指定压缩的匿名用户(默认是nfsnobody用户) anonuid=65534,anongid=65534 |
用户压缩/用户映射: NFS客户端访问NFS共享目录的时候变成了什么用户.
nfs客户端用户 nfs服务端用户
root —> nfsnoboby
图示:
2.6 永久挂载
永久挂载的方式
温馨提示:
如果配置了nfs客户端永久挂载,未来要优先启动nfs服务端
2.7 用户压缩的案例
设置/nfsdata共享目录,匿名用户为www. 客户端挂载到/upload-video/
www用户的uid,gid:1999 (服务端,客户端)
以上案例,如果客户端www的用户被删除,效果如下:
2.8 NFS优化
NFS优化: 硬件(物理服务器+nfs服务)
NFS安全优化: 客户端挂载 只能上传,无法执行.