はじめに
本記事では、第9回目記事、第10回目記事に続き、Open Source Software (OSS) ツールの Grafana を使用して、ネットワーク運用を可視化するためのダッシュボード作成手順をご紹介します。
他にも Open Networking に関わる記事がありますので、以下「記事一覧はこちら」からご興味のある記事をご覧ください。
ダッシュボードとは
取得したデータをグラフや表などの様々な形式で表示し、ひとつの画面上にまとめて可視化するためのツールをダッシュボードと呼びます。
ダッシュボードを作成するには、データを保管しているデータソースとの連携が必要であり、Grafana では InfluxDB や Prometheus といったデータソースが主に使用されています。ダッシュボード上の可視化例として、ホワイトボックススイッチのトラフィック流量やインターフェースの状態、ハードウェアのリソース情報などが挙げられ、管理者やオペレータは監視システムの状況を把握しやすくなります。
図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 連携の設定画面
データソースとの連携に問題がなければ、上図赤枠のように [Data Source is working] と表示されます。
ダッシュボード作成
ダッシュボードを作成するための手順を下記に記載します。
① トップメニュー左の正方形が4つ合わさったマーク内にある [Manage] を選択
② [New Dashboard] を選択
図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:クエリ設定画面
FROM, WHERE 句
FROM 句では、どの measurement (以下テーブル) からデータを取得するのか決定します。WHERE 句では、条件式を指定することにより、設定した条件にマッチしたデータのみ取得ができます。条件式には tag や後述する変数を使用します。
SELECT 句
SELECT 句では単一、または複数の tag や field の取得について設定します。保存されている全データの平均値や合計値も取得することができます。テーブルには tag, field, timestamp の値が時系列毎に保存されています。下記の表は保存データの一例です。
表1:テーブルのデータ保存例
GROUP BY 句
GROUP BY 句では、指定した tag を基準としてグループに分けることができます。前述の表を IP アドレス (tag) 毎にグループ化し、全データを合計した結果は下記のようになります。インターフェース名 (tag) でグループ化した場合には、Ethernet124 でまとめた合計値が出力されます。
表2:表1 のデータを IP アドレス毎にグループ化した例
変数フィルタリングの設定
Grafanaでは、登録した変数でフィルタリングをかけて複数ダッシュボードの表示内容を切り替えることが可能です。下記に記載する例では、装置の全インターフェース名を変数としてフィルタリングをおこない、ダッシュボードの内容を切り替えます。
図6:変数フィルタリング反映結果
変数の作成方法
① ダッシュボード画面右上の設定マーク "⚙" 内にある [Dashboard Setting] を選択
② 左メニューにある [Variables] を選択
③ [Add variable] を選択
④ 下図黄枠の [Name] に任意の変数名を入力
⑤ 下図赤枠の [Query] にデータ取得の条件文を指定
※ 画面内で指定した条件文は、テーブル [ifTable] から [ifName] の tag を一覧取得する動作となり、結果が [Preview of values] に表示されます。
⑥ 下図紫枠の [Update] を押下
図7:変数作成画面
設定完了後、ダッシュボード画面に戻ると下記のようにプルダウンメニュー形式で変数が追加されます。こちらの変数は各パネルのクエリに設定が可能です。以上が、 Grafana でネットワーク運用を可視化するためのダッシュボード作成手順のご紹介になります。変数フィルタリングによるパネルの変化は第9回目記事に掲載していますので、よろしければご覧ください。
最後に
マクニカではオープンネットワーキングを実際に体験し、試験や検証をおこなえる環境をリモートで提供するサービスのご用意があります。本サービスでは、ネットワークOSの操作性の検証、様々なメーカーのネットワークOSやホワイトボックススイッチ、光トランシーバーを組み合わせた試験をおこなえます。
リモート検証サービス イメージ図
気軽にオープンネットワーキングの検証をおこなえるサービスとなっており、基本構成での利用は無償になっています。
ご利用可能なネットワークOSやホワイトボックススイッチについて、具体的なユースケース、またお申し込み方法はダウンロード資料よりご確認いただけます。資料は下記「マクニカ ネットワークOS リモート検証サービス」よりアンケートにご回答いただきますとご案内メールに記載されているURLよりダウンロードができます。
こんな方がリモート検証サービスを利用しています。
実際に利用いただいた方の声をご紹介します。
古河ネットワークソリューション株式会社 様
「昨今リモートのサービス環境が増えていますが、その中でも評価機材へのアクセス性が良く好印象でした。
ご提供頂いた資料も分かり易く、目的とした検証を円滑に進めることができました。」
関連する情報
資料一覧はこちら
マクニカが取り扱う製品のご紹介のほか、
BGPクロスネットワーク自動構築ファイルやネットワーク運用試験評価レポートなど、オープンネットワーキングに関する資料を掲載しております。
詳細はこちら
製品ページTopへ
お問い合わせ
本記事に関してご質問などありましたら、以下より問い合わせください。