Checkmk
to checkmk.com
Important

This is a machine translation based on the English version of the article. It might or might not have already been subject to text preparation. If you find errors, please file a GitHub issue that states the paragraph that has to be improved.

1. NagVis とは何ですか?

監視の基本に関する記事では、親子関係に基づくネットワークのトポロジーマップをご覧いただきました。 NagVis は、このようなマップの作成を担当します。 この拡張機能により、インフラストラクチャ、サーバー、ポート、プロセスなどを視覚化することができます。

NagVis の動作モードは基本的に非常にシンプルです。 Checkmk、より正確にはライブステータスが、ホスト、サービス、ホストグループ、サービスグループなどのバックエンドデータを提供します。 監視から取得したこれらのエレメントは、さまざまなマップ上にアイコンとして配置することができます。 これらのダイナミックアイコンは、各ホストおよびサービスの現在の状態を表示します。 より詳細な追加情報は、ツールチップで提供することができます。 そして最後に、アイコンやその他のエレメントは、それらが表す Checkmk オブジェクトへのリンクでもあります。 その他の利用可能なエレメントとしては、線、パフォーマンス表示(ガジェット)、外部コンテンツ用のコンテナなどがあります。

Checkmk で NagVis を使用して実現できることをよりよく理解するために、3 つの例をご紹介します。

  • 場所の管理のためのOpenStreetMapに基づく地理的マップ。

  • 親子関係から自動的に作成されるトポロジマップ。

  • ポートおよびハードウェアの概要を表示するための、個々のスイッチまたはサーバールームのマップ。

親子関係が定義されている場合、追加の操作を行うことなく、Monitor > Overview > Parent / Child topology を使用して Checkmk でマップを呼び出すことができます。 ここでは、追加の手順は必要ありません。

monitoring parents

2. NagVis の設定

NagVis は Checkmk に完全に統合されており、監視対象からマップにエレメントをすぐに追加できるよう設定されています。

NagVis を起動するには、まずサイドバーの下部にある をクリックして、サイドバーで使用可能なスナップインのセクションを開きます。 ここで「NagVis maps 」スナップインを選択し、最後に ボタンで NagVis を起動します。

nagvis snapin nagvis

最初のマップを作成する前に、Options > General Configuration のメイン設定を確認してください。 ここでは、データ形式や言語設定、マップ上のオブジェクトの表示、利用可能なホストおよびサービスの状態の重み付けなど、100 以上の基本オプションを確認できます。

nagvis2 general configuration

ここでは、NagVis の使用方法、特に設定オプションについては、詳しい説明は省略いたします。 NagVis には、メイン設定のすべてのオプションについても説明が記載された、非常に優れた詳細なドキュメントが付属しています。 以下では、Checkmk で NagVis を使用して、シンプルで有用なマップを作成するために必要な、最も基本的な事項のみに説明を限定いたします。

3. マップの作成

3.1. さまざまな種類のマップ

NagVis では、通常、動的、自動、および対話型/非対話型の地理マップの 5 種類のマップを提供しています。

  • 通常マップは、標準的なマップタイプです。 このマップでは、スイッチポートからサーバー室、インフラストラクチャ全体に至るまで、あらゆるシナリオを視覚化することができます。 エレメント(アイコン、線など)は、Checkmk ホストおよびサービスのインベントリからマップに個別に追加されます。

  • 動的マップは、通常のマップとよく似ていますが、1 つの大きな違いがあります。 ホスト、サービス、ホストグループ、サービスグループは、明示的に指定するのではなく、正規表現のフォームのフィルタを使用して指定します。 より正確には、有効なライブステータスフィルタのフォームで指定します。 これにより、新しいホストやサービス、および変更が、手動操作を必要とせずに自動的にマップに反映されます。

  • オートマップは、すでにご紹介しました。 これは、この記事の冒頭で述べたネットワークトポロジマップで、Checkmk で定義された親子関係から完全に自動生成されます。

  • 地理マップは、OpenStreetMap (OSM) プロジェクトのマップ素材を背景としてレンダリングされたマップです。

3.2. 自動マップの作成

代表的なマップを最も早く作成する機能は、オートマップです。Options > Manage Maps > Create Map から、Automap based on parent/child relations タイプの新しいマップを作成します。ID に内部名myautomapAlias に表示名My Automap を入力します。

nagvis2 automap create

