初心者向け Grafana を使用したネットワーク可視化のダッシュボード作成手順

はじめに

本記事では、第9回目記事第10回目記事に続き、Open Source Software (OSS) ツールの Grafana を使用して、ネットワーク運用を可視化するためのダッシュボード作成手順をご紹介します。

他にも Open Networking に関わる記事がありますので、以下「記事一覧はこちら」からご興味のある記事をご覧ください。

ダッシュボードとは

取得したデータをグラフや表などの様々な形式で表示し、ひとつの画面上にまとめて可視化するためのツールをダッシュボードと呼びます。

ダッシュボードを作成するには、データを保管しているデータソースとの連携が必要であり、Grafana では InfluxDB や Prometheus といったデータソースが主に使用されています。ダッシュボード上の可視化例として、ホワイトボックススイッチのトラフィック流量やインターフェースの状態、ハードウェアのリソース情報などが挙げられ、管理者やオペレータは監視システムの状況を把握しやすくなります。

図1:Grafana ダッシュボード可視化例

図1:Grafana ダッシュボード可視化例

ダッシュボード作成の準備

Grafana でダッシュボードを作成するには、まず初めに Grafana とデータソースを連携させる必要があります。Grafana とデータソースの相関図は第9回目記事図1(可視化環境構成図)に掲載していますので、適時ご覧ください。今回は InfluxDB との連携方法についてご紹介します。

① Web ブラウザーから Grafana にログイン後、トップメニュー左にある設定マーク "⚙" から [Data Sources] を選択
② 右上にある [Add data source] を選択
③ [InfluxDB] を選択
④ 下図緑枠の [URL] 項目にサーバーの IP アドレス及び TCP ポート番号を入力
  ※ TCP ポート番号については InfluxDB の設定ファイル (influxdb.conf) で確認ができます。
⑤ 下図黄枠の [Database] に任意のデータベース名を入力
⑥ 下図紫枠の [Save&Test] を押下して設定を保存

図2:InfluxDB 連携の設定画面

図2:InfluxDB 連携の設定画面

データソースとの連携に問題がなければ、上図赤枠のように [Data Source is working] と表示されます。

ダッシュボード作成

ダッシュボードを作成するための手順を下記に記載します。

① トップメニュー左の正方形が4つ合わさったマーク内にある [Manage] を選択
② [New Dashboard] を選択

図3:ダッシュボード作成画面

図3:ダッシュボード作成画面

ダッシュボードの作成画面にて、上図赤枠の [Add an empty panel] を選択してパネル (データ表示) の追加ができます。下図がパネルの追加画面になり、赤枠のクエリ部分がデータ取得の設定、黄枠ではパネルの名称や表示形式 (グラフや表など) の設定、軸の単位の­­設定などがおこなえます。

図4:パネル追加画面

パネルのデータ取得設定

次に Grafana から InfluxDB にデータを取得するための設定 (以下クエリ) 方法について、記載します。InfluxDB と連携した場合、クエリはプルダウン形式及び記述形式で設定をおこないます。InfluxDB のクエリは、SQL と類似した InfluxQL (Influx Query Language) という言語を使用しています。

本記事において、InfluxDB で重要となる用語を以下に記載します。

measurement:SQL でいうテーブルに該当
tag:データ取得の際、データの検索や条件に使用する項目
field:データ値
・timestamp:データを保存した時刻

下図はクエリ設定の画面となりますが、画面内にある青字の各項目 (句) について役割を記載します。FORMAT AS, ALIAS BY 句については、本記事での説明を割愛します。

図5:クエリ設定画面

図5:クエリ設定画面

FROM, WHERE 句

FROM 句では、どの measurement (以下テーブル) からデータを取得するのか決定します。WHERE 句では、条件式を指定することにより、設定した条件にマッチしたデータのみ取得ができます。条件式には tag や後述する変数を使用します。

SELECT 句

SELECT 句では単一、または複数の tag や field の取得について設定します。保存されている全データの平均値や合計値も取得することができます。テーブルには tag, field, timestamp の値が時系列毎に保存されています。下記の表は保存データの一例です。

