首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Jenkins slave无法与主机连接:确认序列不正确

Jenkins slave无法与主机连接:确认序列不正确
EN

Stack Overflow用户
提问于 2017-06-22 19:57:05
回答 4查看 16.6K关注 0票数 9

在将我们的Jenkins主安装更新到其最新的LTS版本2.46.3之后,它的一个从设备(Windows7机器,32位)无法与主设备连接。

我们得到的错误是:

代码语言:javascript
复制
java -jar slave.jar -jnlpUrl https://<jenkins-name>/computer/<node-name>/slave-agent.jnlp -secret <secret-value>
Jun 22, 2017 1:19:05 PM hudson.remoting.jnlp.Main createEngine
INFO: Setting up slave: node-name
Jun 22, 2017 1:19:05 PM hudson.remoting.jnlp.Main$CuiListener <init>
INFO: Jenkins agent is running in headless mode.
Jun 22, 2017 1:19:05 PM hudson.remoting.jnlp.Main$CuiListener status
INFO: Locating server among [https://<jenkins-name>/]
Jun 22, 2017 1:19:05 PM org.jenkinsci.remoting.engine.JnlpAgentEndpointResolver resolve
INFO: Remoting server accepts the following protocols: [JNLP3-connect, JNLP-connect, CLI2-connect, Ping, CLI-connect, JNLP4-connect, JNLP2-c
onnect]
Jun 22, 2017 1:19:05 PM hudson.remoting.jnlp.Main$CuiListener status
INFO: Agent discovery successful
  Agent address: <jenkins-name>
  Agent port:    <jenkins-port>
  Identity:      <id:en:ti:ty>
Jun 22, 2017 1:19:05 PM hudson.remoting.jnlp.Main$CuiListener status
INFO: Handshaking
Jun 22, 2017 1:19:05 PM hudson.remoting.jnlp.Main$CuiListener status
INFO: Connecting to <jenkins-name>:9150
Jun 22, 2017 1:19:05 PM hudson.remoting.jnlp.Main$CuiListener status
INFO: Trying protocol: JNLP4-connect
Jun 22, 2017 1:19:05 PM org.jenkinsci.remoting.protocol.impl.AckFilterLayer abort
WARNING: [JNLP4-connect connection to <our-proxy>/10.253.0.11:81] Incorrect acknowledgement sequence, expected 0x0003414333 got 0x4854545044
Jun 22, 2017 1:19:05 PM hudson.remoting.jnlp.Main$CuiListener status
INFO: Protocol JNLP4-connect encountered an unexpected exception
java.util.concurrent.ExecutionException: org.jenkinsci.remoting.protocol.impl.ConnectionRefusalException: Connection closed before acknowled
gement sent
        at org.jenkinsci.remoting.util.SettableFuture.get(SettableFuture.java:223)
        at hudson.remoting.Engine.innerRun(Engine.java:385)
        at hudson.remoting.Engine.run(Engine.java:287)
Caused by: org.jenkinsci.remoting.protocol.impl.ConnectionRefusalException: Connection closed before acknowledgement sent
        at org.jenkinsci.remoting.protocol.impl.AckFilterLayer.onRecvClosed(AckFilterLayer.java:280)
        at org.jenkinsci.remoting.protocol.FilterLayer.abort(FilterLayer.java:164)
        at org.jenkinsci.remoting.protocol.impl.AckFilterLayer.abort(AckFilterLayer.java:130)
        at org.jenkinsci.remoting.protocol.impl.AckFilterLayer.onRecv(AckFilterLayer.java:258)
        at org.jenkinsci.remoting.protocol.ProtocolStack$Ptr.onRecv(ProtocolStack.java:669)
        at org.jenkinsci.remoting.protocol.NetworkLayer.onRead(NetworkLayer.java:136)
        at org.jenkinsci.remoting.protocol.impl.BIONetworkLayer.access$2200(BIONetworkLayer.java:48)

我们花了很多时间试图解决这个问题。不幸的是没有成功。

你知道是什么导致了这个问题吗?如何解决这个问题?

EN

回答 4

Stack Overflow用户

发布于 2018-02-07 00:17:22

我们最近使用基于AWS的Jenkins解决了这个问题,使用JNLP进行远程集成测试。远程从机将回调到Jenkins主机,该主机因类似的错误而失败。这个问题最终是为Jenkins Master动态生成的HTTP类型的AWS ELB (因为Kubernetes ELB provisioner目前不支持多协议ELB)。我们必须手动将ELB的JNLP入口端口类型更改为TCP,而web接口入口'instance port‘是协议HTTP,而'load balancer’是协议HTTPS

票数 3
EN

Stack Overflow用户

发布于 2017-08-29 20:58:08

您需要检查节点的密钥是否完整。如果不合适,则必须下载slave.jar,并使用新的jar文件从命令行运行代理。

代码语言:javascript
复制
java -jar slave.jar -jnlpUrl http://<ipaddress>:8080/computer/<computername>/slave-agent.jnlp -secret 340d54sdrgtjj334kelkahsdjkf83f1c5120dc2fb74939fcdb7f05e1926049f8d7991

还要检查安装的java版本是否大于7

票数 0
EN

Stack Overflow用户

发布于 2019-02-22 06:59:38

当Windows Update或其他静默后台更新扰乱从机的环境变量时,这种情况就会发生在我们身上。必须重新添加HTTPS_PROXYHTTP_PROXY,一旦添加完成,我们就可以重新开始业务了。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44698782

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档