みみずんさーばの監視にはNagiosを使用しています。ゴールデンウィークにも設定をさわっていたのですが、どうも腑に落ちない事が。
Nagiosは多数のプラグインで機器監視をするのですが、その中の check_ping に問題。エラーメッセージを見るに、これ自体がアラートの原因になることも。監視プログラムが自身の問題で警報メール投げつけるってどうなのよと。とりあえず、 check_fping を使用することにしたのですが、グラフ化する pnp で値を取得できない。まぁ、pnpはデフォルトのままなんですが・・・。
と、いうことで。
エラーメッセージを見るにプロセス作成に失敗しているようなので、リトライすればいいかなと考えて下記のシェルを書いてとりあえず解決?これだと最悪無限ループに陥るのですが、まぁいっか・・・
check_ping2
#!/bin/sh
check=1
until [ $check -eq 0 ]
do
print=`/usr/local/libexec/nagios/check_ping $1 $2 $3 $4 $5 $6 $7 $8 $9`
status=$?
check=`echo $print | grep popen | wc -l`
done
echo $print
return $status
map表示に使うアイコンも変更。。。ふぅ、こいつが一番疲れた。ネットで素材見つけたり、透過部分を作るのにPhotoshop(Elements)さまさまだわ。
【10月10日追記】
プラグインのチェックが短時間に終わらず、nagios側でタイムアウトとなる。
海外の情報を見て回ると、コンパイル時に --without-ipv6 をつけろという記事を発見。
コンパイルしなおすのは面倒なので、check_ping のオプションの最後に -4 を付加し強制的にipv4でチェックするようにしてみたら、とりあえず一晩問題が無くなった。
/usr/local/etc/nagios/objects/commands.cfg
旧 command_line $USER1$/check_ping -H $HOSTADDRESS$ -w $ARG1$ -c $ARG2$ -p 5
新 command_line $USER1$/check_ping -H $HOSTADDRESS$ -w $ARG1$ -c $ARG2$ -p 5 -4