Jenkinsスレーブとの接続ポートを固定する方法

More than 3 years have passed since last update.


はじめに


  • jenkinsのスレーブとしてWindowsマシンをjenkinsのマスターに接続するにはスレーブ側からマスターへ接続する必要がある

  • 接続先のポートはデフォルトではマスターの再起動の度にランダムで変わってしまう

  • マスターの再起動はマスター側の不調やインストールしたプラグインを適用したり色々な場面で必要になる

  • その度にiptablesの設定を書き換えたりするのは面倒くさいので、ポートを固定する方法をご紹介します


確認した環境


  • jenkinsマスター : centOS 6.4

  • jenkinsスレーブ : Windows8

  • jenkinsのバージョン : 1.517


jenkins側の設定


  • [jenkins] -> [Jenkinsの管理] -> [グローバルセキュリティの設定]で設定ページを開く

  • セキュリティを有効化にチェック -> JNLPスレーブ用TCPポート番号で固定を選択して任意のポート(例:9000)を入れる


jenkinsマスターのiptablesの設定


  • /etc/sysconfig/iptablesに以下を追加

-A INPUT -p tcp -m state --state NEW -m tcp --dport 9000 -j ACCEPT


  • iptablesの再起動

sudo /etc/init.d/iptables restart


マスターと接続


  • スレーブ側からjenkinsのホームを開く

  • [jenkins] -> [Jenkinsの管理] -> [ノードの管理] -> 対象のスレーブを選択

  • あとはコマンドライン実行 or LaunchボタンクリックでConected!と出れば接続完了


~ただの宣伝~


  • 全国のSeleniumer必読

  • Seleniumerといっていますが、Selenium, SauceLabs, Travis, Jenkinsに関するノウハウ書いているのでよかったら参考にしてみてください