You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Jenkins点击Build Now无构建触发 日志报master离线无终止trace报错

问题现象

点击Jenkins的Build Now按钮后未触发任何构建任务,查看Jenkins系统日志可获取到如下告警信息:

Jun 22, 2022 12:03:12 PM WARNING hudson.model.Executor resetWorkUnit
Executor #-1 for master 从队列中抓取到hudson.model.queue.WorkUnit@2ed503b9[work=application_versioning]工作单元,但在任务工作线程启动前master节点已离线,无可用终止trace信息。

故障诱发原因

该告警的核心逻辑是:构建任务已经进入调度队列、被master节点执行器成功拾取,但在正式启动任务工作线程的环节,Jenkins内部节点状态检测模块判定master处于离线状态,直接中断了任务调度流程,因此没有生成任务运行相关的错误堆栈。常见诱发原因包括:

  • Jenkins master节点基础资源耗尽:CPU占满、JVM内存溢出导致进程僵死,Jenkins工作目录所在磁盘分区被写满,无法生成任务运行所需的临时文件,执行器线程无法正常拉起
  • 节点状态误判:master节点网络闪断、前置反向代理(Nginx/Ingress)连接超时、本地回环通讯被防火墙拦截,导致节点状态检测请求失败,误报master离线
  • 执行器线程池异常:之前运行的任务出现死锁、线程泄漏,占满master所有可用执行器槽位,新的执行器线程无法创建,触发调度逻辑异常
  • 插件/版本兼容问题:队列管控、节点管理类插件版本与Jenkins核心版本不匹配,或是Jenkins核心版本升级后存在调度逻辑bug,导致工作单元处理流程出错
排查修复步骤
  1. 检查master节点基础运行状态
    • 登录Jenkins部署所在的服务器/容器,执行df -h查看Jenkins工作目录所在磁盘分区使用率,若使用率达到100%,先清理过期构建日志、无用任务工作空间释放磁盘空间
    • 执行top、free -h检查CPU、内存占用情况,若Jenkins进程内存占满,查看jenkins.out、jenkins.err日志确认是否存在OOM报错,适当调大JVM堆内存参数后重启Jenkins
    • 检查Jenkins进程存活状态,若进程僵死无响应,先优雅停止进程后重启,重启后先清空构建队列内的卡死任务,再尝试触发新构建
  2. 校验节点与执行器配置
    • 进入Jenkins「系统管理-节点管理」页面,查看master节点状态,若显示离线,点击节点详情页的「重连」按钮手动触发状态刷新
    • 检查master节点配置的执行器数量,若执行器数被设为0会直接导致无法调度任务,调整为合理数值(通常不超过CPU核心数*2)
    • 进入「系统管理-线程监控」页面,查看是否有长期处于阻塞/死锁状态的执行器线程,若存在大量卡死线程,安全重启Jenkins释放线程池资源即可恢复
  3. 排查网络与代理配置
    • 若Jenkins配置了反向代理,检查代理的超时参数,确保读、写超时时间不低于300秒,避免长连接被代理主动中断触发节点离线误判
    • 检查服务器本地防火墙、安全组规则,确认Jenkins服务默认端口(8080)的本地回环通讯未被拦截,避免本地节点状态检测请求被阻断
  4. 排查版本兼容性问题
    • 进入「系统管理-插件管理」页面,检查近期更新过的队列、节点、权限类插件,若存在插件版本与当前Jenkins核心版本不匹配的情况,回滚插件到官方标注的兼容版本后重启Jenkins验证
    • 若故障出现在Jenkins核心版本升级后,可回滚到升级前的稳定版本,排除核心版本自带的调度逻辑bug

内容的提问来源于stack exchange,提问作者Rizwan Khan A

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.28 20:21:28