LoginSignup
4

More than 5 years have passed since last update.

CentOS7にインストールしたJenkinsにWindows PCを接続する

Last updated at Posted at 2017-07-10

CentOS7にインストールしたJenkinsにWindows PCをSlave接続しようとした際にいろいろ引っかかったのでメモ。

Jenkins -> グローバルセキュリティの設定
Enable Agent -> Master Access Controlをチェック

ノードを作って、起動方法を「WindowsサービスとしてこのWindowsスレーブを制御」にする

スレーブにするPCにはJavaとDotNet3.5をインストールしておく。

管理者のユーザー名、パスワードにスレーブにするPCのAdministratorグループのユーザー情報を入力
ホストにスレーブにするPC名を入力
サービスを実行するユーザーにUse Administrator account given aboveを選択

この時点のエラー
ERROR: Message not found for errorCode: 0xC0000034
org.jinterop.dcom.common.JIException: Message not found for errorCode: 0xC0000034

スレーブPCでRemote Registry Srviceが起動していない。
「サービス」を起動し、Remote Registryのプロパティを開き、[スタートアップの種類:自動]に設定
右クリックして「開始」

この時点のエラー
ERROR: [2017-07-10 14:40:45] [windows-slaves] アクセスは拒否されました。解決方法の詳細については、http://wiki.jenkins-ci.org/display/JENKINS/Windows+slaves+fail+to+start+via+DCOM を参照してください。
org.jinterop.dcom.common.JIException: Message not found for errorCode: 0x00000005

リンクを参考にファイアーウォールの設定をします。
https://wiki.jenkins.io/display/JA/Windows+slaves+fail+to+start+via+DCOM

この時点のエラー
ERROR: Message not found for errorCode: 0xC0000001
org.jinterop.dcom.common.JIException: Message not found for errorCode: 0xC0000001
at org.jinterop.winreg.smb.JIWinRegStub.winreg_OpenHKCR(JIWinRegStub.java:121)

リンクを参考にレジストリの設定をします。
https://issues.jenkins-ci.org/browse/JENKINS-16418
具体的には
HKEY_CLASSES_ROOT\CLSID{76A64158-CB41-11D1-8B02-00600806D9B6}
のOwnerをJenkinsで使うユーザーに変更し、そのユーザーのフルコントロールにする。
該当のエントリを右クリックし、「アクセス許可」->「詳細設定」->Ownerを変更
変更したオーナーをフルコントロールに設定

この時点のエラー
ERROR: Unexpected error in launching an agent. This is probably a bug in Jenkins
org.jinterop.dcom.common.JIException: Service Logon Failure
at org.jvnet.hudson.wmi.Win32Service$Implementation.start(Win32Service.java:149)
Caused: java.lang.reflect.InvocationTargetException

スレーブのPCでServiceを開き、該当するjenkinsslaveのサービスのログオン情報をスレーブ用のものに設定しなおす。

これでスレーブとして接続されるようになりました。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4