共有ディスク上のログファイル監視

いつもお世話になっております。

今回は共有ディスク上にあるログファイルを監視したいと思っているのですが、運用系のサーバからしか共有ディスクが見れないため待機系のサーバのログファイル監視のアイテムは取得不可になってしまいます。

取得不可の場合は手動で有効にしなければ切り替わった時に監視が出来ないと思っているのですが、何か良い方法があれば教えて頂きたいです。

コメント表示オプション

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

取得不可になったアイテムは[管理]->[一般設定]->[その他]の「取得不可アイテムの更新間隔」でチェックが行われるようになっています。そのため多少のタイムラグは出てしまいますが、切り替わった後も上記の時間が経過すれば監視が再開されるはずです。

ただし、この方法だと待機系では定期的に不要なリトライが発生しますし、アイテム取得不可のログが出続けることになりますので。クラスタ構成ではアクティブ側でしか見れない項目はVIP経由で監視する方が良いと思います。

ユーザー hal の写真

kodaiさん、回答ありがとうございます。

VIPとは共有IP(クラスタのIP)ということで良いのでしょうか?

共有IPということならば、運用系、待機系の物理側のログファイルと共有ディスク上のログファイルを両方監視したい場合は可能ですか?

また可能な場合zabbix_agentd.logのhostnameの部分の記載はどうすればいいのでしょうか?

ご回答宜しくお願いします。

ユーザー kodai の写真

すいません、前回回答したとき通常の監視とログ監視(アクティブチェック)、クラスタの実IPと共有IPの話がごっちゃになってました。

正確に訂正すると、クラスタ環境の場合は

(1) 通常の監視(アクティブチェックではないもの)

稼働系と待機系の双方で常に動作している監視項目 -> 実IP経由で監視
稼働系でしか動作しないもの -> 共有IP経由で監視

Zabbix 1.8までは1ホストに対して1IPしか設定できませんので、クラスタ構成の2台のサーバを監視する場合、上記の設定だと計3ホスト登録することになります。(例えば、hostAとhostBをクラスタ構成にする場合、ZabbixにはhostA, hostB, hostのような形)

Zabbix 2.0からは1ホストに複数IPアドレスを設定できるようになっています。

(2) ログ監視(アクティブチェック)

アクティブチェックの場合、zabbix_agentd.confのHostnameに記載した文字列と一致するホストのアクティブチェックアイテムを監視するようになります。

各サーバのHostnameに実ホストとして登録したhostA, hostBを設定した場合、最初に質問いただいた通り、待機系からログファイルが見えなければ、ログ監視アイテムは取得不可になります。

フェイルオーバーしてログファイルが見えるようになれば一定期間後にアイテムも有効になります。ただし、hostAとhostBでは「ログをどこまで読んだか」の情報が異なるため、巨大なログファイルだと最初から読み直してしまうことに注意してください。

各サーバのHostnameに仮想ホストとして登録したhostを設定した場合、各サーバはともにhostに登録されたアクティブチェックのアイテム設定を利用するのですが、おそらく待機系からはログファイルが見えないために定期的にアイテムが取得不可になってしまい、稼働系のログ監視にも影響が出てしまうと思います。

現実としては、稼働系からしか見えないログファイルの監視の場合、フェイルオーバーした場合にログの重複アラートが出る可能性はありますが、実ホストごとに監視する方が確実になると思います。

ユーザー hal の写真

kodaiさん、回答ありがとうございます。

やはり確実なほうがいいので、取得不可アイテムの更新間隔の設定行い実ホストごとに監視する方法のが良さそうですね