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

Jenkins slave agent cannot be run as a service

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: Minor
    • Resolution: Fixed
    • Component/s: core, remoting
    • Labels:
    • Environment:
      Jenkins v2.77 on Windows 7 with Oracle Java jre 1.8.0_144
    • Similar Issues:

      Description

      I just upgraded to Jenkins 2.77 on our Windows 7 VM. I have a Jenkins slave agent installed on another windows 7 VM. When I upgraded, the Jenkins web config UI also prompted me to disable 2 deprecated jnlp-2 protocols.However, now it is not possible to start the slave agent from a Windows service. I have to start it by clicking the Launch button in the Jenkins web UI.

      After I launched the slave from the web UI, I selected the option in the Java window to install the slave agent as a service. However, when I try to start the slave agent from the service, it says it's started but the Jenkins web UI indicates that it is not started.

      I've tried running the slave agent launch command from the command line, by using the command given in the Jenkins UI, and I got the errors indicated in the attached screenshot, relating to jnlp-2 protocol connect errors.  So there's a mismatch somewhere, if that command is still looking for the jnlp-2 protocol.

      I've also attached the slave.exe file.

       

        Attachments

          Issue Links

            Activity

            Hide
            annetteso Annette Sohor added a comment - - edited

            Thanks Oleg.

            I upgraded to Jenkins 2.78 on the master while the slave was connected.

            I can see from the timestamp that jenkins-slave.exe was updated, but the slave.jar has not been updated since 2015. It probably needs to be updated?

            I can't see far back enough in the system log in the Jenkins web UI at this stage to see info about the upgrade.

            So, it looks like the slave update is not complete - do I need to do it manually?

            The slave agent runs fine if I start it by clicking the launch button in the UI, so I'm puzzled as to why I can't run it as a service. Installing it as a service from the Java slave agent window does not work. It installs the service, but starting the service does not start the slave agent.

            Show
            annetteso Annette Sohor added a comment - - edited Thanks Oleg. I upgraded to Jenkins 2.78 on the master while the slave was connected. I can see from the timestamp that jenkins-slave.exe was updated, but the slave.jar has not been updated since 2015. It probably needs to be updated? I can't see far back enough in the system log in the Jenkins web UI at this stage to see info about the upgrade. So, it looks like the slave update is not complete - do I need to do it manually? The slave agent runs fine if I start it by clicking the launch button in the UI, so I'm puzzled as to why I can't run it as a service. Installing it as a service from the Java slave agent window does not work. It installs the service, but starting the service does not start the slave agent.
            Hide
            oleg_nenashev Oleg Nenashev added a comment -

            > So, it looks like the slave update is not complete - do I need to do it manually?

            Please see the upgrade guide referenced above. Yes, you need to do it manually

            > The slave agent runs fine if I start it by clicking the launch button in the UI, so I'm puzzled as to why I can't run it as a service. Installing it as a service from the Java slave agent window does not work. It installs the service, but starting the service does not start the slave agent.

            Is it the issue referenced in the ticket description or another one?

            Show
            oleg_nenashev Oleg Nenashev added a comment - > So, it looks like the slave update is not complete - do I need to do it manually? Please see the upgrade guide referenced above. Yes, you need to do it manually > The slave agent runs fine if I start it by clicking the launch button in the UI, so I'm puzzled as to why I can't run it as a service. Installing it as a service from the Java slave agent window does not work. It installs the service, but starting the service does not start the slave agent. Is it the issue referenced in the ticket description or another one?
            Hide
            annetteso Annette Sohor added a comment -

            Hi Oleg, yes I mentioned that installing the service from the Java slave agent window does not work in the 2nd para of my original description in this ticket:

            "After I launched the slave from the web UI, I selected the option in the Java window to install the slave agent as a service. However, when I try to start the slave agent from the service, it says it's started but the Jenkins web UI indicates that it is not started."

            Show
            annetteso Annette Sohor added a comment - Hi Oleg, yes I mentioned that installing the service from the Java slave agent window does not work in the 2nd para of my original description in this ticket: "After I launched the slave from the web UI, I selected the option in the Java window to install the slave agent as a service. However, when I try to start the slave agent from the service, it says it's started but the Jenkins web UI indicates that it is not started."
            Hide
            annetteso Annette Sohor added a comment -

            Hi, a colleague of mine managed to resolve this issue. The folder that the original slave agent was installed in was locked, so when we installed the new slave agent as a service from the Java window, it couldn't update the files correctly. We renamed the old C:\JK folder to allow the slave service to be installed correctly and create a new JK folder. The Jenkins slave service is working fine now.

            Show
            annetteso Annette Sohor added a comment - Hi, a colleague of mine managed to resolve this issue. The folder that the original slave agent was installed in was locked, so when we installed the new slave agent as a service from the Java window, it couldn't update the files correctly. We renamed the old C:\JK folder to allow the slave service to be installed correctly and create a new JK folder. The Jenkins slave service is working fine now.
            Hide
            annetteso Annette Sohor added a comment -

            See fix in my latest comment.

            Show
            annetteso Annette Sohor added a comment - See fix in my latest comment.

              People

              • Assignee:
                oleg_nenashev Oleg Nenashev
                Reporter:
                annetteso Annette Sohor
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: