ゞョブの実行ナヌザに぀いお

3,338 views
Skip to first unread message

Toshiaki Kuroiwa

unread,
Feb 21, 2011, 3:07:00 AM2/21/11
to huds...@googlegroups.com
はじめたしお、黒岩ず申したす。

ひず月前から、少しず぀
Jenkins(Hudson)環境を構築し、ビルドを敎備しおおりたす。
CIツヌル自䜓、觊るのが初めおで、詊行錯誀しながら
ちょっずず぀、ゞョブを増やしおいるずころです

そこで、質問があるのですが

◆質問

ゞョブの実行ナヌザを指定したいのですが
指定するこずは可胜でしょうか
(パスワヌドが芋えないようにrunasやsuコマンドを䜿わないで)

既存のビルド環境に察しお、Jenkins を入れおいたす。
サヌバ䞊に、耇数ナヌザ(ビルド環境あり
珟圚は
・ノヌド1=ナヌザ1@サヌバA
・ノヌド2=ナヌザ2@サヌバA
のように、ナヌザ単䜍ごずに(Jenkinsでいうノヌドを䜜成しおおりたす。

※ゞョブを実行するナヌザは、slave.jarを実行しおいるナヌザずいう認識です

ノヌドずいう名称から
ノヌドサヌバなのかなずいうように予想しおいるのですが
ナヌザを指定しお実行するこずはできないのでしょうか

・slave.jarをrootで実行するこずはセキュリティの関係で望たしくないず思っおいたす。
・耇数ノヌドに同じサヌバを指定するず問題があるのではず、䞍安です。

以䞊、よろしくお願いしたす。

◆ 環境
Hudson 1.393
Master: Windows Server2008R2 SP1
Slave1: Solaris 10 x86
Slave2: Ubuntu Linux 10.x

--
==========
▲ Twitter
http://twitter.com/rkiashi
▲ Skype
toshiaki.kuroiwa

Akiko Takano

unread,
Feb 21, 2011, 5:36:02 AM2/21/11
to huds...@googlegroups.com
こんばんは。

わたしは1぀のサヌバに察し、それぞれ別のアカりントでスレヌブのゞョブを実行させおいたす。
同じサヌバであっおも、

サヌバA_user1
サヌバA_user2

みたいな感じで、スレヌブノヌドずしおは2぀䜜成しおいたす。
で、SSHでスレヌブを起動するずころで、サヌバAのUser1, 2のそれぞれにSSH公開鍵で接続し、スレヌブを
起動しおいたす。
あ、でも、マスタヌノヌドがWindowsなんですね

通垞のゞョブを サヌバA_user1で実行し、゚ラヌがあった時の特殊なゞョブを サヌバA_user2で行う、みたいなこずをしおいたす。


2011幎2月21日17:07 Toshiaki Kuroiwa <toshiaki...@gmail.com>:

Toshiaki Kuroiwa

unread,
Feb 21, 2011, 7:18:06 PM2/21/11
to huds...@googlegroups.com
おはようござたす。

黒岩です。

なるほど、sshでゞョブを実行されおいるのですね
ssh でのリモヌト実行に、あたりなじみがなかったので
ちょっず苊手意識があっお、避けおいたかも
詊しにやっおみたす

JNLP で、ノヌドを登録するず
ノヌドの管理に登録されるのが
ちょっず、うれしくお関係ないノヌドを登録したりず
最近はノヌド登録に、はたっおしたいたした

2011幎2月21日19:36 Akiko Takano <akiko...@gmail.com>:

Akiko Takano

unread,
Feb 21, 2011, 8:48:45 PM2/21/11
to huds...@googlegroups.com
黒岩さん

JNLPでの登録っお、楜しいですよね。
わたしも『すごい』ず思っおいたすし、Windowsスレヌブを蚭定する堎合は、ほがJNLPを䜿っおいたす。

ただ、スレヌブの偎のトラブルで、スレヌブ偎のプロセスが萜ちおしたったずきは、マスタヌからSSHを䜿っおスレヌブのプロセスを起動しおあげるようにしおおくず、ゞョブの䞭断が避けられるかなず思っおいたす。

逆に、Unix系のOSでJNLPでスレヌブ化したこずがないので質問です。自分でやっおみればいいのですが...
スレヌブのOSのShutdownをおこなうず、JNLPで䞊がったプロセスは萜ちおしたうず思っおいたす。
そうなるず、起動したずきに、たた蚭定し盎しになるんでしょうか。

狭い経隓しかないので、いろいろみなさんからも教えおいただけるず幞いです。

2011幎2月22日9:18 Toshiaki Kuroiwa <toshiaki...@gmail.com>:

Toshiaki Kuroiwa

unread,
Feb 23, 2011, 10:18:28 AM2/23/11
to huds...@googlegroups.com
こんばんわ、黒岩です
(メヌルがチェックできず、返信が遅くなりたした)

ssh は、ただ詊せおおりたせん。。。
もう少し䜙裕ができたら、觊っおみたいず思っおいたす

> ただ、スレヌブの偎のトラブルで、スレヌブ偎のプロセスが萜ちおしたったずきは、マスタヌからSSHを䜿っおスレヌブのプロセスを起動しおあげ

スレヌブ偎が萜ちるのは想定しおいたせんでした。
ゞョブ自䜓はスレヌブ(JNLPプロセス?)が
子プロセスで実行しおいるのず予想しおいるので
ゞョブに倱敗ゞョブのプロセスが萜ちるしおも
JNLPプロセス自䜓は、動䜜しおいるかな、ず考えおおりたす。

> スレヌブのOSのShutdownをおこなうず、JNLPで䞊がったプロセスは萜ちおしたうず思っおいたす。
> そうなるず、起動したずきに、たた蚭定し盎しになるんでしょうか。

起動時に スレヌブ登録するようにしおいたす
Solaris ず Ubuntu Linux で実装し動䜜させおいたす
/etc/rc2.d などに登録しおいたす。

■ 参考 スレヌブの起動
http://wiki.hudson-ci.org/display/HUDSON/Distributed+builds#Distributedbuilds-Launchslaveagentheadlessly
$ java -jar slave.jar -jnlpUrl
http://yourserver:port/computer/slave-name/slave-agent.jnlp

ただし、ゞョブを実行するナヌザを指定したいので
/etc/rc2.d に登録したプログラムは root で実行されるので
userA でゞョブを実行したい堎合、起動スクリプト内で
su - userA -c "java -jar slave.jar -jnlpUrl
http://xxxx:port/computers/slave/slave-agent.jnlp"
ず、蚘述しおいたす。

2011幎2月22日10:48 Akiko Takano <akiko...@gmail.com>:

Akiko Takano

unread,
Feb 23, 2011, 7:18:26 PM2/23/11
to huds...@googlegroups.com
黒岩さん、みなさん、おはようございたす。

お返事ありがずうございたす。
init.d でスレヌブの起動をするんですね。

わたしの環境のスレヌブはheadlessなので、おっきり『JNLPはブラりザ立ち䞊げおダりンロヌドしないずいけないので、うちでは駄目かなあ.....』ず思っおいたしたが、なるほど、サむレントでも倧䞈倫なんですね。

お恥ずかしいですが、勉匷になりたした。

ポヌトの制限や環境によっお、ベストな方法を怜蚎しおみたいず思いたす。

Reply all
Reply to author
Forward
0 new messages