Jenkins EC2 plugin kan ikke lancere windows slave (Unexpected EOF)

Indlæg af Hanne Mølgaard Plasc

Problem



For nylig begyndte jeg at oprette mit AWS-miljø til Windows 2008 slaver.


Jeg har konfigureret min AMI (2008 x64) med:



  • Jenkins-bruger under Administrators gruppe

  • Windows Firewall slukket. (Jeg når forekomsten ved hjælp af telnet til 445 og 5985 porte)

  • WinRM HTTP-konfiguration:


    winrm quickconfig


    winrm sæt winrm/config/service/Auth @ {Basic='true'}


    winrm sæt winrm/config/service @ {AllowUnencrypted='true'}


    winrm sæt winrm/config/winrs @ {MaxMemoryPerShellMB='1024'}



Dette er Jenkins loggen:


WinRM service responded. Waiting for WinRM service to stabilize on Windows slave (i-089160ce7ccb480fb)
WinRM should now be ok on Windows slave (i-089160ce7ccb480fb)
Connected with WinRM.
Creating tmp directory if it does not exist
slave.jar sent remotely. Bootstrapping it
<===[JENKINS REMOTING CAPACITY]===>Slave.jar version: 2.60
This is a Windows agent
ERROR: Connection terminated
Ouch:
hudson.remoting.RequestAbortedException: java.io.IOException: Unexpected EOF
    at hudson.remoting.Request.abort(Request.java:303)
    at hudson.remoting.Channel.terminate(Channel.java:847)
    at hudson.remoting.SynchronousCommandTransport$ReaderThread.run(SynchronousCommandTransport.java:92)
    at ......remote call to Windows slave (i-089160ce7ccb480fb)(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 hudson.slaves.SlaveComputer.setChannel(SlaveComputer.java:536)
    at hudson.slaves.SlaveComputer.setChannel(SlaveComputer.java:381)
    at hudson.plugins.ec2.win.EC2WindowsLauncher.launch(EC2WindowsLauncher.java:70)
    at hudson.plugins.ec2.EC2ComputerLauncher.launch(EC2ComputerLauncher.java:122)
    at hudson.slaves.SlaveComputer$1.call(SlaveComputer.java:253)
    at jenkins.util.ContextResettingExecutorService$2.call(ContextResettingExecutorService.java:46)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)
Caused by: java.io.IOException: Unexpected EOF
    at hudson.remoting.ChunkedInputStream.readUntilBreak(ChunkedInputStream.java:99)
    at hudson.remoting.ChunkedCommandTransport.readBlock(ChunkedCommandTransport.java:39)
    at hudson.remoting.AbstractSynchronousByteArrayCommandTransport.read(AbstractSynchronousByteArrayCommandTransport.java:34)
    at hudson.remoting.SynchronousCommandTransport$ReaderThread.run(SynchronousCommandTransport.java:59)
java.io.IOException: Unexpected EOF
    at hudson.remoting.ChunkedInputStream.readUntilBreak(ChunkedInputStream.java:99)
    at hudson.remoting.ChunkedCommandTransport.readBlock(ChunkedCommandTransport.java:39)
    at hudson.remoting.AbstractSynchronousByteArrayCommandTransport.read(AbstractSynchronousByteArrayCommandTransport.java:34)
    at hudson.remoting.SynchronousCommandTransport$ReaderThread.run(SynchronousCommandTransport.java:59)


UPDATE: Problemet er java x64. Med en Windows x64 med en installeret java x32 fungerer det, meget langsomt, men fungerer.


Jeg har brug for hjælp, det er meget vigtigt for mit arbejde.
Tak!

Bedste reference