CentOS 上的 Jenkins 卡顿,通常由资源、配置、插件、任务本身几类原因导致。下面按常见程度给你一个排查清单和对应解决办法。
Jenkins 是 Java 应用,默认堆内存很小。
现象
OutOfMemoryError排查
ps -ef | grep jenkins
free -h
top
解决 修改 Jenkins 启动参数(CentOS 常见路径):
vim /etc/sysconfig/jenkins
调整:
JENKINS_JAVA_OPTIONS="-Xms2g -Xmx4g"
重启:
systemctl restart jenkins
排查
top
htop
解决
Jenkins 大量写日志、workspace。
排查
df -h
du -sh /var/lib/jenkins/*
解决
workspace解决
/var/log/jenkins/jenkins.log
默认不清理。
解决
解决
Depth: 1git cachePipeline + agent较少直接导致卡顿,但可能让 Agent 连接异常。
getenforce
CentOS 默认可能是 OpenJDK 旧版本。
建议
# 1. 内存
free -h
# 2. CPU
top
# 3. 磁盘
df -h
# 4. Jenkins 日志
tail -f /var/log/jenkins/jenkins.log
# 5. 构建并发
Jenkins → Manage → Configure → # of executors
如果你愿意,可以告诉我:
我可以直接帮你定位到具体原因。