インストール時にPluginsも入れるので大抵の事はできると思います。
がしかし、こんなことさせたいんだよなぁ・・・って思うこともあったりする。
まずは、こちら(Nagios Exchange)で探せばいいのですが無かった場合は
自分でつくりませうъ(`ー゜)
どの様には書けば良いかはこちらを参考に。
ちょこっと作ってみましたが非常に簡単でした。
オプションつけたりヘルプつけたりとか個人で使うだけなら
そもそも必要ないしね。
大事なことは、
実行結果に対し、正しくステータスコードを返せば良いだけです(`・ω・´)
Nagiosでの各ステータスコードの扱い
exit 0 ---> OK
exit 1 ---> WARNING
exit 2 ---> CRITICAL
exit 3 ---> UNKNOWN
別に全部書く必要も無く OK or CRITICALだけ欲しいなら
0と2だけを結果に対し返してやればいい。
例えばログ監視で特定文字(hoge)を監視する場合、
grepでhogeを見つけ出し、ヒットすればexit 2
そうでなければexit 0のShell(perlとか何でもいい)を書いて
/usr/local/nagios/libexecにおいてあげる(権限に注意)
後は、
define commandにコマンドを定義して
define serviceにサービス定義してやればOK。
■はまった事
初歩的なミスと言えばミスですが
hddtempでHDD温度をとって閾値を決めて監視しようと思ったのですが
このコマンド自身rootからしか実行できない事に後で気づいた・・・
思い通りの結果が返ってこないわけだ!
rootで作成・実行してたので気づかなかった・・・
て事で作成した後には、root以外のユーザで実行できるか
確認が必要です!
解決策として、sudoって手もあったがsudoはあまり好きでないので
rootのCronを使って温度データを別途ファイルに書き出し
それをnagios側で比較する方法にした。
言うまでも無く、普通にShellでチェックプログラム作って
Cronで回した方が楽なのはナイショ(´_ゝ`)<Nagiosと連携してみたかったのさ