CentOS を Jenkins のスレイブマシーンに追加する方法
CentOS を Jenkins のスレイブマシーンに追加する方法
ノードの追加
Jenkinsの管理
以下のノード情報を入力してOK ノード名、説明、ラベルは都度変更
ノード名:test 説明: 同時ビルド数:1 リモートFSルート:/var/lib/jenkins ラベル:test 用途:このマシーンを特定ジョブ専用にする 起動方法:JNLP経由でスレーブを起動 可用性:可能な限りオンラインのままにする
スレーブマシーン側の設定
スレーブマシーンにログイン後、
起動ユーザーを作成
# useradd jenkins
ワークディレクトリを作成
# mkdir -p /var/lib/jenkins # chown -R jenkins:jenkins /var/lib/jenkins
設定ファイルを作成 JENKINS_URL は Jenkins のアクセスURL JENKINS_NODENAME は 作成したノード名 JENKINS_SECRET は 作成したノードページに書いてある -secret の値
# vi /etc/sysconfig/jenkins-slave JENKINS_WORKDIR="/var/lib/jenkins" JENKINS_USER="jenkins" JENKINS_URL="https://210.0.0.0:41001/jenkins" JENKINS_NODENAME="test" JENKINS_SECRET="9f1819708de5b9ddd1033847172e9157b152e509f404e4274f10ef8b63c30346" JENKINS_OPTION="-noCertificateCheck"
# chmod 600 /sysconfig/jenkins-slave
起動サービスの作成
# vi /etc/init.d/jenkins-slave #!/bin/sh # # jenkins-slave: Launch a Jenkins BuildSlave instance on this node # # chkconfig: - 99 01 # description: Enable this node to fulfill build jobs # # Source function library. . /etc/rc.d/init.d/functions [ -f /etc/sysconfig/jenkins-slave ] && . /etc/sysconfig/jenkins-slave [ -n "$JENKINS_URL" ] || exit 0 [ -n "$JENKINS_WORKDIR" ] || exit 0 [ -n "$JENKINS_USER" ] || exit 0 [ -n "$JENKINS_NODENAME" ] || exit 0 [ -n "$JENKINS_SECRET" ] || exit 0 [ -n "$JENKINS_OPTION" ] || exit 0 [ -x /usr/bin/java ] || exit 0 download_jar() { curl -s -o slave.jar $JENKINS_URL/jnlpJars/slave.jar || exit 0 } start() { cd $JENKINS_WORKDIR [ -f slave.jar ] || download_jar echo -n $"Starting $prog: " su $JENKINS_USER sh -c "\ java -jar slave.jar -jnlpUrl $JENKINS_URL/computer/$JENKINS_NODENAME/slave-agent.jnlp -secret $JENKINS_SECRET $JENKINS_OPTION >slave.log 2>&1 &" if [ $? = 0 ]; then echo '[OK]'; else echo '[NG]'; fi } stop() { echo -n $"Shutting down $prog: " PID=`ps -ef | grep '[j]ava -jar slave.jar' | awk '{print $2}'` [ -n "$PID" ] && kill $PID if [ $? = 0 ]; then echo '[OK]'; else echo '[NG]'; fi } # See how we were called. case "$1" in start) start ;; stop) stop ;; restart|reload) stop start ;; status) status java ;; *) echo $"Usage: $0 {start|stop|restart|reload}" exit 1 esac exit 0
# chmod 755 /etc/init.d/jenkins-slave
起動サービスに登録
# chkconfig --add jenkins-slave # chkconfig jenkins-slave on # chkconfig --list jenkins-slave
起動
# service jenkins-slave start
slave.jar がダウンロードが失敗した場合は手動で配置 slave.jar は 作成したノードページからダウンロード可能
# mv slave.jar /var/lib/jenkins/
改訂新版Jenkins実践入門 ――ビルド・テスト・デプロイを自動化する技術 (WEB+DB PRESS plus)
- 作者: 佐藤聖規,和田貴久,河村雅人,米沢弘樹,山岸啓,川口耕介
- 出版社/メーカー: 技術評論社
- 発売日: 2015/06/10
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (3件) を見る
Jenkins実践入門 ?ビルド・テスト・デプロイを自動化する技術 (WEB+DB PRESS plus)
- 作者: 佐藤聖規,和田貴久,河村雅人,米沢弘樹,山岸啓,川口耕介
- 出版社/メーカー: 技術評論社
- 発売日: 2011/11/11
- メディア: 単行本(ソフトカバー)
- 購入: 26人 クリック: 496回
- この商品を含むブログ (64件) を見る