Template Module ICMP Pingの中

メモ:

「Zabbix でサーバの死活監視」で「Template Module ICMP Ping」というテンプレートを使用したのですが、このテンプレートには何が設定されているのでしょうか?まずは、「テンプレートとは?」から確認していきます。

確認環境:Zabbix 3.4.4

Zabbix のテンプレート

Zabbix では、監視に関連する監視項目、値の取得方法、障害と判断させるためのしきい値、グラフを生成するための情報など様々な情報を取得・管理するための設定をまとめて格納し、必要に応じてホストに関連付けることができます。様々な設定をまとめて格納しておくことができるセットをテンプレートと呼びます。 テンプレートは、別のテンプレートの一部として利用することも可能です。機能に応じてテンプレートを分割することで設定が楽になりそうです。

Template Module ICMP Pingの中

「Zabbix でサーバの死活監視」で使用したテンプレートの設定を確認していきます。

メニューの[設定] - [テンプレート] をクリックし、デフォルトで用意されたテンプレートの一覧を表示します。フィルター部分に「Ping」と入力し、適用ボタンをクリックすることで「Template Module ICMP Ping」テンプレートを検索することができます。

テンプレートの検索

検索した結果には、「アプリケーション 1」,「アイテム 3」,「トリガー 3」,「グラフ」,「スクリーン」,「ディスカバリ」,「Web」といった項目が表示されます。その中でも「アプリケーション」,「アイテム」,「トリガー」には項目の横に数値が表示され、それらの項目に設定が用意されていることが確認できます。

設定項目数の確認

それでは、設定が用意されている「アプリケーション」,「アイテム」,「トリガー」を順に確認していきます。

アプリケーション

アプリケーションをどう使うと良いのか、ピンとこないのですがアプリケーションとはアイテムをグループ化する単位になります。例えば、CPUにまつわる情報を取得するためのアイテムをまとめて「○○アイテム」とする、のようにホストから収集する監視項目をグループ化します。

「Template Module ICMP Ping」テンプレートには、「Status」というアプリケーションが設定され3つの「アイテム」をグループ化しています。

アプリケーション

「Status」をクリックすると、名前項目が表示されます。グループ化する際の名称として「Status」が設定されています。

アプリケーションの設定

アイテム

アイテムとは、ホストから収集する監視項目の設定になります。

「アイテム 3」をクリックして設定内容を確認していきます。

アイテムの選択

「ICMP loss」、「ICMP ping」、「ICMP response time」の3アイテムが表示されます。

アイテムの一覧

「ICMP loss」から確認していきます。「ICMP loss」をクリックし、設定画面を表示します。

ICMP lossの選択

名前は、任意に設定することができアイテムに対する名称になります。タイプは、Zabbixに用意されている情報の取得方法でZabbixエージェント、シンプルチェック、SNMP、Zabbixインターナル、Zabbixトラッパー、Zabbixアグリゲート、IPMIエージェント、SSHエージェント、TELNETエージェント、JMXエージェントなどがあります。

「ICMP loss」アイテムには、シンプルチェックが設定されておりシンプルチェックでは、監視対象に対して特定のプロトコルでの通信が可能か?どの程度のレスポンスがあるか?などの情報を取得することができます。Pingによるパケットのロスト率やPingによるアクセスの成否、応答時間などもシンプルチェックの機能となります。シンプルチェックでは、Ping以外にもTCPやUDPでのチェックも可能で、通信ができるかどうかや応答時間も監視データとして収集することができます。

キー項目に設定したアイテムキーによって、取得する情報が決定されます。「選択」ボタンをクリックすることで、シンプルチェックで取得可能な情報を確認することができアイテムキーを設定することができます。

「ICMP loss」アイテムには、icmppinglossが設定されており Pingパケットのロスト率が取得できます。

データ型は、取得したデータが保存される際の型を指定します。Zabbixでは、必要に応じて取得した値に何かしらの計算を実施する場合があり、計算後の値に該当する型を指定します。

Zabbixでは単位記号が指定された場合、指定された単位記号に応じて計算が実施されます。取得できる値と出力したい値の単位を意識しておく必要がありそうです。

更新間隔は、アイテムの更新間隔を指定します。ヒストリの保存期間は、履歴としてデータベースに保存しておく日数を指定します。トレンドの保存期間は、ヒストリデータを1時間ごとに集計し、最大値、最小値、平均値を保存したサマリデータを保存しておく期間を指定します。

「ICMP loss」アイテムでは、アイテムの更新間隔は60秒、ヒストリ保存期間は1週間トレンド保存期間が365日に設定されています。

アプリケーションの項目でアプリケーションとアイテムが紐づけされ、「ICMP loss」アイテムは、「Status」グループ(アプリケーション)に所属したことになります。

「ICMP ping」、「ICMP response time」も同様の設定ですが、「ICMP ping」で「値のマッピングの使用」が設定されています。

値のマッピングの使用

値のマッピングの使用は、取得した値を別の形で出力したい場合に設定します。「ICMP ping」で指定されている「Service state」は、0 を Down,1 を Up として出力します。

トリガー

トリガーとは、アイテムが収集したデータをどのような条件で「評価」するのかを定義します。「深刻度」といったステータスの表現はできますが、アクションは別に設定します。

「トリガー 3」をクリックして設定内容を確認していきます。

トリガーの選択

「High ICMP ping loss」、「High ICMP ping response time」、「Unavailable by ICMP ping」の3つのトリガーが表示されます。

トリガーの一覧

「High ICMP ping loss」から確認していきます。「High ICMP ping loss」をクリックし、設定画面を表示します。

トリガーの設定

名前は、トリガーの名称を設定します。

深刻度は、トリガーに設定された条件を満たした場合のに、このトリガーの深刻度を表します。

条件式には、評価する式を設定します。「High ICMP ping loss」トリガーには、次の条件式が設定されておりアイテムの設定で指定したアイテムキーの「icmppingloss」から取得した値の5分間の最小値が{$ICMP_LOSS_WARN}より大きいか100より小さい場合に有効となります。

「{$ICMP_LOSS_WARN}」は、「Template Module ICMP Ping」テンプレートにマクロとして定義されています。

{Template Module ICMP Ping:icmppingloss.min(5m)}>{$ICMP_LOSS_WARN} and {Template Module ICMP Ping:icmppingloss.min(5m)}<100
マクロの設定

「Template Module ICMP Ping」テンプレートには、{$ICMP_LOSS_WARN}と{$ICMP_RESPONSE_TIME_WARN}が定義されています。

トリガーの設定には、依存関係を設定することができ「High ICMP ping loss」トリガーは、「Unavailable by ICMP ping」トリガーに依存するよう設定されています。依存関係の設定により条件を満たした場合でも依存先によってトリガーの発生を抑制することができるように設定できます。

条件式については、別途確認したいと思うので今回はここまでとします。