Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I have a win2k8 machine used as our CI master server (Jenkins)

I have various other servers running as slaves

The master is listening for slave connections on port 2000

  • SlaveA - can connect to master on 2000
  • SlaveB - is unable to connect to master on 2000
  • SlaveB - can connect to master on another port
  • SlaveA - only has 2000 available as an open port
  • SlaveB - does not seemingly use port 2000 for anything and does not have any firewall rules peventing it's use as demonstrated with netstat

The behaviours of SlaveA and SlaveB are common amoung several different machines. I.e. I have 3 unrelated servers (different hosts, different networks) that do not connect and several that can connect.

The output of the slave agent when failing to connect is:

03-Oct-2011 15:07:22 hudson.remoting.jnlp.Main$CuiListener <init>
INFO: Hudson agent is running in headless mode.
03-Oct-2011 15:07:22 hudson.remoting.jnlp.Main$CuiListener status
INFO: Locating server among [http://myserver:8080/]
03-Oct-2011 15:07:22 hudson.remoting.jnlp.Main$CuiListener status
INFO: Connecting to myserver:2000
03-Oct-2011 15:07:22 hudson.remoting.jnlp.Main$CuiListener status
INFO: Handshaking
03-Oct-2011 15:08:23 hudson.remoting.jnlp.Main$CuiListener error
SEVERE: Connection reset
java.net.SocketException: Connection reset
        at java.net.SocketInputStream.read(Unknown Source)
        at java.io.BufferedInputStream.fill(Unknown Source)
        at java.io.BufferedInputStream.read(Unknown Source)
        at hudson.remoting.Engine.readLine(Engine.java:279)
        at hudson.remoting.Engine.run(Engine.java:211)

Because the telnet works the network people claim innocence

Because the app works on a different port I can't get much input from the software side of things

I'm at a loss as to what to try next to help debug this scenario :(

Any suggestions greatly appreciated.

UPDATE: It appears a connection between slave and master is being established as on the master log I get the following output:

INFO: Accepted connection #13 from /MY.SLAVE.IP.ADDRESS:58545
Oct 3, 2011 5:38:09 PM hudson.TcpSlaveAgentListener$ConnectionHandler run
WARNING: Connection #13 failed
java.net.SocketException: Connection reset
    at java.net.SocketInputStream.read(Unknown Source)
    at java.net.SocketInputStream.read(Unknown Source)
    at java.io.DataInputStream.readUnsignedShort(Unknown Source)
    at java.io.DataInputStream.readUTF(Unknown Source)
    at java.io.DataInputStream.readUTF(Unknown Source)
    at hudson.TcpSlaveAgentListener$ConnectionHandler.run(TcpSlaveAgentListener.java:178)

However, I've no idea why the connection is reset and have no idea where to look :(

share|improve this question

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Browse other questions tagged or ask your own question.