当许多构建启动时,Jenkins变得没有响应
我们在主/从配置中使用Gerrit和Jenkins的组合,每次向Gerrit提交新的更改时,Jenkins上都会触发一组(准确地说是7个)测试和linting作业 很多时候(特别是当其他作业(如部署)也在运行时),Jenkins会在10-15分钟内没有响应 所有Jenkins机器都是VM,应该有足够的资源来处理这样的负载 我们已经:当许多构建启动时,Jenkins变得没有响应,jenkins,Jenkins,我们在主/从配置中使用Gerrit和Jenkins的组合,每次向Gerrit提交新的更改时,Jenkins上都会触发一组(准确地说是7个)测试和linting作业 很多时候(特别是当其他作业(如部署)也在运行时),Jenkins会在10-15分钟内没有响应 所有Jenkins机器都是VM,应该有足够的资源来处理这样的负载 我们已经: 在主节点上将执行器计数设置为0 将JVM内存增加到4GB 即使主节点上不应该有作业(或者至少不应该有资源密集型作业)运行,我们仍然可以看到JVM内存处于极限,并
- 在主节点上将执行器计数设置为0
- 将JVM内存增加到4GB
有人见过这个吗?对不起大家。我不能确切地说是什么帮助了我,因为我采取了多个步骤,只是在我完成所有事情之后才给詹金斯施加了相关的负担 以下是我所做的:
/etc/sysconfig/Jenkins
中的Jenkins\u JAVA\u选项
变量中。
我跳过了任何明显只涉及日志记录的JVM设置,因此我最后添加的是:
-Xms4065m
-Xmx4096m#已设置此值,但未定义最小堆大小。詹金斯最佳实践说,这两种价值观应该是相同的
-XX:+AlwaysPreTouch
-XX:+UseG1GC
-XX:+UseStringDuplication
-XX:+ParallelRefProcEnabled
-XX:+DisableExplicitGC
/etc/security/limits.conf
中添加了以下内容:
#值以制表符分隔
詹金斯软核无限公司
詹金斯硬核无限公司
詹金斯软件有限公司
詹金斯硬fsize无限
詹金斯软文件4096
詹金斯硬文件8192
詹金斯软件nproc 30654
詹金斯大学国家公共广播电台30654
希望这对任何人都有帮助。我刚刚发现了Cloudbees的这篇关于Jenkins最佳实践的文章:。我们目前没有使用很多选项,所以今天晚些时候我将尝试这些选项,并向您汇报。