表1:テーブルのデータ保存例

表1:テーブルのデータ保存例

GROUP BY 句

GROUP BY 句では、指定した tag を基準としてグループに分けることができます。前述の表を IP アドレス (tag) 毎にグループ化し、全データを合計した結果は下記のようになります。インターフェース名 (tag) でグループ化した場合には、Ethernet124 でまとめた合計値が出力されます。

表2:表1 のデータを IP アドレス毎にグループ化した例

表2:表1 のデータを IP アドレス毎にグループ化した例

変数フィルタリングの設定

Grafanaでは、登録した変数でフィルタリングをかけて複数ダッシュボードの表示内容を切り替えることが可能です。下記に記載する例では、装置の全インターフェース名を変数としてフィルタリングをおこない、ダッシュボードの内容を切り替えます。

図6:変数フィルタリング反映結果

図6:変数フィルタリング反映結果

変数の作成方法

① ダッシュボード画面右上の設定マーク "⚙" 内にある [Dashboard Setting] を選択
② 左メニューにある [Variables] を選択
③ [Add variable] を選択
④ 下図黄枠の [Name] に任意の変数名を入力
⑤ 下図赤枠の [Query] にデータ取得の条件文を指定
  ※ 画面内で指定した条件文は、テーブル [ifTable] から [ifName]  の tag を一覧取得する動作となり、結果が [Preview of values] に表示されます。
⑥ 下図紫枠の [Update] を押下

図7:変数作成画面

図7:変数作成画面

設定完了後、ダッシュボード画面に戻ると下記のようにプルダウンメニュー形式で変数が追加されます。こちらの変数は各パネルのクエリに設定が可能です。以上が、 Grafana でネットワーク運用を可視化するためのダッシュボード作成手順のご紹介になります。変数フィルタリングによるパネルの変化は第9回目記事に掲載していますので、よろしければご覧ください。

最後に

マクニカではオープンネットワーキングを実際に体験し、試験や検証をおこなえる環境をリモートで提供するサービスのご用意があります。本サービスでは、ネットワークOSの操作性の検証、様々なメーカーのネットワークOSやホワイトボックススイッチ、光トランシーバーを組み合わせた試験をおこなえます。

リモート検証サービス イメージ図

リモート検証サービス イメージ図

気軽にオープンネットワーキングの検証をおこなえるサービスとなっており、基本構成での利用は無償になっています。

ご利用可能なネットワークOSやホワイトボックススイッチについて、具体的なユースケース、またお申し込み方法はダウンロード資料よりご確認いただけます。資料は下記「マクニカ ネットワークOS リモート検証サービス」よりアンケートにご回答いただきますとご案内メールに記載されているURLよりダウンロードができます。

こんな方がリモート検証サービスを利用しています。

実際に利用いただいた方の声をご紹介します。

 

古河ネットワークソリューション株式会社 様

「昨今リモートのサービス環境が増えていますが、その中でも評価機材へのアクセス性が良く好印象でした。

ご提供頂いた資料も分かり易く、目的とした検証を円滑に進めることができました。」


資料一覧はこちら

資料一覧

マクニカが取り扱う製品のご紹介のほか、
BGPクロスネットワーク自動構築ファイルやネットワーク運用試験評価レポートなど、オープンネットワーキングに関する資料を掲載しております。

詳細はこちら

製品ページTopへ

Edgecore Networks

OpenNetworking/ホワイトボックススイッチ関連製品を先行して開発・販売し、オープンネットワーキングの先駆者であり続けています。

DELTA ELECTRONICS

ネットワーク、IoT、電子部品など様々な領域で数多くの実績を誇っております。

CGS Tower Networks

最先端の汎用ハードウエアを活用したネットワークパケットブローカー(NPB)を提供しています。

お問い合わせ

本記事に関してご質問などありましたら、以下より問い合わせください。

株式会社マクニカ
OpenNetwork 担当

お電話でのお問い合わせ:
045-470-9831

メールでのお問い合わせ:
projectmonstar@macnica.co.jp