クラウド関連技術ブログ

Zabbixで簡単な予測監視をやってみた!!

投稿日:2015/09/29カテゴリー:zabbix

どーも!ウッシーです。。

ついに、2015年9月9日に「Zabbix 3.0.0alpha2」がリリースされました。

リリースの詳細は、こちら!
http://www.zabbix.com/jp/rn3.0.0alpha2.php

まだα版なので、rpmパッケージ版のモジュールは、
提供されていませんが、ソース版のモジュールであれば、
ダウンロードサイトの一番下に、ひっそりと公開されています。
 

FL.OPSの検証環境も、バージョンアップしてみようかな、、、
「モル」さ~ん、、、時間がある時にお願いします!!(笑)


という事で、本題です!!

最近、私の周りでは、予兆監視、予測監視、などのキーワードを良く耳にするので、
まずは手始めに、Zabbixで簡単なディスクの予測監視をやってみようと思います。


まず、一般的なディスクの監視というと、
ディスク使用率や空き容量を閾値で監視するという感じですよね。

で、閾値の超過を検知した場合は、
使用率のグラフ等で推移を確認して、
1日で何%増加しているから、あと何日でパンパンになるな、、、
という感じで、予測するかと思います。

それなら、あと何日でパンパンになるのかを通知してくれたら助かりませんか?

 

という事で、以下の二つの観点から、
ディスクがあと何日でパンパンになるのかを監視したいと思います。

 ① 「1日前の1時間の平均値」と「直近1時間の平均値」の差(1日間の増加傾向)

 ② 「過去1日間の最大値と最小値」の差(1日間の最大増加幅)

 


必要な設定は、以下の通りです。

 1.予測したいディスクの使用率や空き容量などを収集するための標準アイテムを設定します。

標準アイテム:vfs.fs.size[fs,<mode>]

今回は、以下のアイテムを使用しました。

 vfs.fs.size[/,pused] ※「/(ROOT)」領域のディスク使用量(%)
 vfs.fs.size[/,pfree] ※「/(ROOT)」領域のディスク空き容量(%)

通常は、この標準アイテムにトリガーを組み合わせて、
監視する感じだと思います。

こんな感じですね。

{Zabbix_Server:vfs.fs.size[/,pused].last()}>80
 ⇒ディスク使用量(%)の最新値が80%を超過したら障害とする。

20150928_01.jpg

 

 2.次に、冒頭で記載した「1日間の増加傾向」や「1日間の最大増加幅」を算出するための計算アイテムを設定します。

① 「1日前の1時間の平均値」と「直近1時間の平均値」の差(1日間の増加傾向)

 アイテムキー:vfs.fs.increase.size[/,pused] ※任意
 計算アイテムの式:avg("vfs.fs.size[/,pused]",3600)-avg("vfs.fs.size[/,pused]",3600,86400)

 20150928_02.jpg

 

② 「過去1日間の最大値と最小値」の差(1日間の最大増加幅)

 アイテムキー:vfs.fs.delta.size[/,pused] ※任意
 計算アイテムの式:delta("vfs.fs.size[/,pused]",86400)

 ※ deltaとは、期間内の最大値と最小値の差分を返しす関数です。

 20150928_03.jpg

 

 3.最後に、「2」の計算結果と「1」のディスク空き容量(%)からあと何日でパンパンになるのかを算出するための計算アイテムを設定します。

① 「1日間の増加傾向」から残日数を算出

 アイテムキー:vfs.fs.increase.days ※任意
 計算アイテムの式:last("vfs.fs.size[/,pfree]")/last("vfs.fs.increase.size[/,pused]")

 20150928_04.jpg

 

② 「1日間の最大増加幅」から残日数を算出

 アイテムキー:vfs.fs.delta.days ※任意
 計算アイテムの式:last("vfs.fs.size[/,pfree]")/last("vfs.fs.delta.size[/,pused]")

 20150928_05.jpg

 

この計算アイテムにトリガーを設定すれば完了です。

例えば、残日数があと3日になったら障害する場合、

 {Zabbix_Server:vfs.fs.delta.days.last()}<3

 ※ 注意として、①の場合は、ディスク使用率が減少した場合は、マイナスになります。
  なので、その場合は、以下の通り、0以上という条件も追加して下さい。

  {Zabbix_Server:vfs.fs.increase.days.last()}>0
  &
  {Zabbix_Server:vfs.fs.increase.days.last()}<3


結果(最新データ)は、こんな感じです。。。
こんな設定したのが「/(ROOT)」領域なので、残日数が3000日とかになっていますが、、、

20150928_06.jpg

 

という事で、簡単なディスクの予測監視をやってみました!!!

思い付きで、ざぁーーーとやったので、考慮不足やもっと良い方法等もあると
思いますが、、、参考になれば嬉しいです。


それでは、また!!!

CONTACT

tel 092-986-2772
10:00〜17:00(土・日・祝日除く)
お問い合わせフォーム
page top