マップ自体がコンテンツ領域にすぐに表示され、対応するリンクが「NagVis maps 」スナップインに表示されます。 次に、Edit Map > Map Options > Automap で、自動マップ固有の設定をカスタマイズできます。render_mode エントリは、マップ上のノードの基本的なレイアウトを指定するため、特に重要です。

nagvis2 automap options

さらに、マップのルートもここで指定できます。 ただし、マップ上のアイコンを右クリックして、コンテキストメニューの [Make root ] を選択した方が簡単です。

nagvis2 automap contextmenu

3.3. 通常のマップの作成

通常のマップは、NagVis で最もよく使用されるマップです。 NagVis の手順と最も重要なエレメントを理解していただくために、サーバーラックの小さなマップを作成する方法をご紹介します。 これにより、個々の背景上にホストが視覚化され、監視対象のホストがOK の状態ではない場合に、視覚的および聴覚的な警告が表示されます。

マップを作成するには、Options > Manage Maps からオプションを開きます。 ここで、Create Map でマップに「mymap 」という名前と「My Map 」というエイリアスを付けます。Map Type で「Regular map 」を選択し、「Create 」ボタンで確定します。

nagvis2 regularmap create

次に、監視対象のラックの画像を背景としてインポートします。 これは、Options > Manage Backgrounds を使用して行います。 ローカルファイルを選択し、Upload ボタンで確定します。

nagvis2 regularmap upload background

次に、インポートした画像を現在のマップの背景として設定する必要があります。Edit Map > Map Options でマップオプションを呼び出し、Appearance タブに移動します。 ここで、map_image オプションを有効にし、メニューから目的の画像を選択します。 この時点ではまだ保存しないでください。マップオプションの設定が必要です。

nagvis2 regularmap background

Obj. Defaults タブに移動します。 ここで、label_show オプションを有効にします。 このオプションを有効にすると、マップ上のホストアイコンとサービスアイコンに、それぞれのホスト名/サービス名がラベルとして表示されます。このオプションを有効にしない場合、アイコンはツールチップでしか識別できません。 最後に、これらの設定を保存します。

nagvis2 regularmap show label

次に、ホストを追加します。Edit Map > Add Icon > host をクリックし、アイコンを配置するマップ上の位置にカーソル(十字マーク)を置きます。この時点で、Create Object ダイアログが開きます。General タブで、host_name のドロップダウンメニューから目的のホストを選択し、保存します。 複数のCheckmkサイトを運用している場合は、backend_id を使用して別のデータソースを使用することができます。

nagvis2 regularmap host create

アイコンがマップ上に配置され、ツールチップで詳細情報が表示されます。 アイコンをクリックすると、Checkmk のホストに直接移動します。NagVis に配置されたオブジェクトはすべて、Checkmk オブジェクトへのリンクです。

nagvis2 regularmap host hover

アイコンを移動または編集するには、編集モードを有効にする必要があります。 アイコンを右クリックしてコンテキストメニューを開き、Unlock を選択します。

nagvis2 regularmap icon menu locked

これで、アイコンを移動したり、コンテキストメニューを再度開くことができます。 ここでは、オブジェクトの複製、削除、編集、または [Acknowledge ] オプションを選択して問題を確認するための新しいオプションがいくつか表示されます。

nagvis2 regularmap icon menu unlocked

ホスト/アイコンの編集が完了したら、そのコンテキストメニューを再度開き、[Lock] を選択します。 ちなみに、[Edit Map > Lock/Unlock all ] を使用すると、マップ全体の編集モードを有効または無効にすることができます。

これで、マップにホストを追加することができます。 サービス、ホストグループ、サービスグループの追加も同様です。

最後に、マップをロードする際に、問題が発生した場合に警告音とホストアイコンの点滅で通知するように設定することができます。 これを行うには、[Edit Map > Map Options ] を呼び出し、[Events ] タブに切り替えます。 ここで、画面上部の [event_on_load] を有効にし、下部の [event_sound ] ボックスをチェックして、警告音を鳴らすように設定します。

nagvis2 regularmap events

3.4. 地理的な地図の作成

地理的なマップは 2 種類のフォームで利用できます。 インタラクティブなフォームは、Google マップなどでよく知られているように、スクロールやズームが可能で、自動的に背景として設定されます。 このようなマップ上に配置されたオブジェクトは、その後同じタイプのすべてのマップに表示されます。 NagVis は、マップの縮尺に関係なく、オブジェクトは常に特定の場所に存在すると想定しています。 したがって、たとえば、ハンブルクにあるホストは、世界地図、ドイツ地図、そしてもちろんハンブルク地図にも表示されます。

