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

Slaves cannot be started using Windows Service on Windows Server 2008 x64

    • Icon: Bug Bug
    • Resolution: Won't Fix
    • Icon: Major Major
    • windows-slaves-plugin
    • None
    • Platform: All, OS: Windows XP

      Slave OS: Windows Server 2008 x64
      (This seems to be valid also for Vista64)

      Repro steps:
      1. On the Hudson master, create a slave pointing to a machine running Windows
      Server 2008 x64 (This seem to be valid also for Vista64)
      2. Choose to let Hudson control the slave as a Windows Service
      3. Click the "Launch slave" button on the slave page on the Hudson Master

      Result: Hudson cannot control the slave. Stack trace below.

      Expected: That Hudson can control the slave properly.

      N.B. the slave adheres to the info on the following URL
      (http://wiki.jenkins-ci.org/display/JENKINS/Windows+slaves+fail+to+start+via+DCOM)

      Stack Trace:
      ============

      Connecting to qa-w2k8x64-01
      
      Access is denied. See
      http://wiki.jenkins-ci.org/display/JENKINS/Windows+slaves+fail+to+start+via+DCOM
      for more information about how to resolve this.
      
      org.jinterop.dcom.common.JIException: Access is denied, please check whether the
      [domain-username-password] are correct. Also, if not already done please check
      the GETTING STARTED and FAQ sections in readme.htm. They provide information on
      how to correctly configure the Windows machine for DCOM access, so as to avoid
      such exceptions.  [0x00000005]
      
      	at org.jinterop.winreg.smb.JIWinRegStub.winreg_CreateKey(JIWinRegStub.java:297)
      	at org.jinterop.dcom.core.JIComServer.initialise(JIComServer.java:480)
      	at org.jinterop.dcom.core.JIComServer.<init>(JIComServer.java:427)
      	at org.jvnet.hudson.wmi.WMI.connect(WMI.java:41)
      	at hudson.os.windows.ManagedWindowsServiceLauncher.launch(ManagedWindowsServiceLauncher.java:107)
      	at hudson.slaves.SlaveComputer$1.call(SlaveComputer.java:178)
      	at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
      	at java.util.concurrent.FutureTask.run(Unknown Source)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
      	at java.lang.Thread.run(Unknown Source)
      Caused by: org.jinterop.dcom.common.JIRuntimeException: Access is denied, please
      check whether the [domain-username-password] are correct. Also, if not already
      done please check the GETTING STARTED and FAQ sections in readme.htm. They
      provide information on how to correctly configure the Windows machine for DCOM
      access, so as to avoid such exceptions.  [0x00000005]
      	at org.jinterop.winreg.IJIWinReg$createKey.read(IJIWinReg.java:459)
      	at ndr.NdrObject.decode(NdrObject.java:19)
      	at rpc.ConnectionOrientedEndpoint.call(ConnectionOrientedEndpoint.java:138)
      	at rpc.Stub.call(Stub.java:112)
      	at org.jinterop.winreg.smb.JIWinRegStub.winreg_CreateKey(JIWinRegStub.java:291)
      	... 10 more
      

          [JENKINS-4859] Slaves cannot be started using Windows Service on Windows Server 2008 x64

          perostman created issue -
          Kohsuke Kawaguchi made changes -
          Description Original: Slave OS: Windows Server 2008 x64
          (This seems to be valid also for Vista64)

          Repro steps:
          1. On the Hudson master, create a slave pointing to a machine running Windows
          Server 2008 x64 (This seem to be valid also for Vista64)
          2. Choose to let Hudson control the slave as a Windows Service
          3. Click the "Launch slave" button on the slave page on the Hudson Master

          Result: Hudson cannot control the slave. Stack trace below.

          Expected: That Hudson can control the slave properly.

          N.B. the slave adheres to the info on the following URL
          (http://wiki.jenkins-ci.org/display/JENKINS/Windows+slaves+fail+to+start+via+DCOM)

          Stack Trace:
          ============

          Connecting to qa-w2k8x64-01

          Access is denied. See
          http://wiki.jenkins-ci.org/display/JENKINS/Windows+slaves+fail+to+start+via+DCOM
          for more information about how to resolve this.

          org.jinterop.dcom.common.JIException: Access is denied, please check whether the
          [domain-username-password] are correct. Also, if not already done please check
          the GETTING STARTED and FAQ sections in readme.htm. They provide information on
          how to correctly configure the Windows machine for DCOM access, so as to avoid
          such exceptions. [0x00000005]

          at org.jinterop.winreg.smb.JIWinRegStub.winreg_CreateKey(JIWinRegStub.java:297)

          at org.jinterop.dcom.core.JIComServer.initialise(JIComServer.java:480)

          at org.jinterop.dcom.core.JIComServer.<init>(JIComServer.java:427)

          at org.jvnet.hudson.wmi.WMI.connect(WMI.java:41)

          at
          hudson.os.windows.ManagedWindowsServiceLauncher.launch(ManagedWindowsServiceLauncher.java:107)

          at hudson.slaves.SlaveComputer$1.call(SlaveComputer.java:178)

          at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)

          at java.util.concurrent.FutureTask.run(Unknown Source)

          at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)

          at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)

          at java.lang.Thread.run(Unknown Source)

          Caused by: org.jinterop.dcom.common.JIRuntimeException: Access is denied, please
          check whether the [domain-username-password] are correct. Also, if not already
          done please check the GETTING STARTED and FAQ sections in readme.htm. They
          provide information on how to correctly configure the Windows machine for DCOM
          access, so as to avoid such exceptions. [0x00000005]

          at org.jinterop.winreg.IJIWinReg$createKey.read(IJIWinReg.java:459)

          at ndr.NdrObject.decode(NdrObject.java:19)

          at rpc.ConnectionOrientedEndpoint.call(ConnectionOrientedEndpoint.java:138)

          at rpc.Stub.call(Stub.java:112)

          at org.jinterop.winreg.smb.JIWinRegStub.winreg_CreateKey(JIWinRegStub.java:291)

          ... 10 more
          New: Slave OS: Windows Server 2008 x64
          (This seems to be valid also for Vista64)

          Repro steps:
          1. On the Hudson master, create a slave pointing to a machine running Windows
          Server 2008 x64 (This seem to be valid also for Vista64)
          2. Choose to let Hudson control the slave as a Windows Service
          3. Click the "Launch slave" button on the slave page on the Hudson Master

          Result: Hudson cannot control the slave. Stack trace below.

          Expected: That Hudson can control the slave properly.

          N.B. the slave adheres to the info on the following URL
          (http://wiki.jenkins-ci.org/display/JENKINS/Windows+slaves+fail+to+start+via+DCOM)

          Stack Trace:
          ============

          {noformat}
          Connecting to qa-w2k8x64-01

          Access is denied. See
          http://wiki.jenkins-ci.org/display/JENKINS/Windows+slaves+fail+to+start+via+DCOM
          for more information about how to resolve this.

          org.jinterop.dcom.common.JIException: Access is denied, please check whether the
          [domain-username-password] are correct. Also, if not already done please check
          the GETTING STARTED and FAQ sections in readme.htm. They provide information on
          how to correctly configure the Windows machine for DCOM access, so as to avoid
          such exceptions. [0x00000005]

          at org.jinterop.winreg.smb.JIWinRegStub.winreg_CreateKey(JIWinRegStub.java:297)
          at org.jinterop.dcom.core.JIComServer.initialise(JIComServer.java:480)
          at org.jinterop.dcom.core.JIComServer.<init>(JIComServer.java:427)
          at org.jvnet.hudson.wmi.WMI.connect(WMI.java:41)
          at hudson.os.windows.ManagedWindowsServiceLauncher.launch(ManagedWindowsServiceLauncher.java:107)
          at hudson.slaves.SlaveComputer$1.call(SlaveComputer.java:178)
          at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
          at java.util.concurrent.FutureTask.run(Unknown Source)
          at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
          at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
          at java.lang.Thread.run(Unknown Source)
          Caused by: org.jinterop.dcom.common.JIRuntimeException: Access is denied, please
          check whether the [domain-username-password] are correct. Also, if not already
          done please check the GETTING STARTED and FAQ sections in readme.htm. They
          provide information on how to correctly configure the Windows machine for DCOM
          access, so as to avoid such exceptions. [0x00000005]
          at org.jinterop.winreg.IJIWinReg$createKey.read(IJIWinReg.java:459)
          at ndr.NdrObject.decode(NdrObject.java:19)
          at rpc.ConnectionOrientedEndpoint.call(ConnectionOrientedEndpoint.java:138)
          at rpc.Stub.call(Stub.java:112)
          at org.jinterop.winreg.smb.JIWinRegStub.winreg_CreateKey(JIWinRegStub.java:291)
          ... 10 more
          {noformat}

          Can you describe the set up of your Windows 2008 server a bit more? Is it in a domain? A domain controller itself?

          The error is "Access denied" when trying to access the registry from a remote machine. Can you think of anything that might have affected that?

          Kohsuke Kawaguchi added a comment - Can you describe the set up of your Windows 2008 server a bit more? Is it in a domain? A domain controller itself? The error is "Access denied" when trying to access the registry from a remote machine. Can you think of anything that might have affected that?

          samiph added a comment -

          We have the same problem. Here's some info about our setup:

          • Windows Server 2008 R2 Standard x64
          • Slave server is in domain (subdomain of the master Hudson's domain)
          • Not a domain controller
          • User defined in the slave configuration is Administrator of the slave's domain
          • UAC is disabled (there was another error when it was enabled)
          • Remote Registry service is on

          samiph added a comment - We have the same problem. Here's some info about our setup: Windows Server 2008 R2 Standard x64 Slave server is in domain (subdomain of the master Hudson's domain) Not a domain controller User defined in the slave configuration is Administrator of the slave's domain UAC is disabled (there was another error when it was enabled) Remote Registry service is on

          perostman added a comment -
          • Windows Server 2008 R2 Enterprise x64
          • Slave server is in same domain as the master Hudson, not a domain controller.
          • UAC disabled.
          • Remote Registry Service on

          Note that I have it working fine on Windows 2008 Server Standard x64

          perostman added a comment - Windows Server 2008 R2 Enterprise x64 Slave server is in same domain as the master Hudson, not a domain controller. UAC disabled. Remote Registry Service on Note that I have it working fine on Windows 2008 Server Standard x64

          pprochazka added a comment -

          We have the same problem. Configuration of environment:
          Server:

          • Hudson server running in Tomcat 6.0 on SLES 11 (amd64)
          • Server is not in domain

          Agent:

          • Windows Server 2008 R2 Standard (x64)
          • Server is in domain (using company domain controller)
          • Local account with Administrators privileges
          • Remote registry running
          • Firewall disabled

          I try connect remotely to Computer Management and Remote Registry. Both operation was successfully.

          pprochazka added a comment - We have the same problem. Configuration of environment: Server: Hudson server running in Tomcat 6.0 on SLES 11 (amd64) Server is not in domain Agent: Windows Server 2008 R2 Standard (x64) Server is in domain (using company domain controller) Local account with Administrators privileges Remote registry running Firewall disabled I try connect remotely to Computer Management and Remote Registry. Both operation was successfully.

          daav added a comment -

          Seems to occur also on Windows 7 x64
          cf JENKINS-4929

          daav added a comment - Seems to occur also on Windows 7 x64 cf JENKINS-4929

          nuncanada added a comment -

          I have found out the problem, the Remote Registry user, in my case "LOCAL SERVICE", didn't have read access to the registry key HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurePipeServers\winreg in the slave.

          nuncanada added a comment - I have found out the problem, the Remote Registry user, in my case "LOCAL SERVICE", didn't have read access to the registry key HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurePipeServers\winreg in the slave.

          nuncanada added a comment -

          This problem happens because of a "strange" permission configuration on the slave side where the user running the Remote Registry service isn't able to read the registry entries which restrict the remote accessible registry paths, more specifically the children of
          HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurePipeServers\winreg

          nuncanada added a comment - This problem happens because of a "strange" permission configuration on the slave side where the user running the Remote Registry service isn't able to read the registry entries which restrict the remote accessible registry paths, more specifically the children of HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurePipeServers\winreg
          nuncanada made changes -
          Assignee New: nuncanada [ nuncanada ]
          Resolution New: Not A Defect [ 7 ]
          Status Original: Open [ 1 ] New: Resolved [ 5 ]

            nuncanada nuncanada
            perostman perostman
            Votes:
            13 Vote for this issue
            Watchers:
            20 Start watching this issue

              Created:
              Updated:
              Resolved: