col*_*lin 10 executors jenkins
我和Jenkins一起运行并行测试.
我设置它的方式是我有一个构建流程作业,并行执行其他三个作业.其他三个作业连接到单独的Test XML文件.
当我最初开始这个时,我遇到的问题是只有两个作业会执行,而第三个作业只能在其他一个作业完成后执行.
我发现这是由于我的Jenkins设置了执行程序的数量,2现在设置为5.
然而,作为一个有趣的问题,仅仅为了将来的计划,詹金斯是否可以限制你可以拥有的执行者数量?或者是否有推荐的数字,你不应该超过?或者它完全取决于您运行它的环境?
如果有上限/建议数量不超过?我认为解决这个问题的最佳方法是使用主/从方案并将工作负载分散到多个VM.
例如,如果我将它设置为6个执行程序,这是否意味着我将在每个VM上有6个执行程序?或者在VM之间共享的6个执行程序?
它实际上取决于您的环境以及分配给该Jenkins实例的资源量.我认为Jenkins允许的执行者数量没有任何限制.我们目前使用20个执行程序运行Jenkins的单个实例,没有任何问题.当然,根据您的构建管道和提交模式,您可能会发现您设置的执行程序数量太高.您只需要关注在任何给定时间是否实际使用了所有执行程序.
如果您发现自己接近Jenkins实例的资源上限并且无法增加资源限制,那么您可能希望开始使用从属服务器.
我们关注资源使用的一种方法是通过Monitoring插件.
我一直在探索同样的问题,并在 Jenkins 本身的领域旁边发现了这个:
编辑:更具体地说,Jenkins 版本 2.73.3,在 UI 中,在您的作业配置中?,每个字段的右侧应该有小s。如果您单击它们,它们会为您提供有关该字段预期内容的更多详细信息。在 executors 字段的情况下,您应该找到它。
Jenkins 可以在此代理上执行的最大并发构建数。一个好的开始值是机器上的 CPU 内核数。设置更高的值会导致每次构建花费更长的时间,但可能会增加整体吞吐量。例如,一个构建可能受 CPU 限制,而同时运行的第二个构建可能受 I/O 限制——因此第二个构建可以利用此时的空闲 I/O 容量。
代理人必须至少有一名执行人。要暂时阻止在代理上执行任何构建,请使用代理页面上的将此节点标记为暂时离线按钮。
这不适用于 Jenkins 主节点——将执行程序的数量设置为零将阻止在主节点上执行任何构建。
据我所知,这取决于你的工作到底在做什么;我们的部署脚本只是执行gcloud命令,因此我们在具有更多执行程序的实例上运行这些命令。但是,我们的 selenium 测试在具有 1 个执行程序/核心的实例上运行。不过,从表面上看,我们在安全方面进行了一些操作。
| 归档时间: |
|
| 查看次数: |
8714 次 |
| 最近记录: |