连接时 Jenkins Slave 连接超时

Jenkins Slave Connection Timeout When Connecting

上周我使用 jenkins 和 4 个从 windows 虚拟机设置了一个硒网格。作为这样做的一部分,我必须为从属连接和 selenium 连接解锁端口。

vms 下载了 jnlp starter 并正确注册,周五结束时,我进行了测试 运行,正如预期的那样。\

周一快乐,我周末回来发现由于连接超时,与所有四个 VM 的连接都已丢失。 (最初的错误表明它已被终止,因为 ping 太长了,随后的尝试从一开始就没有成功连接。)

到目前为止,我对 SO 的研究指出端口存在问题,因此我检查以确保它们仍然处于启用状态,而且确实如此。接下来我重启了jenkins实例,还是没有成功。

有趣的是,与 jenkins selenium 网格的连接正常工作,每个独立服务器启动并在 VM 上正确注册,并且它们都能够从浏览器访问 jenkins ui,只是不能可以通过jnlp注册为slave.

此时我不知所措,我已经镜像了与上周运行的完全相同的设置。我与管理服务器的 devOps 团队进行了核实,并确认这方面没有任何变化。 VM 未受影响。

找到了解决方案,但至少留下了一个问题。

为了解决这个问题,我更改了 Jenkins 全局安全设置以使用固定端口进行 TCP 连接,并确保它是我启用的端口之一,现在连接顺利通过。

就是说 - 这不应该单独工作。当尝试更早连接时,日志清楚地表明在给定端口的连接尝试被拒绝(完全相同的端口,并且它也被启用。)

我能理解代理是否试图连接到不同的端口,但我不明白为什么专用端口本身会对连接代理产生影响。