Monitを使った死活監視とMuninを使ったリソース監視
TOP > てきとうにこらむ > このサイトについて。 > Monitを使った死活監視とMuninを使ったリソース監視
Muninを使ってきたわけだが、死活監視ができないという問題があった。
ちなみに、今回の作業はAnsible上で実行した。AnsibleについてはこのサイトのサーバーをAnsibleでDevOps化してDebianのバージョンアップを行いましたを参照。なので、以下のコマンドラインは擬似的なもの。ごめんねー
Munin
Muninについては、muninを設定するを参照した。Debian jessieになり、Apacheのバージョンが2.4になったため、少々変わったところがあったけど、特に問題なく投入できると思う。
Monitを使おう
Monitは、ブラウザからプロセスやファイルの監視ができる。M/Monitと組み合わせれば、状態監視もできる。ただし、有料。 今回は、Monitを使ってプロセスの監視を行う。
インストールと設定
$ sudo aptitude install monit
$ sudo vi /etc/monit/monitrc
変更した部分だけ。メールのフォーマット。
set mail-format {
from: monit@example.com
subject: monit alert -- $EVENT $SERVICE
message: $EVENT Service $SERVICE
Date: $DATE
Action: $ACTION
Host: $HOST
Description: $DESCRIPTION
Your faithful employee,
Monit
}
アラートをメールで知らせてくれるようにする。ただし、立ち上がった時にもメールされるとめんどいので、その時は無効にする。
set alert email@example.com not on { instance, action }
メールサーバーの指定をする。
set mailserver localhost
これでmonitrcの編集は終了。/etc/monit/conf.d/httpd.confを作成して、以下の内容を書き込む。
set http port 2812
allow username:password
これで、2812番ポートにhtmlのフロントエンドがつく。じっさいはぽーとかえてるよ。ごめんね。 /etc/monit/monitrc.dにいろいろなプロセスのテンプレートがあるので、監視したいプロセスのファイルをコピーしてconf.dに持っていく。
$ sudo cp /etc/monit/monitrc.d/apache /etc/monit/conf.d
これでmonitをたちあげる。
$ sudo service monit start
$ sudo monit start all
なんか落ちたらアラートメールがやってくる。フロントエンドにアクセスして状況を把握できるよ!やった!