在 Debian 上优化 Jenkins,通常可以从系统层面、Jenkins 自身配置、构建效率、安全与维护几个方向入手。下面给你一份比较实用的优化清单。
/var/lib/jenkins(避免系统盘 IO 影响)# 增加文件描述符
echo "* soft nofile 65535" >> /etc/security/limits.conf
echo "* hard nofile 65535" >> /etc/security/limits.conf
# 调整内核参数
sysctl -w vm.swappiness=10
sysctl -w net.core.somaxconn=1024
编辑:
/etc/systemd/system/jenkins.service.d/override.conf
示例:
[Service]
MemoryLimit=4G
CPUQuota=200%
systemctl daemon-reload
systemctl restart jenkins
编辑:
/etc/default/jenkins
示例(8G 内存):
JAVA_OPTS="-Xms2g -Xmx4g -XX:+UseG1GC -XX:MaxGCPauseMillis=200"
推荐:
-Xmx 设置过大导致系统 OOMManage Jenkins → Configure System# of executorsbuilds/ 无限增长Manage Jenkins → Plugins
-Dmaven.repo.local=/cache/maven
npm ci --cache /cache/npm
parallel(
buildA: { ... },
buildB: { ... }
)
/var/lib/jenkins/workspace/var/lib/jenkins/logsjenkins-cli 或定时脚本logrotate/var/log/jenkins/*.log {
rotate 7
daily
compress
missingok
}
thinBackup 插件/var/lib/jenkins| 问题 | 原因 | 解决 |
|---|---|---|
| Jenkins 卡顿 | 内存不足 | 调大 JVM |
| 构建慢 | 无缓存 | 加缓存 |
| Master 高负载 | 构建在 Master | 用 Agent |
| 磁盘满 | 历史构建多 | 清理策略 |
如果你愿意,可以告诉我:
我可以给你更针对性的优化方案。