首页主机资讯Ubuntu Jenkins怎样优化磁盘使用

Ubuntu Jenkins怎样优化磁盘使用

时间2026-01-16 16:29:04发布访客分类主机资讯浏览373
导读:Ubuntu 上 Jenkins 磁盘使用优化实操指南 一 定位大目录与主要占用 查看整体占用:sudo du -sh /var/lib/jenkins;逐层下钻定位大目录:sudo du -sh /var/lib/jenkins/* |...

Ubuntu 上 Jenkins 磁盘使用优化实操指南

一 定位大目录与主要占用

  • 查看整体占用:sudo du -sh /var/lib/jenkins;逐层下钻定位大目录:sudo du -sh /var/lib/jenkins/* | sort -h。Jenkins 常见的大目录包括:jobs(每个任务的配置与构建记录)、workspace(检出代码与构建中间产物)、以及使用 Docker 时宿主机上的 overlay2(镜像层)。优先从这些路径入手清理与迁移。

二 配置构建保留策略

  • 在“系统管理 → 系统配置 → 全局构建丢弃策略”设置全局默认,再在每个 Job → Configure → General 勾选“丢弃旧的构建”,建议策略:
    • 保留最近 10 个构建或 30 天内构建(二选一满足即清理)。
    • 单独设置制品保留:如“Days to keep artifacts / Max # of artifacts to keep”,避免制品长期堆积。
    • 作用范围:仅对“构建产物与日志”有效,不会删除工作区未纳入制品的文件,需配合工作区清理策略使用。

三 清理工作区与归档制品

  • 使用 Workspace Cleanup 插件,在构建前后按“Include/Exclude 模式”删除未纳入制品的文件(如 node_modulestargetbuilddist.gradle/.m2 等),避免工作区无限增长。
  • 在 Job 配置中启用“在构建后清理工作区”(Delete workspace before build starts / after build ends),确保每次构建在干净环境中运行,减少残留。
  • 定期清理已归档但不再需要的制品(结合第二点的“制品保留策略”),避免 ${ JENKINS_HOME} /jobs/< JOB> /builds/ 与制品目录长期膨胀。

四 迁移大目录到独立磁盘并优化存储布局

  • 迁移 JENKINS_HOME:将 ${ JENKINS_HOME} 指向更大磁盘(如 /data/jenkins),可通过设置系统环境变量 JENKINS_HOME 或编辑 /etc/default/jenkins 中的 JENKINS_HOME 实现平滑切换(注意权限与 SELinux/AppArmor 策略)。
  • 分离工作区与构建记录:在“系统管理 → 系统配置 → 高级”中分别设置“工作空间根目录”与“构建记录根目录”到其他磁盘,避免单盘成为瓶颈。
  • 若使用 Docker 构建:将 Docker 的根目录(如 /var/lib/docker)迁移到大盘(通过修改 /etc/docker/daemon.json"data-root"),并定期清理无用容器、镜像、卷与日志,防止 overlay2 占满磁盘。

五 日常维护与自动化建议

  • 设置构建超时:在 Job 配置中启用“构建超时”(如 30 分钟),防止挂起任务持续占用磁盘与资源。
  • 限制并发与弹性扩容:在“系统管理 → 节点与云 → 配置”限制 Master 并发,使用 Agent/代理节点分担构建,减少 Master 磁盘与 I/O 压力。
  • 精简插件与定期更新:仅保留必要插件,及时更新;减少因插件历史数据与缓存带来的额外占用。
  • 例行巡检与告警:每周巡检 ${ JENKINS_HOME} 与 Docker 使用情况,结合监控(如磁盘使用率阈值告警)与定时任务执行清理脚本,形成闭环治理。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Ubuntu Jenkins怎样优化磁盘使用
本文地址: https://pptw.com/jishu/781619.html
ubuntu虚拟机跨平台兼容性探讨 ubuntu虚拟机启动速度提升方法

游客 回复需填写必要信息