NagVis は、最終的には、さまざまなマップセクションおよびズームレベルをビューポートとしてのみ表示します。 ビューポートは、いつでも個別の新しいマップとして保存することができます。 ビューポート/マップも同様にマップ上にアイコンとして表示できるため、マップはある程度ネストすることができます。 たとえば、ドイツのマップとその依存関係を表示し、クリックすると州の詳細ビューを表示し、さらに必要に応じて特定の子会社、サーバー室、さらには個々のスイッチのマップまで表示することができます。

手動によるナビゲーションとは対照的に、インタラクティブなマップを使用すると、より迅速かつ便利に操作できます。また、個々のマップはアクティブな状態であるため、たとえば、 別々のモニターに並べて表示したり、1 つのモニターで自動的に回転するように設定したりすることができます(詳細は後述)。 また、重要な点として、この方法では、関連するマップの概要がツールチップとして表示されます。 これにより、第三者が階層をたどる必要がなく、ズームが必要な場所を事前に知る必要もないため、より直感的に利用できます。

非インタラクティブな地理マップには、レンダリングするホストと座標を含む CSV ファイルを入力する必要があります。 この場合、一般的な既存のエレメントはありません。

Nagvis のドキュメントではインタラクティブな地理マップは「worldmaps」と呼ばれ、非インタラクティブなものは「geomaps」と呼ばれています。 Worldmaps は、NagVis バージョン 1.9 で初めて追加されました。

例:ドイツ全体のインタラクティブマップを作成し、これにノルトライン・ヴェストファーレン州 (NRW) の新しいビューポートをリンクします。Options > Manage Maps > Create Map で、インタラクティブな地理マップ (worldmap) を作成します。Map Type で、Geographical Map (interactive) オプションを選択します。ID (mygeomap) および Alias (My Geographical Map) もここで定義できます。

nagvis2 geomap create

概要として必要なマップセクションを指定し、Edit Map > Viewport > Save view でこのビューを保存します。

nagvis2 geomap save view

次に、ノルトライン・ヴェストファーレン州の詳細が表示されるまで、マップをズームインします。 今回は、Map > Viewport > Save as new map を新しいマップmygeomap_nrw として保存します。

nagvis2 geomap save viewport

マップのエイリアスは元のマップから採用されるため、左側のナビゲーションバーには「My Geographical Map 」という名前のマップが 2 つ表示されます。 そのため、新しいエイリアス「My Geographical Map NRW 」を「Edit Map > Map Options 」で定義します。

nagvis2 geomap vieport alias

ドイツマップMy Geographical Map に切り替えて、Edit Map > Add Icon > Map でノルトライン・ヴェストファーレン州マップへのリンクを追加します。 次の「Create Object 」ダイアログでは、「map_name 」メニューから「mygeomap_nrw 」マップを選択するだけで済みます。

nagvis2 geomap map icon create

その後、ドイツ地図の新しいアイコンをクリックすると、ノルトライン・ヴェストファーレン州地図に直接移動します。 同じ方法で、追加の地図をリンクさせることができます。もちろん、ノルトライン・ヴェストファーレン州地図からドイツ地図に戻るナビゲーションもビルトインすることができます。

nagvis2 geomap map link

マップコンテンツの実際の読み込みも、他のマップタイプの場合と同じ手順で行います。 ただし、世界地図の1つに追加したオブジェクトは、実際には実際の地理的状況の代替ビューにすぎないため、他の世界地図にもすべて表示されることにご注意ください。

3.5. ダイナミックマップの作成

ダイナミックマップは、前述のように、エレメントの追加方法が通常のマップとは異なります。 ダイナミックマップでは、手動で追加する代わりに、ライブステータスフィルターを介して、ホスト、サービス、ホストグループ、サービスグループなどのエレメントが動的に取得されます。 例えば、マップは、すべてのホストからCPU load サービスを自動的に取得する必要があります。

このようなマップを作成するには、再び「Options > Manage Maps > Create Map 」から開始し、ID (mydynamicmap) およびエイリアス (My Dynamic Map) を割り当てます。

nagvis2 dynmap create

