zabbixで学ぶ統計解析入門

Post on 16-Apr-2017

113 Views

Category:

Data & Analytics

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Copyright © Xchange Solutions All right reserved.

KIXS Vol.000 インフラLTの祭典

Zabbixで学ぶ統計解析入門

株式会社エクスチェンジ ソリューションズ

野田 健夫

2016.08.26

2

Copyright © Xchange Solutions All right reserved.

こんにちは!

野田 健夫(のだたけお)https://twitter.com/nodatakeo

https://www.facebook.com/nodatakeo

株式会社エクスチェンジ ソリューションズ

3

Copyright © Xchange Solutions All right reserved.

今日の内容

1. これまでの監視ツール遍歴

2. Zabbixについて

1. Zabbixの主な機能

2. Zabbixで収集するデータ

3. Zabbixの概略図

3. 時系列データの検査を行うトリガー関数群

1. 移動平均

2. 予測値・予測到達時間

4. まとめ

4

Copyright © Xchange Solutions All right reserved.

これまでの監視ツール遍歴

2004~2009年ごろ:BigBrother / Hobbit / Xymon

http://xymon.sourceforge.net/

5

Copyright © Xchange Solutions All right reserved.

これまでの監視ツール遍歴

2008~2012年ごろ:Nagios

https://www.nagios.org/

6

Copyright © Xchange Solutions All right reserved.

これまでの監視ツール遍歴

2012年~現在:Zabbix

http://www.zabbix.com/jp/

7

Copyright © Xchange Solutions All right reserved.

Zabbixの主な機能

収集したデータに閾値を設定して異常監視

を行い、通知。

サーバやネットワークの状態をデータ化し、

保存。

収集したデータをもとにグラフ化。

8

Copyright © Xchange Solutions All right reserved.

Zabbixで収集するデータ

CPU使用率

ディスク使用率

ディスクI/O

LoadAverage

プロセス数

ポート状態

などなど

すべて

時系列のデータ

としてDBに

保存される。

9

Copyright © Xchange Solutions All right reserved.

Zabbix障害検知の概略図

データ収集項目

アイテム

トリガー アクション

データ検知閾値

トリガーに対してメディア処理

メディア

メール・SMS連携設定

ホスト

ウェブ

ページアクセス

テンプレート ユーザー

データ収集に関する設定 アラートに関する設定

10

Copyright © Xchange Solutions All right reserved.

監視における異常検知とのせめぎあい

Big Brother Nagios Zabbix

フラップ検知機能で抑止 フラップ検知機能はない。

短時間に障害と復旧を

繰り返すことをフラッ

ピングという。Nagios

では過去21回分の変化

率で測定。

※特になし

トリガー関数で対応

データを保存しているから関数で分析できる。

11

Copyright © Xchange Solutions All right reserved.

時系列データの検査を行うトリガー関数群

avg 移動平均

last 最終値

diff 差異検知

nodata データなし検知

count 期間回数

forecast 予測値

timeleft 予測到達時間

v3.0より追加

12

Copyright © Xchange Solutions All right reserved.

avg: (単純)移動平均(SMA)

