Linux: 2008年10月アーカイブ
サーバを立てる用事があったので、プロセス監視ツールとしてMonitを入れてみました。
環境はCentOS5なので、以下のサイトを参考にyumでさくっとインストール。
グローバル設定は、/etc/monit.conf に記述します。デフォルトでは全てコメントアウトされているので必要なものを生かします(後述のサービス毎にも設定できます)。
とりあえずテストなので、監視間隔を1分(デフォルト2分)、アラートメールが届くように変更。
set daemon 60
set alert user@yourdomain.com
続けてサービス設定として、Apacheが落ちてたら再起動する監視設定を追加してみます。
デフォルトでは/etc/monit.d/下の*.confファイルを読みにいくようになっていて、そこに/etc/monit.d/httpd.conf のようなファイルを作ります。
check process apache
with pidfile "/var/run/httpd.pid"
start program = "/etc/init.d/httpd start"
stop program = "/etc/init.d/httpd stop"
if failed port 80 protocol http then restart
で、Monitを起動。
/etc/init.d/monit start
手動でApacheを停止させた後、netstatなどで監視していると自動で立ち上がることが分かります。素晴らしい!
サービス設定においてアクション(start、stopの行)やテスト項目(if ~の行)の組み合わせで、いろいろな設定を作れるようなので、また試してみたいと思います。
なお、Monitのマニュアルに設定のサンプルが多く出ています。