Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-51818

Slave can`t connect via JNLP if Jenkins behind the balancer

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved (View Workflow)
    • Priority: Major
    • Resolution: Fixed
    • Component/s: remoting
    • Labels:
    • Environment:
      Jenkins behind the balancer; Docker; Yet another docker plugin;
    • Similar Issues:

      Description

      Our Jenkins server has multiple addresses (local 10.206.x.x and public via balanser ). The load balancer doesn’t allow any traffic except ports 80 and 443 through, so we have to connect to Docker JNLP containers by yet-another-docker-plugin.
      JENKINS_URL variable is set to private URL without balanser. But each time slave try connect to host via balanser host name. Because via JNLP slave recieve two URLs (local 10.206.x.x and public balanser name), them list of Jenkins URL set to
      JnlpAgentEndpointResolver. Resolve method return JnlpAgentEndpoint for first available via http(s) (in list first element usual is default Jenkins URL) . But Engine can not be created because JNLP port is not available from slave. If reconnect oprion is enabled slave again try use firs address to create JNLP connection and again port is unreachable.

        Attachments

          Issue Links

            Activity

            Hide
            denami Andrei Laptsinski added a comment -

            Fix pull request: https://github.com/jenkinsci/remoting/pull/275 

            Added check for port availability. 

            Show
            denami Andrei Laptsinski added a comment - Fix pull request: https://github.com/jenkinsci/remoting/pull/275   Added check for port availability. 
            Hide
            oleg_nenashev Oleg Nenashev added a comment -

            Will close it once it is in the core

            Show
            oleg_nenashev Oleg Nenashev added a comment - Will close it once it is in the core
            Hide
            oleg_nenashev Oleg Nenashev added a comment -

            Extra diagnostics has been added to Remoting 3.22 and Jenkins 2.129

            Show
            oleg_nenashev Oleg Nenashev added a comment - Extra diagnostics has been added to Remoting 3.22 and Jenkins 2.129

              People

              • Assignee:
                denami Andrei Laptsinski
                Reporter:
                denami Andrei Laptsinski
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: