upstartでdaemon化してみよう
概要
OSSの中にはinitスクリプトの無いモノが少なく無いですが、upstartで手軽にdaemon化してしまいましょう。ちなみにdaemon化したプロセスが不意に落ちた場合も自動で立ち上げ直してくれる機能もあります。ここではMHAを例にdaemon化してみました。
install
apt-get update apt-get install upstart
設定
設定ファイル
/etc/init/mha.conf
内容
description "MHA" author "Your Name <naked123@gmail.com>" start on runlevel [2345] stop on runlevel [016] chdir /opt/masterha respawn limit 5 60 respawn exec /usr/bin/masterha_manager --conf=/etc/mha.conf >> /var/log/masterha/mha.log 2>&1
注意:respawnが無いと対象プロセスが落ちた時に再起動が働かない。
反映
initctl reload-configuration initctl list | grep mha
mha stop/waitingと出力されればOK
起動
initctl start mha
期待値
mha start/running, process 10065
initctl list | grep mha
期待値
mha start/running, process 10065
終了
initctl stop mha