詹金斯奴隶随机断开与主人的联系

时间:2014-09-09 10:22:37

标签: java networking jenkins continuous-integration virtual-machine

我目前正在设置一个vm群集来运行Jenkins以用于大型项目, 我有jenkins设置,所有的VM都运行Windows 7 64位,有大量的RAM,磁盘空间和部署的从属代理(作为Windows服务运行)。几分钟后我不断收到以下错误。

Connection was broken

java.nio.channels.AsynchronousCloseException
at java.nio.channels.spi.AbstractInterruptibleChannel.end(Unknown Source)
at sun.nio.ch.SocketChannelImpl.read(Unknown Source)
at hudson.remoting.SocketChannelStream$1.read(SocketChannelStream.java:33)
at sun.nio.ch.ChannelInputStream.read(Unknown Source)
at sun.nio.ch.ChannelInputStream.read(Unknown Source)
at sun.nio.ch.ChannelInputStream.read(Unknown Source)
at java.io.InputStream.read(Unknown Source)
at sun.nio.ch.ChannelInputStream.read(Unknown Source)
at hudson.remoting.FlightRecorderInputStream.read(FlightRecorderInputStream.java:82)
at java.io.ObjectInputStream$PeekInputStream.peek(Unknown Source)
at java.io.ObjectInputStream$BlockDataInputStream.peek(Unknown Source)
at java.io.ObjectInputStream$BlockDataInputStream.peekByte(Unknown Source)
at java.io.ObjectInputStream.readObject0(Unknown Source)
at java.io.ObjectInputStream.readObject(Unknown Source)
at hudson.remoting.Command.readFrom(Command.java:92)
at hudson.remoting.ClassicCommandTransport.read(ClassicCommandTransport.java:70)
at hudson.remoting.SynchronousCommandTransport$ReaderThread.run(SynchronousCommandTransport.java:48)

奴隶断开30秒到2分钟,然后重新连接, 响应时间也在400毫秒到5秒之间变化很大。

群集在其自己的交换机上,来自任何计算机的ping返回< 1ms时间。

任何帮助?

1 个答案:

答案 0 :(得分:4)

在Jenkins奴隶中有新的NIO内容存在很多的错误。在撰写本文时,我们遇到了类似的严重不稳定问题。 例如: https://issues.jenkins-ci.org/browse/JENKINS-22758

这篇文章值得更新(2017年8月):我们现在运行2.46,奴隶更加稳定。