当青龙容器出现磁盘空间不足时,会导致服务异常。本教程详细介绍如何诊断和清理青龙容器的磁盘空间。

青龙容器磁盘空间清理完整教程
4 mins
800 words
Loading views
K8s

第一步:进入青龙容器h2

# 使用 kubectl 进入青龙容器
kubectl exec -it qinglong-0 -- bash

作用:通过 Kubernetes 命令行工具连接到名为 qinglong-0 的青龙容器内部,以便执行后续的清理操作。

第二步:检查磁盘使用情况h2

查看整体磁盘使用h3

df -h

作用

  • 显示所有挂载点的磁盘使用情况
  • 快速定位哪个分区空间不足
  • 确认 /ql/data 是否为问题所在

分析具体目录占用h3

du -sh /ql/data/* | sort -hr

作用

  • 详细分析 /ql/data 下各子目录的空间占用
  • 按大小排序显示,便于识别主要占用空间的文件
  • 为针对性清理提供依据

第三步:执行针对性清理h2

1. 清理日志文件h3

# 清理普通日志文件
rm -rf /ql/logs/*.log
rm -rf /ql/logs/*.gz
# 清理数据目录下的日志
rm -rf /ql/data/log/*
find /ql/data/log -name "*.log" -type f -mtime +7 -delete

作用

  • 删除日志文件释放空间
  • -mtime +7 参数只删除7天前的旧日志,保留近期日志
  • 日志文件通常占用大量空间且可安全删除

2. 清理依赖缓存h3

rm -rf /ql/data/dep_cache/*

作用

  • 删除青龙的依赖包缓存
  • 这些缓存可以安全删除,青龙会在需要时重新下载
  • 通常占用数百MB空间

3. 清理临时文件h3

rm -rf /ql/tmp/*
rm -rf /ql/scripts/*.log

作用

  • 清理临时文件和脚本日志
  • 这些文件对系统运行不是必需的
  • 定期清理可防止空间被无效占用

4. 清理系统日志h3

rm -rf /ql/data/syslog/*

作用

  • 清理系统运行日志
  • 这些日志主要用于故障排查,日常可清理

第四步:验证清理效果h2

再次检查磁盘空间h3

df -h

作用

  • 确认清理操作是否有效释放空间
  • 验证 /ql/data 分区的可用空间是否增加

第五步:重启服务h2

重启青龙服务h3

pm2 restart all

作用

  • 重启所有青龙进程
  • 确保清理后服务正常运行
  • 重新加载配置和依赖

第六步:设置自动清理(可选)h2

创建定时清理任务h3

在青龙面板中添加以下定时任务:

# 每周一凌晨2点清理依赖缓存和旧日志
0 2 * * 1 rm -rf /ql/data/dep_cache/* && find /ql/data/log -name "*.log" -mtime +7 -delete
# 每月1号凌晨3点清理系统日志
0 3 1 * * rm -rf /ql/data/syslog/*

作用

  • 自动化清理过程,防止空间再次不足
  • 定期维护,保持系统健康运行
  • 减少手动干预需求

注意事项h2

  1. 备份重要数据:在执行清理前,确保重要配置和脚本已备份
  2. 谨慎操作:确认删除的文件确实可以清理,避免误删重要数据
  3. 监控效果:清理后观察服务运行状态,确保正常
  4. 定期检查:建议每月检查一次磁盘使用情况

故障排查h2

如果清理后服务仍不正常:

# 检查服务状态
pm2 status
# 查看最新日志
pm2 logs

通过以上步骤,可以有效管理和维护青龙容器的磁盘空间,确保服务稳定运行。


Author: Gem
Post: 青龙容器磁盘空间清理完整教程