web-dev-qa-db-ja.com

JenkinsSlaveはビルド中にオフラインになります

Jenkins1.651マスターとスレーブがWindowsServer 2012にインストールされています。スレーブはSeleniumテストの実行専用ですが、ほとんどの場合、オフラインになります。

Build step 'Execute Windows batch command' marked build as failure
ERROR: slave-tester is offline; cannot locate jdk7

そして

Apr 20, 2016 2:20:05 PM INFO jenkins.slaves.DefaultJnlpSlaveReceiver handle
Disconnecting slave-tester as we are reconnected from the current peer
Apr 20, 2016 2:20:17 PM WARNING org.jenkinsci.remoting.nio.NioChannelHub run
Communication problem
Java.io.IOException: An existing connection was forcibly closed by the remote Host
    at Sun.nio.ch.SocketDispatcher.read0(Native Method)
    at Sun.nio.ch.SocketDispatcher.read(Unknown Source)
    at Sun.nio.ch.IOUtil.readIntoNativeBuffer(Unknown Source)
    at Sun.nio.ch.IOUtil.read(Unknown Source)
    at Sun.nio.ch.SocketChannelImpl.read(Unknown Source)
    at org.jenkinsci.remoting.nio.FifoBuffer$Pointer.receive(FifoBuffer.Java:136)
    at org.jenkinsci.remoting.nio.FifoBuffer.receive(FifoBuffer.Java:306)
    at org.jenkinsci.remoting.nio.NioChannelHub.run(NioChannelHub.Java:561)
    at jenkins.util.ContextResettingExecutorService$1.run(ContextResettingExecutorService.Java:28)
    at Java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
    at Java.util.concurrent.FutureTask.run(Unknown Source)
    at Java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at Java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at Java.lang.Thread.run(Unknown Source)

Apr 20, 2016 2:20:17 PM WARNING jenkins.slaves.JnlpSlaveAgentProtocol$Handler$1 onClosed
NioChannelHub keys=2 gen=88003: Computer.threadPoolForRemoting [#2] for slave-tester terminated
Java.io.IOException: Connection aborted: org.jenkinsci.remoting.nio.NioChannelHub$MonoNioTransport@17d0b4b[name=xxx]
    at org.jenkinsci.remoting.nio.NioChannelHub$NioTransport.abort(NioChannelHub.Java:208)
    at org.jenkinsci.remoting.nio.NioChannelHub.run(NioChannelHub.Java:628)
    at jenkins.util.ContextResettingExecutorService$1.run(ContextResettingExecutorService.Java:28)
    at Java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
    at Java.util.concurrent.FutureTask.run(Unknown Source)
    at Java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at Java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at Java.lang.Thread.run(Unknown Source)
Caused by: Java.io.IOException: An existing connection was forcibly closed by the remote Host
    at Sun.nio.ch.SocketDispatcher.read0(Native Method)
    at Sun.nio.ch.SocketDispatcher.read(Unknown Source)
    at Sun.nio.ch.IOUtil.readIntoNativeBuffer(Unknown Source)
    at Sun.nio.ch.IOUtil.read(Unknown Source)
    at Sun.nio.ch.SocketChannelImpl.read(Unknown Source)
    at org.jenkinsci.remoting.nio.FifoBuffer$Pointer.receive(FifoBuffer.Java:136)
    at org.jenkinsci.remoting.nio.FifoBuffer.receive(FifoBuffer.Java:306)
    at org.jenkinsci.remoting.nio.NioChannelHub.run(NioChannelHub.Java:561)
    ... 6 more

スレーブログ:

<===[JENKINS REMOTING CAPACITY]===>Slave.jar version: 2.53.3
Slave.jar version: 2.53.3
This is a Windows slave
This is a Windows slave
Connection terminated
Connection terminated
ERROR: Failed to install restarter
hudson.remoting.RequestAbortedException: hudson.remoting.Channel$OrderlyShutdown
    at hudson.remoting.Request.abort(Request.Java:297)
    at hudson.remoting.Channel.terminate(Channel.Java:847)
    at hudson.remoting.Channel$CloseCommand.execute(Channel.Java:1080)
    at hudson.remoting.Channel$1.handle(Channel.Java:501)
    at hudson.remoting.AbstractByteArrayCommandTransport$1.handle(AbstractByteArrayCommandTransport.Java:61)
    at org.jenkinsci.remoting.nio.NioChannelHub$2.run(NioChannelHub.Java:594)
    at Java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
    at Java.util.concurrent.FutureTask.run(Unknown Source)
    at hudson.remoting.SingleLaneExecutorService$1.run(SingleLaneExecutorService.Java:112)
    at jenkins.util.ContextResettingExecutorService$1.run(ContextResettingExecutorService.Java:28)
    at Java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
    at Java.util.concurrent.FutureTask.run(Unknown Source)
    at Java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at Java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at Java.lang.Thread.run(Unknown Source)
    at ......remote call to slave-tester(Native Method)
    at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.Java:1416)
    at hudson.remoting.Request.call(Request.Java:172)
    at hudson.remoting.Channel.call(Channel.Java:780)
    at jenkins.slaves.restarter.JnlpSlaveRestarterInstaller.install(JnlpSlaveRestarterInstaller.Java:52)
    at jenkins.slaves.restarter.JnlpSlaveRestarterInstaller.access$000(JnlpSlaveRestarterInstaller.Java:33)
    at jenkins.slaves.restarter.JnlpSlaveRestarterInstaller$1.call(JnlpSlaveRestarterInstaller.Java:39)
    at jenkins.slaves.restarter.JnlpSlaveRestarterInstaller$1.call(JnlpSlaveRestarterInstaller.Java:36)
    at jenkins.util.ContextResettingExecutorService$2.call(ContextResettingExecutorService.Java:46)
    at Java.util.concurrent.FutureTask.run(Unknown Source)
    at Java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at Java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at Java.lang.Thread.run(Unknown Source)
