簡単な設定でプロセスの監視と再起動などが行えて便利だったので、使い方をちょっと書いてみる。
■ Monitのセットアップの前提条件
MonitのパッケージはCentOSのオフィシャルのパッケージに含まれていないのでepelレポジトリを導入する。
# yum install monit
■ Monitの基本設定
Monitの設定ファイルの末尾のほうに下記の設定を追加する。
この設定例では、60秒ごとにプロセスの死活監視を行い、異常が検出された場合に、アラートメールを送信して、その後状態が改善しなかった場合、30分ごとにリマインダーメールを送信します。
# vi /etc/monit.conf
# set demon mode time out to 1 minute
set daemon 60# set mail server
set mailserver localhost
set alert test@test.net with reminder on 30 cycles
seet mail-format { from: monit@test.net }# include /etc/monit.d/*
■ 監視対象の追加方法
「/etc/monit.d/」の下に、監視したいサービスに対する設定ファイルを作る。
■ MySQLを監視する場合の設定例
この設定では、プロセスIDが変わるか、5回(5分間)連続でTCPでMySQLのポートに接続できなかった場合にアラートメールを送る設定になります。
# vi /etc/monit.d/mysql
check process mysqld with pidfile /var/lib/mysql/mysql.pid
if change pid then alert
if failed host 127.0.0.1 port 3306 type tcp for 5 cycles the alert
「mysql.pid」のファイル名は、サーバーの設定によって変わるのでサーバーの設定に合わせて変更する。