Zabbix4.0LTS マップで監視

監視方法や通知を調べている中でマップ機能をちょいちょい見かけて気になっていたので、ウチの中のネットワーク構成を絵にして監視してみようと思う。



やることは、以下。

 

こういう作業、ちょっと楽しい。できあがったマップは以下。

 

イメージの登録

基本的な装置のイメージはインストール時に登録されている。結構カッコいい。

だけど、実際に接続している製品をリアルに表示させるために独自のイメージを登録することもできる。メーカーや販売サイトにある商品の画像を加工して登録した。

そして、ネットワークに接続しているけれど、監視していないアイテムも飾りとして乗せてみたりしている(正常と書かれていないアイテムがそれ)。

また、実際の配線に合わせるとどうしてもネットワークの線がイメージと重なるので、線を束ねて迂回させるためだけのイメージも追加してみた。

 

イメージを追加するには、事前に画像を用意しておく必要がある。今回はメーカーや販売サイトから入手した画像を縮小して png 形式で保存してある。

管理 → 一般設定 と進み、右上にあるドロップダウンリストから イメージ を選択する。

右上に アイコンの作成 ボタンが表示されるのでクリックする。

ファイルを選択し、名前を入力して追加ボタンをクリックすればイメージを追加できる。

 

ネットワークの線を束ねるためのイメージとして、以下のようなイメージを作って登録しておいた。

ConnectionPoint.png

マップにこれを追加することで線の位置を思った方向に向けることができるが、線の色を変えるような監視設定は面倒になるかもしれない。

 

マップの作成

インストール時に Local network というマップが作られていて、これに追加していくことも可能だけれど、最初から作る方法を試してみる。

新しいマップの作成

監視データ → マップ → マップ作成ボタン をクリックし、マップの名前を入力する。幅を1000まで広げ、アイコンのハイライト(障害が表示されたときに円の背景が出てわかりやすくなる)とトリガーの状態が変化した要素をマーク(ステータスが変わった要素に3つのマーカーが表示される)にチェックを入れた。

共有タブ をクリックし公開(全員に見える)にした。

要素の追加

新しいマップを作成したら、変更リンクをクリックする。
または、マップを表示させて マップの変更 ボタンをクリックする。

編集画面になるので、アイコン という文字の右側にある 追加 というリンクをクリックすると要素が追加できる。

要素は追加した直後は「イメージ」になっている。
監視対象にならないただの絵(今回で言えばタブレットPCや携帯電話の絵)として配置するときに使える。


※リンクについては後述。

監視対象として配置するときにはタイプを「ホスト」に変更し、ホストを設定知れば監視対象になる。


※リンクについては後述。

リンクの追加

要素同士のつながりを線で表現できる。まだ学習していないけれど、この線の色を変えるような設定もできるみたい。

要素を1つクリック → もう一つの要素を[CTRL]を押しながらクリック すると2つの要素が選択できる。

この状態でリンクの右にある 追加 というリンクをクリックすると線が引かれる。

要素を必要分だけ追加し、リンクして…というのを繰り返して新しいマップを完成させる。

 

トリガーの設定

マップ上に配置した要素の障害はトリガーで検出されて表示される…という仕組みになっている模様。マップの中に配置した要素に個別の監視設定はできないっぽい。

ホストの監視方法ごとにトリガーを作成してみる。

エージェント

エージェントが利用不可能な場合に障害発生、という条件を作りたい。

今までの作業で
My Home Servers というホストグループに関連付いた
My Home Servers Templates (Ubuntu用のテンプレート)、および、
My Home Servers Templates for Windows (Windows系のテンプレート)
を作成してある。

これを以下の構成に変更する。
My Home Servers Templates (新設/エージェントチェックを設定)
My Home Servers Templates for Ubuntu (名称変更/Ubuntu用テンプレート)
My Home Servers Templates for Windows (Windows系テンプレート)

そして、Ubuntu と Windows の全てのホストが My Home Servers Templates をテンプレートとして取り込むように設定する。

テンプレートの一覧はこんな風になった。

My Home Servers Templates のアイテムとして ping を作成。
キーを agent.ping(エージェントが稼働しているかどうかを調べる) にして、それ以外はデフォルトのままで登録している。

このアイテムを判定するためのトリガー Alive Monitoring を作成。
条件式には nodata() を使用して以下を設定。

結果、こんなトリガーになる。

ここまで設定すれば、マップで障害がわかりやすく表示される。
仮想PCの WinTemp と SrvTemp を落とした状態だとエージェントは稼働していないと判定され、以下のように障害が表示になる。

いい感じ。

 

SNMP

SNMP も エージェントと同じように nodata() 関数で値が取得できないことを検出できる模様。過去の記事で受信パケット数を監視するアイテムを設定済みなので、この値が取得できない場合に障害を発生、という条件を作る。

SNMP のアイテムを判定するためのトリガー Alive Monitoring を作成。
条件式には nodata() を使用して以下を設定。

結果、こんなトリガーになる。

この設定をした状態で SNMP で監視しているプリンターの LAN ケーブルを抜いてみる。

プリンターの以上を検知できた。いい感じ。

 

PING

SNMPに対応していないルーターやハードディスクレコーダー等が該当。過去の記事で設定しているので既にできあがっている

マップに要素を貼り付けてあるので、テレビの LAN ケーブルを抜いてみる。

検知できた。

 

さいごに

ウチのネットワークを絵にしてみて、実はサーバーは仮想環境だな、この図は物理環境をうまく表せていないな。

ということは…いっそ線でつなぐのを諦めれば、もっと論理的なブロックを書くこともできるな、と気が付いた。

最初にマップのコンセプトを決めておいて、それに沿って要素を配置していけば、監視対象がたくさんあっても、必要な装置を一目で監視できるような画面を作ることができそうだ。

 

お気軽にどうぞ ~ 投稿に関するご意見・感想・他

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です