Caused by: hudson.remoting.Channel$OrderlyShutdown
    at hudson.remoting.Channel$CloseCommand.execute(Channel.Java:1080)
    at hudson.remoting.Channel$1.handle(Channel.Java:501)
    at hudson.remoting.AbstractByteArrayCommandTransport$1.handle(AbstractByteArrayCommandTransport.Java:61)
    at org.jenkinsci.remoting.nio.NioChannelHub$2.run(NioChannelHub.Java:594)
    at Java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
    at Java.util.concurrent.FutureTask.run(Unknown Source)
    at hudson.remoting.SingleLaneExecutorService$1.run(SingleLaneExecutorService.Java:112)
    at jenkins.util.ContextResettingExecutorService$1.run(ContextResettingExecutorService.Java:28)
    at Java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
    ... 4 more
Caused by: Command close created at
    at hudson.remoting.Command.<init>(Command.Java:56)
    at hudson.remoting.Channel$CloseCommand.<init>(Channel.Java:1074)
    at hudson.remoting.Channel$CloseCommand.<init>(Channel.Java:1072)
    at hudson.remoting.Channel.close(Channel.Java:1156)
    at hudson.remoting.Channel.close(Channel.Java:1138)
    at hudson.remoting.Channel$CloseCommand.execute(Channel.Java:1079)
    at hudson.remoting.Channel$1.handle(Channel.Java:501)
    at hudson.remoting.SynchronousCommandTransport$ReaderThread.run(SynchronousCommandTransport.Java:60)

この問題の原因と解決方法を教えてください。

4
Sim1

同様の問題

考えられる解決策

このソース に基づいて、スタックトレースの一部:

at Java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at Java.util.concurrent.FutureTask.run(Unknown Source)
at Java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at Java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at Java.lang.Thread.run(Unknown Source)

また、オフィスでjdk7を最新のOracle-jdk8にアップグレードすると同じ問題が発生し、問題を解決できる可能性があります。

問題が解決しない場合:

  1. 問題がいつ発生するか正確に示してください。問題を再現することができます。
  2. 問題の原因となっているビルドのJenkinsビルドログを追加してください。おそらく、問題の原因となっているジョブによって実行される特定のタスクがあります。
  3. ジョブの作成中にWindowsタスクマネージャーを表示する
  4. 成功したビルドの1つのログと失敗したビルドの1つのログを追加してください
3
030