I have followed the installation guide and I still encounter issues getting jenkins slaves to connect to the master.
My mesos slaves are all having a jenkins
user. with UID 1000
JAVA_HOME
is into mesos slave path as well.
Version:
- mesos: 1.2.0-2.0.6
- marathon: 1.4.3-1.0.649.ubuntu1604
- jenkinsci/mesos-plugin: 0.14.1
Cloud configuration:
In marathon I have the jenkins master instance running in bridge mode :
I have consul and HAproxy proxying jenkins-2.service.consul.50000
I also have consul and HAproxy proxying jenkins master http://jenkins-2.service.consul
Expected result
Jenkins master should be able to run jenkins slave in mesos by it's own.
Result
In Mesos, I have a LOT of framework running, is it normal ?
When I run a new task:
The slave have difficulties to start
It is offline :
If I login on a valid mesos slave, and as jenkins user, I start the jnlp agent manually:
It does work :
I also enabled FINE
Loglevel on my jenkins master :
I noticed this :
INFO: Accepted connection #18 from /172.16.0.2:48806
May 09, 2017 3:47:29 AM hudson.TcpSlaveAgentListener$ConnectionHandler run
WARNING: Connection #18 failed
java.io.EOFException
at java.io.DataInputStream.readFully(DataInputStream.java:197)
at java.io.DataInputStream.readFully(DataInputStream.java:169)
at hudson.TcpSlaveAgentListener$ConnectionHandler.run(TcpSlaveAgentListener.java:213)
INFO: Accepted connection #19 from /172.16.0.2:49443
May 09, 2017 3:47:44 AM hudson.TcpSlaveAgentListener$ConnectionHandler run
WARNING: Connection #19 failed
java.io.EOFException
at java.io.DataInputStream.readFully(DataInputStream.java:197)
at java.io.DataInputStream.readFully(DataInputStream.java:169)
at hudson.TcpSlaveAgentListener$ConnectionHandler.run(TcpSlaveAgentListener.java:213)
May 09, 2017 3:47:59 AM hudson.TcpSlaveAgentListener$ConnectionHandler run
INFO: Accepted connection #20 from /172.16.0.2:50088
May 09, 2017 3:47:59 AM hudson.TcpSlaveAgentListener$ConnectionHandler run
WARNING: Connection #20 failed
java.io.EOFException
at java.io.DataInputStream.readFully(DataInputStream.java:197)
at java.io.DataInputStream.readFully(DataInputStream.java:169)
at hudson.TcpSlaveAgentListener$ConnectionHandler.run(TcpSlaveAgentListener.java:213)
I rather not launch my jenkins slaves manually. Is there a way to get more logs or plugin flow explanation.
- Why does it refuse to connect to the jenkins master at the beginning?
- I have read about
LIBPROCESS_IP
, but since the command work fine, could this be related to my issue ? I think it is not. - Why is the slave trying to connect on a different port than
50000
?
Any help is much appreciated