avg (sec|#num,<time_shift>)

書式:

引数

sec|#num 必須。秒数(sec)もしくは直近の件数(#num)

<time_shift> 任意。過去にずらす秒数

例:

{Template OS Linux:system.cpu.util[,iowait].avg(5m)}>20

Disk I/O overload

13

Copyright © Xchange Solutions All right reserved.

移動平均とは

単純移動平均 (Simple Moving Average;

SMA) は、株価や温度変化の傾向など時系列

データの幅広い分野で使われている分析手法。

毎分取得するようなデータだと5分平均、10分

平均の値がよく使われている。

移動平均をとることで瞬間的な外れ値が発生し

ても平滑化され誤検知を避けることができる。

14

Copyright © Xchange Solutions All right reserved.

移動平均の代表例: Load Average

・1分平均

・5分平均

・15分平均

平均をとる期間が長いほど平滑化される(=変化を平均化してなめらかにするフィルター)

Load Averageは、移動平均を行った実行待ちプロセス数。

15

Copyright © Xchange Solutions All right reserved.

forecast: 予測値

forecast (sec|#num,<time_shift>,time,<fit>,<mode>)

書式:

引数

sec|#num 必須。何時間(sec)もしくは直近の件数(#num)

<time_shift> 任意。過去にずらす秒数

time 必須。何時間後のデータを予測するか。

<fit> 任意。予測モデル。linear, polynomialN, exponential,

logarithmic, powerを指定できる。デフォルトは、linear。

<mode> 任意。予測で出力する値。value,max,min,delta,avg。デフォルトは、value。

16

Copyright © Xchange Solutions All right reserved.

forecast: 予測モデル

fit x = f(t)

linear x = a + b*t

polynomialN x = a + a *t + a *t + … + a *t

exponential x = a*exp(b*t)

logarithmic x = a + b*log(t)

power x = a*tb

0 1 2 nn2

線形近似

一変数多項式近似(n≦6)

指数近似

対数近似

累乗近似

linear

logarithmic

polynominalN exponential

power

17

Copyright © Xchange Solutions All right reserved.

forecast: 予測値

mode 予測結果

value f(now + time)

max maxnow <= t <= now + time f(t)

min minnow <= t <= now + time f(t)

delta max - min

avg average of f(t) (now <= t <= now + time)

時間経過後の予測値

期間内予測値の最小値

期間内予測値の最大値ー最小値

予測値の移動平均

期間内予測値の最大値

例:

{Zabbix server:vfs.fs.size[/,free].forecast(1h,0,24h,linear,value)}<0

Run out of disk space on Zabbix server (forecast)

18

Copyright © Xchange Solutions All right reserved.

timeleft: 予測到達時間

timeleft (sec|#num,<time_shift>,threshold,<fit>)

書式:

引数

sec|#num 必須。何時間(sec)もしくは直近の件数(#num)

<time_shift> 任意。過去にずらす秒数

threshold 必須。到達値。

<fit> 任意。予測モデル。linear, polynomialN, exponential,

logarithmic, powerを指定できる。デフォルトは、linear。

※予測モデルはforecastと同じ

例:

{Zabbix server:vfs.fs.size[/,free].timeleft(1h,0,0,linear)}<24h

Run out of disk space on Zabbix server (timeleft)

19

Copyright © Xchange Solutions All right reserved.

予測値をグラフに表示するには?

http://www.zabbix.com/jp/whats_new.php

20

Copyright © Xchange Solutions All right reserved.

トリガー関数はアイテムの計算でも使える

グラフに予測値を含めたいときは、予測値用のアイテムを追加す

る。

アイテムタイプ「計算」を選択することで、トリガー関数をアイ

テムにおいても使うことが可能。

使い方は、第1引数にアイテムキー名を追加。

データ型は、「数値(浮動小数点)」を指定するなど適宜要調整。

データ量が少ない場合は、-1になってしまうので注意。

forecast (“アイテムキー名”, sec|#num,<time_shift>,time,<fit>,<mode>)

forecast("Zabbix server:vfs.fs.size[/,free]", 1h,0,24h,linear,value)

例:

21

Copyright © Xchange Solutions All right reserved.

まとめ

監視における時系列データ解析は、変化を検知するの

が基本。

予測検知は、ディスクなどリソース計画にも役立つ。

予測モデルは線形近似以外はあまり使われない。

予測検知するためには、検知のためのモデル作りが重

要。データ収集→解析→の流れでいくと可視化の拡張

(GrafanaとかKibanaなど)についても注目。

22

Copyright © Xchange Solutions All right reserved.

参考: Grafana/Kibana

https://grafana.net https://www.elastic.co/jp/products/kibana

top related