Jenkins 在 CentOS 上卡顿,通常和系统资源、JVM 配置、插件、磁盘 IO、网络有关。下面按「先快后慢、先常见后少见」给你一套排查和解决办法。
在 Jenkins 卡顿时,执行:
top
free -h
df -h
iostat -x 1
重点看:
Jenkins 默认 JVM 内存往往不够。
查看当前配置:
ps -ef | grep jenkins
如果是 yum 安装,修改:
/etc/sysconfig/jenkins
修改:
JENKINS_JAVA_OPTIONS="-Xms2g -Xmx4g -XX:PermSize=512m -XX:MaxPermSize=1g"
(根据服务器内存调整,例如 8G 服务器可设 2–4G)
重启:
systemctl restart jenkins
✅ 这是最立竿见影的优化
df -h
df -i
常见原因:
/var/lib/jenkins 下 build 日志太多清理旧构建:
rm -rf /var/lib/jenkins/jobs/*/builds/*
systemctl stop jenkins
java -jar /usr/lib/jenkins/jenkins.war --safe
解决:
root 权限 + 插件问题容易卡死
建议:
useradd jenkins
chown -R jenkins:jenkins /var/lib/jenkins
可临时测试:
setenforce 0
systemctl stop firewalld
(生产环境谨慎)
systemctl restart jenkins
90% 的 Jenkins 卡顿,都是 JVM 内存太小 + 磁盘满 + 插件问题
如果你愿意,可以告诉我:
我可以直接给你一套针对你环境的配置。