I'm using jenkins helm chart for my jenkins controller (master) with persistence EFS volume together with Kubernetes plugin with inbound-agent (jdk11) pods for my agents (slaves) over websocket connection
It seems that the Agent (slave) pods are unable to re-connect the controller (master) after a reboot to the controller (master).
It seems that the process exit with exit code 0 from some reason instead of reconnecting.
jenkins controller (master) log
2021-08-24 13:26:33.976+0000 [id=64] INFO o.c.j.p.k.KubernetesLauncher#launch: Agent has already been launched, activating: jenkins-agent-3q3j5
jenkins agent (slave) log:
Aug 24, 2021 1:23:56 PM hudson.remoting.Engine lambda$new$1
Aug 24, 2021 1:23:56 PM hudson.remoting.Engine lambda$new$1SEVERE: Uncaught exception in Engine thread Thread[Thread-0,5,main]
java.lang.NoClassDefFoundError: jenkins/slaves/restarter/JnlpSlaveRestarterInstaller
at jenkins.slaves.restarter.JnlpSlaveRestarterInstaller$FindEffectiveRestarters$1.onReconnect(JnlpSlaveRestarterInstaller.java:91)
at hudson.remoting.EngineListenerSplitter.onReconnect(EngineListenerSplitter.java:54)
at hudson.remoting.Engine.runWebSocket(Engine.java:687)
at hudson.remoting.Engine.run(Engine.java:496)
Caused by: java.lang.ClassNotFoundException: jenkins.slaves.restarter.JnlpSlaveRestarterInstaller
at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:471)
at hudson.remoting.RemoteClassLoader.findClass(RemoteClassLoader.java:215) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:589)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522) ... 4 more
jenkins agent (slave) pod status:
NAME READY STATUS RESTARTS AGE
jenkins-agent-3q3j5 1/2 NotReady 0 15m
lastState: {}
name: jnlp
ready: false
restartCount: 0
started: false
state:
terminated:
containerID: docker://9b490eafd5078fa95cbd915bed16bcee767c1005a7a96158a2017d1551fba87b
exitCode: 0
finishedAt: "2021-09-08T15:00:07Z"
reason: Completed
startedAt: "2021-09-08T14:53:19Z"
inbound-agent conf
- name: JENKINS_SECRET
value: 271983729187392173921798379281739821793b
- name: JENKINS_AGENT_NAME
value: jenkins-agent-3q3j5
- name: DOCKER_HOST
value: tcp://localhost:2375
- name: JENKINS_WEB_SOCKET
value: "true"
- name: JAVA_OPTS
value: -Xms512m -Xmx1500m
- name: JENKINS_NAME
value: jenkins-agent-3q3j5
- name: JENKINS_AGENT_WORKDIR
value: /home/jenkins/agent
- name: JENKINS_URL
value: http://jenkins:8080/
- name: AWS_DEFAULT_REGION
value: us-east-1
- name: AWS_REGION
value: us-east-1
- name: AWS_ROLE_ARN
value: arn:aws:iam::123456789:role/jenkins-agent-pod
- name: AWS_WEB_IDENTITY_TOKEN_FILE
value: /var/run/secrets/eks.amazonaws.com/serviceaccount/token
jenkins agent (slave) pod process
/opt/java/openjdk/bin/java -Xms512m -Xmx1500m -cp /usr/share/jenkins/agent.jar hudson.remoting.jnlp.Main -headless -url http://jenkins:8080/ -workDir /home /jenkins/agent -webSocket 271983729187392173921798379281739821793b jenkins-agent-3q3j5
same behavior in
jenkins/jenkins:2.303.1-jdk11
jenkins/inbound-agent:4.10-2-jdk11
It seems that this issue happens also on windows agent (slave)
might be related: https://issues.jenkins.io/browse/JENKINS-59910
Originally reported by dordor, imported from: WebSocket agent does not reconnect: ClassNotFoundException: jenkins.slaves.restarter.JnlpSlaveRestarterInstaller
- assignee:
timja
- status: Closed
- priority: Critical
- component(s): remoting
- label(s): 2.332.2-fixed, java11
- resolution: Fixed
- resolved: 2022-03-04T03:46:30+00:00
- votes: 1
- watchers: 6
- imported: 2025-11-25
Raw content of original issue
I'm using jenkins helm chart for my jenkins controller (master) with persistence EFS volume together with Kubernetes plugin with inbound-agent (jdk11) pods for my agents (slaves) over websocket connection
It seems that the Agent (slave) pods are unable to re-connect the controller (master) after a reboot to the controller (master).
It seems that the process exit with exit code 0 from some reason instead of reconnecting.
jenkins controller (master) log
2021-08-24 13:26:33.976+0000 [id=64] INFO o.c.j.p.k.KubernetesLauncher#launch: Agent has already been launched, activating: jenkins-agent-3q3j5
jenkins agent (slave) log:
Aug 24, 2021 1:23:56 PM hudson.remoting.Engine lambda$new$1
Aug 24, 2021 1:23:56 PM hudson.remoting.Engine lambda$new$1SEVERE: Uncaught exception in Engine thread Thread[Thread-0,5,main]
java.lang.NoClassDefFoundError: jenkins/slaves/restarter/JnlpSlaveRestarterInstaller
at jenkins.slaves.restarter.JnlpSlaveRestarterInstaller$FindEffectiveRestarters$1.onReconnect(JnlpSlaveRestarterInstaller.java:91)
at hudson.remoting.EngineListenerSplitter.onReconnect(EngineListenerSplitter.java:54)
at hudson.remoting.Engine.runWebSocket(Engine.java:687)
at hudson.remoting.Engine.run(Engine.java:496)
Caused by: java.lang.ClassNotFoundException: jenkins.slaves.restarter.JnlpSlaveRestarterInstaller
at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:471)
at hudson.remoting.RemoteClassLoader.findClass(RemoteClassLoader.java:215) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:589)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522) ... 4 more
jenkins agent (slave) pod status:
NAME READY STATUS RESTARTS AGE
jenkins-agent-3q3j5 1/2 NotReady 0 15m
lastState: {}
name: jnlp
ready: <span class="code-keyword">false</span>
restartCount: 0
started: <span class="code-keyword">false</span>
state:
terminated:
containerID: docker:<span class="code-comment">//9b490eafd5078fa95cbd915bed16bcee767c1005a7a96158a2017d1551fba87b
exitCode: 0
finishedAt: "2021-09-08T15:00:07Z"
reason: Completed
startedAt: "2021-09-08T14:53:19Z"
inbound-agent conf
- name: JENKINS_SECRET
value: 271983729187392173921798379281739821793b
- name: JENKINS_AGENT_NAME
value: jenkins-agent-3q3j5
- name: DOCKER_HOST
value: tcp://localhost:2375
- name: JENKINS_WEB_SOCKET
value: "true"
- name: JAVA_OPTS
value: -Xms512m -Xmx1500m
- name: JENKINS_NAME
value: jenkins-agent-3q3j5
- name: JENKINS_AGENT_WORKDIR
value: /home/jenkins/agent
- name: JENKINS_URL
value: http://jenkins:8080/
- name: AWS_DEFAULT_REGION
value: us-east-1
- name: AWS_REGION
value: us-east-1
- name: AWS_ROLE_ARN
value: arn:aws:iam::123456789:role/jenkins-agent-pod
- name: AWS_WEB_IDENTITY_TOKEN_FILE
value: /var/run/secrets/eks.amazonaws.com/serviceaccount/token
jenkins agent (slave) pod process
/opt/java/openjdk/bin/java -Xms512m -Xmx1500m -cp /usr/share/jenkins/agent.jar hudson.remoting.jnlp.Main -headless -url http://jenkins:8080/ -workDir /home /jenkins/agent -webSocket 271983729187392173921798379281739821793b jenkins-agent-3q3j5
same behavior in
jenkins/jenkins:2.303.1-jdk11
jenkins/inbound-agent:4.10-2-jdk11
It seems that this issue happens also on windows agent (slave)
might be related: https://issues.jenkins.io/browse/JENKINS-59910
environment
Jenkins: 2.303.1<br/>
jenkins k8s controller (master) pod version: jenkins/jenkins:2.289.3-jdk11<br/>
jenkins k8s agent (slave) pod version:  jenkins/inbound-agent:4.9-1-jdk11<br/>
Kubernetes plugin: 1.30.1
I'm using jenkins helm chart for my jenkins controller (master) with persistence EFS volume together with Kubernetes plugin with inbound-agent (jdk11) pods for my agents (slaves) over websocket connection
It seems that the Agent (slave) pods are unable to re-connect the controller (master) after a reboot to the controller (master).
It seems that the process exit with exit code 0 from some reason instead of reconnecting.
jenkins controller (master) log
jenkins agent (slave) log:
jenkins agent (slave) pod status:
NAME READY STATUS RESTARTS AGE jenkins-agent-3q3j5 1/2 NotReady 0 15m lastState: {} name: jnlp ready: false restartCount: 0 started: false state: terminated: containerID: docker://9b490eafd5078fa95cbd915bed16bcee767c1005a7a96158a2017d1551fba87b exitCode: 0 finishedAt: "2021-09-08T15:00:07Z" reason: Completed startedAt: "2021-09-08T14:53:19Z"inbound-agent conf
- name: JENKINS_SECRET value: 271983729187392173921798379281739821793b - name: JENKINS_AGENT_NAME value: jenkins-agent-3q3j5 - name: DOCKER_HOST value: tcp://localhost:2375 - name: JENKINS_WEB_SOCKET value: "true" - name: JAVA_OPTS value: -Xms512m -Xmx1500m - name: JENKINS_NAME value: jenkins-agent-3q3j5 - name: JENKINS_AGENT_WORKDIR value: /home/jenkins/agent - name: JENKINS_URL value: http://jenkins:8080/ - name: AWS_DEFAULT_REGION value: us-east-1 - name: AWS_REGION value: us-east-1 - name: AWS_ROLE_ARN value: arn:aws:iam::123456789:role/jenkins-agent-pod - name: AWS_WEB_IDENTITY_TOKEN_FILE value: /var/run/secrets/eks.amazonaws.com/serviceaccount/tokenjenkins agent (slave) pod process
/opt/java/openjdk/bin/java -Xms512m -Xmx1500m -cp /usr/share/jenkins/agent.jar hudson.remoting.jnlp.Main -headless -url http://jenkins:8080/ -workDir /home /jenkins/agent -webSocket 271983729187392173921798379281739821793b jenkins-agent-3q3j5same behavior in
It seems that this issue happens also on windows agent (slave)
might be related: https://issues.jenkins.io/browse/JENKINS-59910
Originally reported by dordor, imported from: WebSocket agent does not reconnect: ClassNotFoundException: jenkins.slaves.restarter.JnlpSlaveRestarterInstaller
Raw content of original issue
environment