サーバ時間の検知方法について教えて下さい。
いつもお世話になっております、
KTKTと申します。
サーバの時間時刻監視について教えて下さい。
現在は"system.localtime.fuzzytime(300)}=0"により
対象サーバの時刻(NTP同期時刻)と
ZABBIXの時刻(NTP同期時刻)とで5分異なるとアラート通知しています。
これを
10秒異なるのを3回検知(監視間隔は3分)場合にアラート通知、
にしたいです。
上記は可能でしょうか。
■環境
OS:CentOS release 6.6 (Final)
Zabbix:2.0.13-1.el6.x86_64
お手数になりますが、ご教授お願い致します。
TNK - 投稿数: 4769
詳細は確認できていませんが、各アイテムの監視する間隔を調整す
れば、ご希望に近いものは実現できるかもしれません。
方針としては、以下のようなアイテムとトリガーを用意するイメー
ジです。
ベースとなるサーバの時刻取得アイテムの作成または更新:
system.localtimeの値を取得
既存のテンプレートのアイテムも利用してもよいが、アイテム
の値取得間隔に注意
判定用アイテムの作成:
fuzzytime(10)の結果を計算アイテムで保存
判定用トリガーの作成:
3回分を足し合わせて0なら3回とも10秒以上差があったと判定
しかし、Template OS Linuxを利用していると、system.localtime
の値取得の間隔は60秒ですので、計算アイテムでfuzzytime()を利
用して計算する際に、最大60秒の差が発生しうるので、fuzzytime
の引数には、60秒以上を指定する必要がでてくると思います。
今回、10秒以上の差分で検出をされたいのであれば、差分を判定す
る元となるsystem.localtimeの値取得の間隔を10秒よりも短くする
ことが必要になるでしょう。
計算アイテムの式は、以下のようなイメージです。
fuzzytime(system.localtime,10)
あとは、その計算アイテムの値に対して、以下のように3回分を足
し合わせた値で判定してみてはいかがでしょうか?
{xxxxx.sum(#3)}=0
ホストに設定するか、テンプレートに設定するかでキーの指定とか
アイテムの表記が異なるので、上記はあくまでもイメージです。
そのまま入力しても動きませんのでご注意ください。
KTKT - 投稿数: 28
いつもお世話になっております、
KTKTです。
大変明確な方法を教えて頂きまして
ありがとうござました。
検証でも実施したところ、
想定通り動作致しましたが、
やはり問題はsystem.localtimeの取得時間にあります。
検証では10秒で設定してみましたが、
取得時間に10秒はあまりに間隔が短すぎます。
このsystem.localtimeを使用しない方法は他に
ないのでしょうか。
お手数になりますが、ご教授お願い致します。