传统运维 - 服务器日志备份方案
2019-10-24
- 场景
- 每天备份服务器日志至阿里云 oss
- 每天备份服务器日志至自建机房
- 从自建机房 push 部分日志至 hdfs
- 备份音视频文件至自建机房(永久保留)
- 使用 Jenkins 实现
- 使用阿里云内网同步所需备份的应用日志至 jenkins 服务器的
/opt/arch/${日期}
- 当前 jenkins 分 master 与 slave
- 所有日志相关操作全部 slave 操作。
- 地址
${jenkins_domain}/job/crontab-ops/job/arch/
- job 命名规则
- GitLab 的组名-项目名
- 处理日志的 job
${jenkins_domain}/job/crontab-ops/job/arch/job/oss/job/put-file-to-oss/
- 同步 jenkins 服务器上的/opt/arch 至 oss 并清理已上传的文件
- oss
- 服务器用户 qinming
- jenkins-slave 挂载 /oss/hf-ops-qinming/
- su - qinming -c "ossfs hf-ops /oss/hf-ops-qinming -ourl=http://oss-cn-hangzhou-internal.aliyuncs.com"
- hadoop 目录
- 大数据部门需要分析的日志
- job 时间尽量 1 点前
- 其他备份 job
- 运行时间 3 点以后
- 使用阿里云内网同步所需备份的应用日志至 jenkins 服务器的
- 5 楼机房备份机(192.168.0.242)
- 服务器用户 bigdata
- crontab
- /opt/bin/new-hadoop/rsync-arch.sh
- 拉取 jenkins-slave 上/opt/arch/
${日期}
的日志
- 拉取 jenkins-slave 上/opt/arch/
- /bin/bash /opt/bin/new-hadoop/push-log-to-hdfs.sh -p /original_log/hfjy/website/domain/hf100 -r '.*/access.hf100.-[0-9]+' -d 1
- push 所需日志至 hdfs
- /opt/bin/new-hadoop/rsync-arch.sh
- 注意点
- 1、应用服务器生成日志时间
- 如 log4j 机制,则需在 jenkins 上建 job,每天 00:00 模拟用户访问
${jenkins_domain}/job/crontab-ops/job/rotate/job/study-xue.gateway.learn/
- 可联系开发增加接口
- /log/LogUpdate/update
- 如新增日志,则加入至改接口
- 如果该应用下的日志 00:00 肯定有访问,则可不需要。
- 如 log4j 机制,则需在 jenkins 上建 job,每天 00:00 模拟用户访问
- 2、PHP 服务,自建脚本的压缩与清理机制。
- 3、整理当前所有日志的轮转规则,如不满足日志规则,则联系开发修改。
- 需要压缩。
- 文件名需要日期。
- 1、应用服务器生成日志时间