zabbix_agentd の停止検出について

サーバ側に zabbix_server / エージェント側に zabbix_agentd の組み合わせで
ホスト上の様々なステータスを収集して監視を行なっています

zabbix_agentd そのものが停止してしまった場合の監視について、
質問があります

アイテム
 キー: status
 間隔: 60 sec
トリガー
 キー: {{HOSTNAME}:status.last(0)}=2

として監視を行ない、zabbix_agentd デーモンの停止を検知させようと
しています

数回に1度、zabbix_agentd の停止を検出できず、「未監視」の状態に
なってしまうことがあります

確実に zabbix_agentd の停止を検知するには、どのようにしたら良い
でしょうか?

プラットフォーム: Linux (RedHat Enterprise) / サーバ側・エージェント側とも
バージョン: 1.6.9

よろしくお願いします。

コメント表示オプション

お好みのコメント表示方法を選び「設定の保存」をクリックすると変更が反映されます。
ユーザー kodai の写真

こちらが参考になると思います。

http://www.zabbix.jp/node/352

ユーザー fripper の写真

kodai さん、ご助言ありがとうございます

icmpping アイテムは、別途、

アイテム
 キー:icmpping
 間隔:30 sec
トリガー
 キー:{{HOSTNAME}:icmpping.last(0)}=0

として、監視しています

ホスト自体がダウンしてしまった場合や、ネットワーク障害が発生した場合など、
そもそも相手ホストへの通信ができない状態の場合には、このアイテム・トリガーが
反応してくれるため、安心しています

今回、質問した状況では、OS・ネットワーク部分には問題がなく、
icmpping アイテムでは、「正常」と判定するような状況下で、
zabbix_agentd デーモンがダウンしてしまい、アイテム「status」への
応答がなくなってしまった場合の検出を考えております

別途、「net.tcp.port[,10050]」 等のアイテムを定義して、
{{HOSTNAME}:net.tcp.port[,10050].last(0)}=0 等のトリガーで
引っ掛けるしかないのでしょうか‥
#それだと、status アイテムの存在意義が‥(汗

ユーザー kodai の写真

別途、「net.tcp.port[,10050]」 等のアイテムを定義して、
{{HOSTNAME}:net.tcp.port[,10050].last(0)}=0 等のトリガーで
引っ掛けるしかないのでしょうか‥

現時点ではその方法か、agent.pingを使われるのが良いと思います。

#それだと、status アイテムの存在意義が‥(汗

statusキーは1.8以降では非推奨になっていまして、ドキュメントからも記述が削除されています。
2.0以降では機能自体が削除される可能性があるので、あまり利用されない方が良いと思います。
http://www.zabbix.jp/node/1437

ユーザー fripper の写真

1.8 以後で非推奨となっていたのは私のチェック不足でした。
申し訳ありません。

なるほど、確かに「agent.ping」は使えそうですね。
こちらを利用したチェックも調査・検討してみます

また、新しい代替アイテムが追加されているようですね。
バージョンアップも含め、検討させていただきます

ありがとうございました。

ユーザー kodai の写真

いえ、statusキーの非推奨は明示的にドキュメントに書かれていないので分かりづらいと思います。1.6からドキュメントのアイテムのキー一覧からは削除されたにも関わらず、標準のテンプレートには残ってしまっていますし。

2.0では標準のテンプレートからも削除されると思います。動作はするかもしれませんが、機能自体もそのうち削除されるかもしれません。

最初に質問いただいた通り、statusキー自体の動きが分かりづらく扱いづらいため、agent.pingの方で代替される方が良いと思います。
statusキーの動きについては以下も参照してみてください。
http://www.zabbix.jp/node/327