服务器日志备份超节省空间的思路
时间:2022-05-05
本文章向大家介绍服务器日志备份超节省空间的思路,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
这两天,监控频繁发来服务器磁盘空间 90%+的报警,打扰睡觉不说,塞得满满的总是不舒服的。刚来公司才 20 天,对于部分细节上的运维了解得还不是很到位,比如这备份机制是怎样的?于是,将几台空间老报警的服务器的文件及任务计划仔细看了下,总算是摸清楚了这新公司的重要日志的备份机制了:
由于最终存储备份的 2 台机器用的是增量同步备份,从而越来越大。而日志要留着以备查验,只好考虑做压缩备份了。
于是把日志来源服务器 A、B...N 等服务器上的 rsync 备份脚本修改如下,同步之前先做压缩(8-17 行):
#!/bin/bash
client="192.168.1.$1"
project='website'
passwordFile='./password'
src='/data/logs/resin/'
dest="accesslog@192.168.1.240::accesslog/$project/$server/"
#Desc compress the rensin's log
begin=`date +%Y-%m-%d-%H:%M`
cd $src
echo ***********Compress start at $begin**************>>compress.log
echo the file list of Compressing this time:>>compress.log
for file in `find . -name "*201[3-9]*" -type f ! -name "*.tar.gz"`;do
tar cvzf $file.tar.gz $file >>compress.log && rm -f $file
done
echo ***********Compress Completed at `date +%Y-%m-%d-%H:%M`**************>>compress.log
#rsync
cd /data/scripts/accesslog_rsync
rsync -ahrv --delete --delete-excluded --exclude='jvm-default.log*' --exclude='watchdog-manager.log*' --password-file=$passwordFile $src $dest
exit 0
压缩完成之后再进行 rsync 同步备份。修改后的备份机制如下:
写完脚本,并做好任务计划之后,我开始写脚本压缩日志来源服务器及最终备份服务器上已存在的日志文件。由于这些日志文件都是文本格式,压缩效果非常赞!体积几乎减小了十倍!
下面是一台备份目录做压缩前后的对比截图:
压缩前:264G
压缩后:30G
压缩费时:3 小时左右。
写在最后:其实这些备份方法在老公司一直都在用的,新公司一直都是由开发人员兼顾运维, 估计也没考虑那么多了吧!文中的脚本非常简单,主要分享了一个服务器日志备份的省空间思路,没啥技术含量,高手勿喷,哈哈!
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Spring MVC 工作流程简介
- 8个尽量优化你的SQL
- 记一次 Kafka Producer 性能调优实战
- Kafka 独立消费者
- 【iOS】记录iOS14以及xcode12 遇到的问题
- 如果你还在犹豫要不要入行,请先看看我的IT入坑记【技术创作101训练营】
- Session、Cookie、Token 【浅谈三者之间的那点事】
- Python 微信机器人-20行代码实现斗图功能,简单易懂,全是干货!斗图啦API调用方法
- 浅谈布隆过滤器
- Python 技术篇-获取图片GPS信息,锁定追踪图片拍摄地点、拍摄时间
- 测试工具 - Postman接口测试入门使用手册,Postman如何进行数据关联、自动更新cookies、简单编程
- 白盒测试工具 - sonar的安装、配置与使用入门手册,用sonar检查代码质量实战演示
- Chmod -R 777 / 误操作恢复教程
- 最全总结 | 聊聊 Python 数据处理全家桶(Redis篇)
- 虚拟机安装mikrotik-ROS