unoh.github.com

プロセスの監視を行う デーモン monit

Tue Mar 18 03:11:24 -0700 2008


こんにちは satoです。
monitは プロセスの監視を行うデーモンです。 条件とそれに伴うアクションを指定することができます。



条件とは例えば以下のようなものがあります




アクションには以下のような物があります




これらを組み合わせて、プロセスの監視を行います。とくにユーザが作成したプログラムの監視などに効果を発揮します。インストールは RedHat系なら


yum install monit


で入ります。(CentOSや商用のRedHatはrpmforgeをリポジトリとして追加する必要があります)
主な設定ファイルは




になります。簡易的な postfixの監視ファイル postfix.conf は以下のような感じになります。

 check process postfix with pidfile /var/run/postmaster.pid
   start program = "/etc/init.d/postfix start"
   stop  program = "/etc/init.d/postfix stop"
   if failed port 25 protocol smtp then restart


pidの場所を指定して、 startと stopを定義します。monitの起動は


/etc/init.d/monit start 

で行います。

試しにpostfixを止めてみてください。どうでしょうか。ちゃんとリスタートしたでしょうか。
もちろん Railsで作成した mongrelのプロセスなども監視できるので、様々な場面で活躍できそうですよね。
公式サイトはかなり充実したマニュアルとサンプルがあるので、ぜひ参照してみてください。