我在 Windows Server 2016 上安装了 Jenkins 构建服务器(v2.77),我想添加一台 Mac 作为从属节点。我将节点设置为通过“Java Web Start”运行。在Mac端,我从jenkins下载了slave-agent.jnlp文件,但它没有连接到服务器。
这是例外:
java.io.IOException: Failed to connect to 37.210.56.16:49693
at org.jenkinsci.remoting.engine.JnlpAgentEndpoint.open(JnlpAgentEndpoint.java:243)
at hudson.remoting.Engine.connect(Engine.java:660)
at hudson.remoting.Engine.innerRun(Engine.java:524)
at hudson.remoting.Engine.run(Engine.java:447)
Caused by: java.net.ConnectException: Operation timed out
at java.base/sun.nio.ch.Net.connect0(Native Method)
...
我尝试关闭Windows防火墙,将jenkins中的JNLP代理的TCP端口选项更改为固定/随机,但它们没有连接。
终于找到解决办法了。我从 google 租用了服务器,在 google 云控制台中,我必须为此 VM 实例定义一条防火墙规则,以接受此 JNLP 代理连接的特定端口号。现在效果很好。