Jenkins Windows VM Slave fails while connecting to Jenkins Master












0














I am a beginner to the kubernetes setup.



Here is the setup that we have - Jenkins Master running on kubernetes cluster - has only one kube node. The Jenkins application is exposed through a "NodePort" on pot 32083. The Jenkins master web UI is accessed through a VIP configured on port 32083. Hence the Jenkins URL at https:// is served through the VIP on port 32083.



I can access the Jenkins webui and it works as expected. I have configured external ubuntu slaves for handling the builds.These slaves work as expected.



I am now trying to configure an external windows VM as the slave.
All K8s, ubuntu slaves and windows slaves use JDK8



Here is the helm chart values.yaml for the UI port and the slavelistener.



ServicePort: 8080
ServiceType: NodePort
NodePort: 32083
ServiceAnnotations: {}
ContainerPort: 8080
SlaveListenerPort: 50000


Here is the config at the loadbalancer:



ltm virtual -50000 {
description -50000
destination :50000
ip-protocol tcp
mask x.x.x.x
pool pool--50000
profiles {
http-xforwarded-xproto-https { }
tcp { }
xxx-clientssl {
context clientside
}
}



ltm pool pool-xxxxx-50000 {
members {
:32083 {
address x.x.x.x
session monitor-enabled
state up
}
:32083 {
address x.x.x.x
session monitor-enabled
state up
}
}
monitor http
}



Here is the error I get when I try to launch the Java webstart slave JNLP from the windows VM



INFO: Protocol JNLP4-connect encountered an unexpected exception
java.util.concurrent.ExecutionException: org.jenkinsci.remoting.protocol
ConnectionRefusalException: Connection closed before acknowledgement sent
hudson.remoting.jnlp.Main$CuiListener status
INFO: Agent discovery successful
Agent address: xxxx
Agent port: 50000
Identity: xxxxx



hudson.remoting.jnlp.Main$CuiListener status
INFO: Handshaking
hudson.remoting.jnlp.Main$CuiListener status
INFO: Connecting to xxxx:50000
hudson.remoting.jnlp.Main$CuiListener status
INFO: Trying protocol: JNLP4-connect
hudson.remoting.jnlp.Main$CuiListener status
INFO: Protocol JNLP4-connect encountered an unexpected exception
java.util.concurrent.ExecutionException: org.jenkinsci.remoting.protocol.impl.ConnectionRefusalException: Connection closed before acknowledgement sent
at org.jenkinsci.remoting.util.SettableFuture.get(SettableFuture.java:22
3)
at hudson.remoting.Engine.innerRun(Engine.java:614)
at hudson.remoting.Engine.run(Engine.java:474)
Caused by: org.jenkinsci.remoting.protocol.impl.ConnectionRefusalException: Conn
ection closed before acknowledgement sent
at org.jenkinsci.remoting.protocol.impl.AckFilterLayer.onRecvClosed(AckF
ilterLayer.java:280)
at org.jenkinsci.remoting.protocol.ProtocolStack$Ptr.onRecvClosed(Protoc
olStack.java:816)



I have even changed the loadbalancer config to look like this



ltm pool pool--50000 {
members {
:50000 {
address x.x.x.x
session monitor-enabled
state up
}
:50000 {
address x.x.x.x
session monitor-enabled
state up
}
}
monitor http
}



Also set the -Dhudson.TcpSlaveAgentListener.hostName= during Jenkins start. Also set the "Tunnel connection through" to ":" in the Windows slave node configuration.



End up getting the same error as above every time. Any configuration at the Kubernetes setup or loadbalancer that I am missing here?










share|improve this question







New contributor




Rammy is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.

























    0














    I am a beginner to the kubernetes setup.



    Here is the setup that we have - Jenkins Master running on kubernetes cluster - has only one kube node. The Jenkins application is exposed through a "NodePort" on pot 32083. The Jenkins master web UI is accessed through a VIP configured on port 32083. Hence the Jenkins URL at https:// is served through the VIP on port 32083.



    I can access the Jenkins webui and it works as expected. I have configured external ubuntu slaves for handling the builds.These slaves work as expected.



    I am now trying to configure an external windows VM as the slave.
    All K8s, ubuntu slaves and windows slaves use JDK8



    Here is the helm chart values.yaml for the UI port and the slavelistener.



    ServicePort: 8080
    ServiceType: NodePort
    NodePort: 32083
    ServiceAnnotations: {}
    ContainerPort: 8080
    SlaveListenerPort: 50000


    Here is the config at the loadbalancer:



    ltm virtual -50000 {
    description -50000
    destination :50000
    ip-protocol tcp
    mask x.x.x.x
    pool pool--50000
    profiles {
    http-xforwarded-xproto-https { }
    tcp { }
    xxx-clientssl {
    context clientside
    }
    }



    ltm pool pool-xxxxx-50000 {
    members {
    :32083 {
    address x.x.x.x
    session monitor-enabled
    state up
    }
    :32083 {
    address x.x.x.x
    session monitor-enabled
    state up
    }
    }
    monitor http
    }



    Here is the error I get when I try to launch the Java webstart slave JNLP from the windows VM



    INFO: Protocol JNLP4-connect encountered an unexpected exception
    java.util.concurrent.ExecutionException: org.jenkinsci.remoting.protocol
    ConnectionRefusalException: Connection closed before acknowledgement sent
    hudson.remoting.jnlp.Main$CuiListener status
    INFO: Agent discovery successful
    Agent address: xxxx
    Agent port: 50000
    Identity: xxxxx



    hudson.remoting.jnlp.Main$CuiListener status
    INFO: Handshaking
    hudson.remoting.jnlp.Main$CuiListener status
    INFO: Connecting to xxxx:50000
    hudson.remoting.jnlp.Main$CuiListener status
    INFO: Trying protocol: JNLP4-connect
    hudson.remoting.jnlp.Main$CuiListener status
    INFO: Protocol JNLP4-connect encountered an unexpected exception
    java.util.concurrent.ExecutionException: org.jenkinsci.remoting.protocol.impl.ConnectionRefusalException: Connection closed before acknowledgement sent
    at org.jenkinsci.remoting.util.SettableFuture.get(SettableFuture.java:22
    3)
    at hudson.remoting.Engine.innerRun(Engine.java:614)
    at hudson.remoting.Engine.run(Engine.java:474)
    Caused by: org.jenkinsci.remoting.protocol.impl.ConnectionRefusalException: Conn
    ection closed before acknowledgement sent
    at org.jenkinsci.remoting.protocol.impl.AckFilterLayer.onRecvClosed(AckF
    ilterLayer.java:280)
    at org.jenkinsci.remoting.protocol.ProtocolStack$Ptr.onRecvClosed(Protoc
    olStack.java:816)



    I have even changed the loadbalancer config to look like this



    ltm pool pool--50000 {
    members {
    :50000 {
    address x.x.x.x
    session monitor-enabled
    state up
    }
    :50000 {
    address x.x.x.x
    session monitor-enabled
    state up
    }
    }
    monitor http
    }



    Also set the -Dhudson.TcpSlaveAgentListener.hostName= during Jenkins start. Also set the "Tunnel connection through" to ":" in the Windows slave node configuration.



    End up getting the same error as above every time. Any configuration at the Kubernetes setup or loadbalancer that I am missing here?










    share|improve this question







    New contributor




    Rammy is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
    Check out our Code of Conduct.























      0












      0








      0







      I am a beginner to the kubernetes setup.



      Here is the setup that we have - Jenkins Master running on kubernetes cluster - has only one kube node. The Jenkins application is exposed through a "NodePort" on pot 32083. The Jenkins master web UI is accessed through a VIP configured on port 32083. Hence the Jenkins URL at https:// is served through the VIP on port 32083.



      I can access the Jenkins webui and it works as expected. I have configured external ubuntu slaves for handling the builds.These slaves work as expected.



      I am now trying to configure an external windows VM as the slave.
      All K8s, ubuntu slaves and windows slaves use JDK8



      Here is the helm chart values.yaml for the UI port and the slavelistener.



      ServicePort: 8080
      ServiceType: NodePort
      NodePort: 32083
      ServiceAnnotations: {}
      ContainerPort: 8080
      SlaveListenerPort: 50000


      Here is the config at the loadbalancer:



      ltm virtual -50000 {
      description -50000
      destination :50000
      ip-protocol tcp
      mask x.x.x.x
      pool pool--50000
      profiles {
      http-xforwarded-xproto-https { }
      tcp { }
      xxx-clientssl {
      context clientside
      }
      }



      ltm pool pool-xxxxx-50000 {
      members {
      :32083 {
      address x.x.x.x
      session monitor-enabled
      state up
      }
      :32083 {
      address x.x.x.x
      session monitor-enabled
      state up
      }
      }
      monitor http
      }



      Here is the error I get when I try to launch the Java webstart slave JNLP from the windows VM



      INFO: Protocol JNLP4-connect encountered an unexpected exception
      java.util.concurrent.ExecutionException: org.jenkinsci.remoting.protocol
      ConnectionRefusalException: Connection closed before acknowledgement sent
      hudson.remoting.jnlp.Main$CuiListener status
      INFO: Agent discovery successful
      Agent address: xxxx
      Agent port: 50000
      Identity: xxxxx



      hudson.remoting.jnlp.Main$CuiListener status
      INFO: Handshaking
      hudson.remoting.jnlp.Main$CuiListener status
      INFO: Connecting to xxxx:50000
      hudson.remoting.jnlp.Main$CuiListener status
      INFO: Trying protocol: JNLP4-connect
      hudson.remoting.jnlp.Main$CuiListener status
      INFO: Protocol JNLP4-connect encountered an unexpected exception
      java.util.concurrent.ExecutionException: org.jenkinsci.remoting.protocol.impl.ConnectionRefusalException: Connection closed before acknowledgement sent
      at org.jenkinsci.remoting.util.SettableFuture.get(SettableFuture.java:22
      3)
      at hudson.remoting.Engine.innerRun(Engine.java:614)
      at hudson.remoting.Engine.run(Engine.java:474)
      Caused by: org.jenkinsci.remoting.protocol.impl.ConnectionRefusalException: Conn
      ection closed before acknowledgement sent
      at org.jenkinsci.remoting.protocol.impl.AckFilterLayer.onRecvClosed(AckF
      ilterLayer.java:280)
      at org.jenkinsci.remoting.protocol.ProtocolStack$Ptr.onRecvClosed(Protoc
      olStack.java:816)



      I have even changed the loadbalancer config to look like this



      ltm pool pool--50000 {
      members {
      :50000 {
      address x.x.x.x
      session monitor-enabled
      state up
      }
      :50000 {
      address x.x.x.x
      session monitor-enabled
      state up
      }
      }
      monitor http
      }



      Also set the -Dhudson.TcpSlaveAgentListener.hostName= during Jenkins start. Also set the "Tunnel connection through" to ":" in the Windows slave node configuration.



      End up getting the same error as above every time. Any configuration at the Kubernetes setup or loadbalancer that I am missing here?










      share|improve this question







      New contributor




      Rammy is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.











      I am a beginner to the kubernetes setup.



      Here is the setup that we have - Jenkins Master running on kubernetes cluster - has only one kube node. The Jenkins application is exposed through a "NodePort" on pot 32083. The Jenkins master web UI is accessed through a VIP configured on port 32083. Hence the Jenkins URL at https:// is served through the VIP on port 32083.



      I can access the Jenkins webui and it works as expected. I have configured external ubuntu slaves for handling the builds.These slaves work as expected.



      I am now trying to configure an external windows VM as the slave.
      All K8s, ubuntu slaves and windows slaves use JDK8



      Here is the helm chart values.yaml for the UI port and the slavelistener.



      ServicePort: 8080
      ServiceType: NodePort
      NodePort: 32083
      ServiceAnnotations: {}
      ContainerPort: 8080
      SlaveListenerPort: 50000


      Here is the config at the loadbalancer:



      ltm virtual -50000 {
      description -50000
      destination :50000
      ip-protocol tcp
      mask x.x.x.x
      pool pool--50000
      profiles {
      http-xforwarded-xproto-https { }
      tcp { }
      xxx-clientssl {
      context clientside
      }
      }



      ltm pool pool-xxxxx-50000 {
      members {
      :32083 {
      address x.x.x.x
      session monitor-enabled
      state up
      }
      :32083 {
      address x.x.x.x
      session monitor-enabled
      state up
      }
      }
      monitor http
      }



      Here is the error I get when I try to launch the Java webstart slave JNLP from the windows VM



      INFO: Protocol JNLP4-connect encountered an unexpected exception
      java.util.concurrent.ExecutionException: org.jenkinsci.remoting.protocol
      ConnectionRefusalException: Connection closed before acknowledgement sent
      hudson.remoting.jnlp.Main$CuiListener status
      INFO: Agent discovery successful
      Agent address: xxxx
      Agent port: 50000
      Identity: xxxxx



      hudson.remoting.jnlp.Main$CuiListener status
      INFO: Handshaking
      hudson.remoting.jnlp.Main$CuiListener status
      INFO: Connecting to xxxx:50000
      hudson.remoting.jnlp.Main$CuiListener status
      INFO: Trying protocol: JNLP4-connect
      hudson.remoting.jnlp.Main$CuiListener status
      INFO: Protocol JNLP4-connect encountered an unexpected exception
      java.util.concurrent.ExecutionException: org.jenkinsci.remoting.protocol.impl.ConnectionRefusalException: Connection closed before acknowledgement sent
      at org.jenkinsci.remoting.util.SettableFuture.get(SettableFuture.java:22
      3)
      at hudson.remoting.Engine.innerRun(Engine.java:614)
      at hudson.remoting.Engine.run(Engine.java:474)
      Caused by: org.jenkinsci.remoting.protocol.impl.ConnectionRefusalException: Conn
      ection closed before acknowledgement sent
      at org.jenkinsci.remoting.protocol.impl.AckFilterLayer.onRecvClosed(AckF
      ilterLayer.java:280)
      at org.jenkinsci.remoting.protocol.ProtocolStack$Ptr.onRecvClosed(Protoc
      olStack.java:816)



      I have even changed the loadbalancer config to look like this



      ltm pool pool--50000 {
      members {
      :50000 {
      address x.x.x.x
      session monitor-enabled
      state up
      }
      :50000 {
      address x.x.x.x
      session monitor-enabled
      state up
      }
      }
      monitor http
      }



      Also set the -Dhudson.TcpSlaveAgentListener.hostName= during Jenkins start. Also set the "Tunnel connection through" to ":" in the Windows slave node configuration.



      End up getting the same error as above every time. Any configuration at the Kubernetes setup or loadbalancer that I am missing here?







      jnlp






      share|improve this question







      New contributor




      Rammy is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.











      share|improve this question







      New contributor




      Rammy is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.









      share|improve this question




      share|improve this question






      New contributor




      Rammy is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.









      asked 21 hours ago









      Rammy

      1




      1




      New contributor




      Rammy is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.





      New contributor





      Rammy is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.






      Rammy is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.






















          0






          active

          oldest

          votes











          Your Answer








          StackExchange.ready(function() {
          var channelOptions = {
          tags: "".split(" "),
          id: "3"
          };
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function() {
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled) {
          StackExchange.using("snippets", function() {
          createEditor();
          });
          }
          else {
          createEditor();
          }
          });

          function createEditor() {
          StackExchange.prepareEditor({
          heartbeatType: 'answer',
          autoActivateHeartbeat: false,
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader: {
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          },
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          });


          }
          });






          Rammy is a new contributor. Be nice, and check out our Code of Conduct.










          draft saved

          draft discarded


















          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f1390410%2fjenkins-windows-vm-slave-fails-while-connecting-to-jenkins-master%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown

























          0






          active

          oldest

          votes








          0






          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes








          Rammy is a new contributor. Be nice, and check out our Code of Conduct.










          draft saved

          draft discarded


















          Rammy is a new contributor. Be nice, and check out our Code of Conduct.













          Rammy is a new contributor. Be nice, and check out our Code of Conduct.












          Rammy is a new contributor. Be nice, and check out our Code of Conduct.
















          Thanks for contributing an answer to Super User!


          • Please be sure to answer the question. Provide details and share your research!

          But avoid



          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.


          To learn more, see our tips on writing great answers.





          Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


          Please pay close attention to the following guidance:


          • Please be sure to answer the question. Provide details and share your research!

          But avoid



          • Asking for help, clarification, or responding to other answers.

          • Making statements based on opinion; back them up with references or personal experience.


          To learn more, see our tips on writing great answers.




          draft saved


          draft discarded














          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f1390410%2fjenkins-windows-vm-slave-fails-while-connecting-to-jenkins-master%23new-answer', 'question_page');
          }
          );

          Post as a guest















          Required, but never shown





















































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown

































          Required, but never shown














          Required, but never shown












          Required, but never shown







          Required, but never shown







          Popular posts from this blog

          How to reconfigure Docker Trusted Registry 2.x.x to use CEPH FS mount instead of NFS and other traditional...

          is 'sed' thread safe

          How to make a Squid Proxy server?