Zabbix超入門
Daisuke IKEDA
2016.3.16 Tech-Circle #13
GOAL
概要を知る 設定方法を知る 結果の見方を知る
HELLO!
I am Daisuke IKEDA
You can find me at @ike_dai
I’m ZABBIX-JP staff.
I’m Tech-Circle staff.
About Zabbix
Zabbixは、OSSの統合監視ソフトウェア。基本はServer-Agent型。エージェントレス監視も幅広く可能。
開発はラトビアのZabbix LLCが実施。日本ではZabbix Japan LLCが展開・サポート。
監視可能項目
・死活監視
・リソース監視
・ログ監視
・URL監視
・DB監視
・Javaアプリケーション監視
・VMware監視
・コマンド実行監視
等々
対応OS
・Linux
・IBM AIX
・IBM Power8
・FreeBSD
・NetBSD
・OpenBSD
・HP-UX
・MAC OSX
・Solaris
・Windows (Zabbix Agentのみ)
https://www.zabbix.com/documentation/3.0/doku.php
監視設定・確認はすべてWebGUIで
Zabbix dashboard
1
Zabbix dashboard
http://ホスト名/zabbix
監視処理はCプログラムがバックエンドで
Zabbix core program
2
Zabbix core program
DB
監視設定
Zabbix Server
ポーラープロセス
トラッパープロセス
・・・
Zabbix Agent
監視結果登録
設定・結果はすべてRDBMSに保存
Zabbix database
3
Zabbix database
MySQL,PostgreSQL,Oracle,DB2,SQLiteいずれかのDBが必要
DB
Database: zabbix
hosts
items
graphs
triggers
history
history_log
history_str
history_text
history_uintactions
等 等
設定系 結果系
使いこなすにはオブジェクト構造の理解が第一歩
Zabbix data objects
4
Zabbix data objects
ホストグループ テンプレート
ホスト
アイテム トリガーグラフ
割当
アイテム トリガーグラフ
・
・
・
・
・
・
アクション
アクション
アイテム トリガーグラフ
ホストグループ:Linux
ホスト:Server1
テンプレート:LinuxServerテンプレート
アイテム:CPU使用率
トリガー:CPU使用率が5分間平均80%以上
アクション:管理者にアラートメール送信
例
ホスト
監視のフローは大きく3ステップ
3steps: monitoring process flow
5
Zabbix monitoring flow
監視 検知 通知
アイテム定義に
従ってデータ収集
トリガー定義に
従って障害状態を判定
アクション定義に
従ってメール通知やコマンド実行
アイテムを設定するには
Setting items
6
Setting items
設定関連の操作は「設定」のサブメニューで
アイテムはホストに紐づくのでまずはホスト登録が必要
(テンプレートとして設定も可)
Setting items
アイテムの設定はホストの「アイテム」→「アイテムの作成」から
名前: アイテムを識別できる名称設定(日本語可)
タイプ: 監視手法を選択
キー: 何を監視するか設定(ホストで一意になる必要あり)
データ型: 実戻値とこの設定が違うとエラーに
乗数を使用: 実戻値がKB単位等の場合、1024かけて保存
しZabbix内部ではB単位で処理することが可能
ヒストリ保存期間:監視の実データの保存期間
トレンド保存期間:1時間毎のサマリ(最大・最小・平均・個数)
情報の保存期間
保存時の計算:前回との差分を保存や差分を秒数で割って保存
等可能
アイテムの監視結果を見るには
Checking monitored history
7
Checking monitored history
監視結果確認は「監視データ」→「最新データ」から
フィルタ設定の箇所に注意
監視結果を見たいホストを選択して「フィルター」をクリック実行
Checking monitored history
監視結果確認は「監視データ」→「最新データ」から
例えば、ホストを選択すると監視項目一覧がアプリケーション毎に表示される
各項目の右端の「グラフ」または「ヒストリ」リンクをクリック
Checking monitored history
監視結果確認は「監視データ」→「最新データ」から
各監視項目の単体の監視結果ヒストリが表示
グラフだけじゃなく、「値」や「最新500個の値」を選択することで生データの確認も可
トリガーを設定するには
Setting triggers
8
Setting triggers
トリガーの設定はホストの「トリガー」→「トリガーの作成」から
監視アイテムのデータ型が文字列・ログ・テキストの場合はアイテム一覧からウィザードで作成も可
Setting triggers
トリガーの設定形式の基礎
{ホスト名:アイテムキー.トリガー関数} 演算子 しきい値
例:
server-01のCPUのiowait値の監視結果の
直近5分平均が20を超えたら障害と判定
{server-01:system.cpu.util[,iowait].avg(5m)}>20
Setting triggers
トリガー関数
https://www.zabbix.com/documentation/3.0/manual/appendix/triggers/functions
abschange:
前回の監視結果との差分の絶対値を評価
avg:
指定した期間の値の平均値を評価
count:
指定した期間、条件に一致する監視結果の個数を評価
last:
直近の監視結果を評価
regexp:
指定した正規表現が監視結果に含まれているかを評価
sum:
期間内に収集されたデータの合計値を評価
nodata:
指定した期間に監視結果があるかないかを評価 などなどその他多数
Setting triggers
演算子
Priority Operator
1 - (単項)
2 not
3 * /
4 + -
5 < , > , <= , >=
6 <> , =
7 and
8 or
Setting triggers
マクロ
{server-01:system.cpu.util[,iowait].avg(5m)}>{$LIMIT}
トリガー条件式ではユーザ定義マクロの展開が可能
server-01: {$LIMIT} = 20
server-02: {$LIMIT} = 10
等トリガー定義は同一でしきい値を変えた設定が容易に管理可能
アクションを設定するには
Setting actions
9
Setting actions
アクションの設定は「設定」→「アクションの作成」から
ホストに直接紐づくわけではないので注意
トリガーを起因としたアクションの場合はイベントソースは「トリガー」を指定
Setting actions
アクションを発動させるための実行条件を的確に設定
定義するアクションを働かせるための条件を and/orで設定し、
必要な時だけアクション実行できるようにフィルタリング
Setting actions
メール送信・リモートコマンド等実際のアクション処理を定義
どのステップでどういう処理を行うか詳細に定義可能
非常に高機能
で奥が深い
Interested?
非常に高機能
で奥が深い
Zabbix3.0 Deep Dive
Zabbixのさらなる可能性を探る

Zabbix超入門