2011年10月22日土曜日

daemontoolsのliteな使い方 (起動・停止・削除・インストール)

たまに忘れるのでdaemontools関連情報をまとめてみた。
  • デーモンの起動・停止・削除コマンド
  • runファイルの作成
  • daemontoolsインストール(CentOS6.0)

参考

http://cr.yp.to/daemontools.html


デーモンの起動・停止・削除・確認コマンド

デーモン起動

svc -u /service/job_name

デーモン停止

svc -d /service/job_name

デーモンの削除

1. プロセス停止
svc -d /service/job_name

2. シンボリックリンク修正
mv /service/job_name /service/.job_name

3. superviseの停止
svc -x /service/.job_name

4. シンボリックリンク削除
rm -f /service/.job_name

デーモンの起動確認

svstat /service/job_name
次のようにpidと起動時間が表示される
/service/job_name: up (pid 1247) 2530292 seconds
サービスの起動に失敗している場合は、起動時間が0を繰り返すことがある


runファイル(起動スクリプト)

1. runファイルを作成する

例 runファイルのパス
/path/to/daemon/job_name/run
環境に応じて環境変数や必要なコマンドを追加してください。
runファイルの内容
#!/bin/sh

PATH=/usr/local/bin:/usr/bin:/bin
export PATH

sleep 1
exec env - PATH=$PATH \
/path/to/script/job_name.pl 2>&1

2. daemontoolへの登録

runファイルのあるディレクトリへのシンボリックリンクの作成
ln -s /path/to/daemon/job_name /service/job_name


daemontoolsインストール

mkdir -p /package
chmod 1755 /package
cd /usr/local/src
wget http://cr.yp.to/daemontools/daemontools-0.76.tar.gz
wget http://dl.dropbox.com/u/30648910/patch/daemontools/daemontools-0.76.errno.patch
cd /package
gzip -dc /usr/local/src/daemontools-0.76.tar.gz | tar xvf -
cd /package/admin/daemontools-0.76
patch -p1 < /usr/local/src/daemontools-0.76.errno.patch
./package/install

CentOS6.0の場合

vi /etc/inittab
次の1行をコメントアウトして保存
#SV:123456:respawn:/command/svscanboot

svscan.confを作成して保存

vi /etc/init/svscan.conf
start on runlevel [12345]
respawn
exec /command/svscanboot

次のコマンドでsvscanを起動する

initctl reload-configuration
initctl start svscan

0 件のコメント:

コメントを投稿