Jenkins垃圾清理指南

ops/2025/2/27 2:04:31/

文章目录

  • 1. Jenkins是什么
  • 2. 哪些部分容易产生垃圾
  • 3. Jenkins垃圾清理方案
    • 3.1 单Job配置:自动清理旧构建
    • 3.2 全局统一清理:Slicing插件批量操作
    • 3.3 本地缓存清理
  • 4. 空间预警


1. Jenkins是什么

Jenkins是一款开源的持续集成与持续交付(CI/CD)工具,广泛用于自动化构建、测试和部署。
它通过插件化架构支持多种开发语言和工具链,能够串联代码提交、编译打包、质量检测等流程,是DevOps领域的核心组件之一。


2. 哪些部分容易产生垃圾

Jenkins在运行过程中,以下三类数据会快速占用磁盘空间:

  • 构建历史(Build History)
    每次构建生成的日志会保留在$JENKINS_HOME/jobs/[Job名称]/builds目录中,长期积累可能导致单项目占用很大空间。
    在这里插入图片描述

  • 工作空间(Workspace)
    每个Job的构建过程会在workspace目录拉取代码并生成临时文件(如编译中间文件、依赖缓存)。若未清理,可能堆积大量冗余数据。
    在这里插入图片描述


3. Jenkins垃圾清理方案

3.1 单Job配置:自动清理旧构建

在单独Job设置,防止构建历史无限增长。

  • 操作步骤
    1. 进入Job配置页面 → 勾选 “丢弃旧的构建”
    2. 设置保留策略(示例):
      • 保留最近10次构建(防止回滚需求)
      • 保留最近30天内的构建(避免长期占用空间)
    • 优点:无需插件,配置简单。
    • 缺点:需为每个Job单独设置,不适合大规模实例。

在这里插入图片描述


3.2 全局统一清理:Slicing插件批量操作

通过插件 Job Configuration Slicing,批量管理所有Job的构建保留策略。

  • 操作步骤
    1. 安装插件:
      • Jenkins管理 → 插件管理 → 搜索安装 Job Configuration Slicing
    2. 批量配置:
      • 进入 Manage Jenkins → Job Configuration Slicing
      • 选择 “Discard old builds” 策略 → 设置全局保留规则(如保留7天)。
      • 点击 “Slice” 应用至所有Job。
    • 优点:一键生效,适合数百个Job的实例。
    • 注意:需提前备份配置,避免误操作。

在这里插入图片描述


3.3 本地缓存清理

针对插件或构建工具的本地缓存,需根据项目技术栈编写清理脚本。

  • 建议:将脚本加入构建后操作(Post-build Actions),实现自动化清理。


4. 空间预警

在分布式构建环境中,Agent节点可能因内存不足导致任务失败。
建议配置Jenkins系统监控预警, 选择节点->配置
在这里插入图片描述


http://www.ppmy.cn/ops/161564.html

相关文章

直角三角堰计算公式

直角三角堰的计算公式通常用于确定流经直角三角形形状的堰的流量。河北瑾航科技遥测终端机 通过采集液位数据(模拟量、串口485/232),计算得到瞬时流量,然后通过积分进行累计算出累积量;直角三角堰的流量计算公式为: 直角三角堰 计…

第十三:路由两个注意点:

4.3. 【两个注意点】 路由组件通常存放在pages 或 views文件夹&#xff0c;一般组件通常存放在components文件夹。 通过点击导航&#xff0c;视觉效果上“消失” 了的路由组件&#xff0c;默认是被卸载掉的&#xff0c;需要的时候再去挂载。 <script setup lang"ts&q…

vsCode下载、安装、推荐插件

1. Visual Studio Code(简称 VS Code) 是Microsoft 于2015年4月发布的一款代码编辑器 2. VS Code 对前端代码有非常强大的支持&#xff0c;同时也支持其他编程语言(C、Java、Python等) 3. VS Code提供了非常强大的插件库&#xff1b; 官网&#xff1a;Visual Studio Code - …

一键部署开源DeepSeek并集成到钉钉

一键部署开源DeepSeek并集成到钉钉 简介&#xff1a; DeepSeek发布了两款先进AI模型V3和R1&#xff0c;分别适用于对话AI、内容生成及推理任务。由于官方API流量限制&#xff0c;阿里云推出了私有化部署方案&#xff0c;无需编写代码即可完成部署&#xff0c;并通过计算巢AppF…

xss-lab

xss XSS全称跨站脚本(Cross Site Scripting)&#xff0c;为避免与层叠样式表(Cascading Style Sheets, CSS)的缩写混淆&#xff0c;故缩写为XSS。这是一种将任意 Javascript 代码插入到其他Web用户页面中执行以达到攻击目的的漏洞。攻击者利用浏览器的动态展示数据功能&#x…

动态表头导出EasyExcel

在 Spring Boot 中结合 EasyExcel 实现动态表头导出&#xff08;无实体类&#xff0c;表头和字段&#xff08;前端传表名&#xff0c;字段值动态查询&#xff0c;返回List<Map<String,Object>>&#xff09;由前端传递&#xff09;可以通过以下步骤实现。以下是完整…

基本网络安全的实现

基本网络安全的实现 一 &#xff1a;AAA AAA 是Authentication&#xff0c;Authorization and Accounting&#xff08;认证、授权和计费&#xff09;的简 称&#xff0c;它提供了一个用来对认证、授权和计费这三种安全功能进行配置的一致性框架&#xff0c; 它是对网络安全…

kafka的ACL配置的sasl.kerberos.principal.to.local.rules配置解释

kafka配置acl认证的用户名转换规则 1、Kerberos中的介绍2、自定义sasl user name3、自定义ssl 的用户名4、关于kafka配置kerberos以及开启acl的实践 1、Kerberos中的介绍 Kerberos 关于此配置项的解释 https://web.mit.edu/Kerberos/krb5-latest/doc/admin/conf_files/krb5_co…