次に、Edit Map > Map Options でマップオプションを開き、Dynmap タブを選択します。 ここで、dynmap_object_types オプションを有効にし、オブジェクトタイプとしてサービスを選択します。

ここで、サービスのフィルタを定義する 2 番目のオプション「dynmap_object_filter 」が重要です。 簡単なライブステータスクエリFilter: description ~ CPU load\n 」を使用します。 これにより、description 列で「CPU load 」という文字列が検索されます。 この「\n 」はフィルタ自体には属しておらず、フィルタによって構築されたライブステータスクエリに必要な改行を生成するだけです。

nagvis2 dynmap options filter

ここで保存すると、監視のすべてのCPU load サービスがマップ上に表示されます。 また、監視にフィルタと一致する新しいオブジェクトが追加されると、そのオブジェクトも自動的にマップに追加されます。

nagvis2 dynmap auto icons

NagVis のドキュメントには、設定ファイルを使用して設定を直接機能させる方法も記載されています。

ちなみに、 Actions > Export to static map では動的なマップも静的なマップとして保存できるため、この方法は、非常に多くのエレメントを含む静的なマップを作成する初心者のヘルプとして使用できます。

4. マップのカスタマイズ

4.1. 線

NagVis には、さまざまな種類の線があります。Edit Map > Add Special > Stateless Line には、機能のない純粋に装飾用の線があります。 アイコンと同じように、ホストとサービスを「信号機の色」で視覚化する線があります。そして、ウェザーマップ線があります。 これは、7 つの異なる色を使用してネットワークの帯域幅を視覚化する線です。 ウェザーマップ線を作成するには、次のようにします。

まず、[Edit Map > Add Line > Service ] から開始し、[Create Object ] ダイアログでホストとネットワークインターフェイスを選択します。

nagvis2 lines create

次に、[Appearance ] タブに切り替え、[view_type ] を [line] に設定します。 [line_type ] で、[--%+BW-><-%+BW-- ] エントリを有効にします。 これにより、アップロードおよびダウンロード用の線が作成され、帯域幅のパーセンテージ (%) および絶対値 (BW) を表すラベルが含まれます。

nagvis2 lines line type

保存すると、行がマップに表示されます。 中央の「ロック」アイコンをクリックすると、行の終点と中点を移動することができます。

nagvis2 lines weatherlines

NagVis には、デフォルトの凡例も用意されています。Edit Map > Add Special > Shape を使用して、いわゆる「シェイプ」(NagVis では単なる画像)を挿入します。icon オプションで、ドロップダウンメニューから画像demo_traffic_load_legend.png を選択します。

nagvis2 lines weatherlines result

4.2. ガジェット

ガジェットは、線やアイコンと同様に、マップ上の視覚化を補助するものです。 これらは、スピードメーターや温度計などのフォームでパフォーマンスデータを表示します。 したがって、これらはサービスでのみ使用できます。 例として、ネットワークインターフェイスの負荷をスピードメーターのようなスタイルで作成することができます。

Edit Map > Add Icon > Service を使用して、アイコンとしてサービスをマップに追加します。General タブで、ホストと適切なネットワークインターフェイスをサービスとして選択します。

Appearance タブに切り替え、view_typegadget に設定します。 そのすぐ下で、gadget_url を有効にします。 ここでは、~/share/nagvis/htdocs/userfiles/gadgets/ 内のファイルに対応する、さまざまな表示バリエーションが用意されています。 スピードメーター表示には、std_speedometer.php を選択します。

nagvis2 gadget speedometer

4.3. マップを回転させる

NagVis の概要ページで、ナビゲーションバーの左下にある「Rotations 」エントリ、または中央の「Rotation Pools 」の下にあるマップのリストに気づいたかもしれません。 マップは、任意の間隔で自動的に回転するように設定できます。これは、たとえば、一般に公開されている情報モニターに便利です。

この設定は、NagVis の設定ファイル~/etc/nagvis/nagvis.ini.php で構成できます。 このファイルを開き、448 行目までスクロールすると、Rotation pool definitions が見つかります。

ここでは、回転プール、適切なマップ、および間隔を定義するために 3 行が必要です。以下の例では、プールmyrotation 、マップmymap1mymap2 、およびmymap3 、間隔 30 秒を設定しています。

~/etc/nagvis/nagvis.ini.php
[rotation_myrotation]
maps="mymap1,mymap2,mymap3"
interval=30
このページでは