Time Series Database (TSDB) を Grafana に接続すると、Grafana のダッシュボード、メトリッククエリ、変数ベースのフィルタリングを使用して、TSDB インスタンスのデータを可視化および監視できます。
前提条件
開始する前に、以下が準備できていることを確認してください:
TSDB インスタンス
ご利用の TSDB インスタンスと同じ VPC 内にある Elastic Compute Service (ECS) インスタンス。以下の仕様を満たしている必要があります:
OS: 64 ビット CentOS 7.3
1 つ以上の CPU コアと 2 GB 以上のメモリ
10 GB 以上の利用可能なディスクストレージ
ECS インスタンスのプライベート IP アドレスが TSDB インスタンスのホワイトリストに追加されていること
ECS インスタンスにポート 3000 でのインバウンドトラフィックを許可するセキュリティグループルールが設定されていること。詳細については、「セキュリティグループの作成」をご参照ください。
(任意) インターネット経由でブラウザから Grafana にアクセスする場合は、ECS インスタンスにパブリック IP アドレスが必要です。
詳細については、「ECS とは?」をご参照ください。
ECS への Grafana のインストール
ご利用の ECS インスタンスに SSH 接続し、次のコマンドを実行して Grafana をインストールします:
sudo yum install https://dl.grafana.com/oss/release/grafana-6.2.2-1.x86_64.rpmGrafana を起動します:
sudo service grafana-server start
その他のインストールオプションについては、Grafana のドキュメントをご参照ください。
データソースとしての TSDB の追加
クイックリファレンス
| 設定 | 値 |
|---|---|
| データベースの種類 | OpenTSDB |
| [URL] | ご利用の TSDB インスタンスのプライベートエンドポイント (VPC ネットワークアドレス) |
| バージョン | ≥2.3 |
| 基本認証 | ユーザー管理が有効な場合に有効化 |
| 資格情報付き | ユーザー管理が有効な場合に有効化 |
手順
ブラウザを開き、
http://<ECS-public-IP>:3000/にアクセスします。Grafana のログインページが表示されます。Grafana のログインページで、ユーザー名とパスワードに admin を入力します。
新しいデータソースを作成し、以下の設定項目を構成します。他のすべての設定はデフォルト値のままにします。
[データベースタイプ]: [OpenTSDB] に設定します。
[URL]: ご利用の TSDB インスタンスのプライベートエンドポイントを入力します。このエンドポイントは、TSDB コンソールの [インスタンス詳細] ページを開き、[基本情報] の下にある [VPC ネットワークアドレス] から値をコピーして取得します。
[バージョン]: [≥2.3] を選択します。
ご利用の TSDB インスタンスでユーザー管理が有効になっている場合は、[Basic 認証] と [With Credentials] を選択し、インスタンスへの読み取りアクセス権を持つユーザーの認証情報を入力します。

[保存 & テスト] をクリックします。
Data source is workingというメッセージが表示されたら、接続は確立されています。
モニタリングダッシュボードの作成
このセクションのスクリーンショットは Grafana 6.2 のものです。他の Grafana バージョンではインターフェイスが異なる場合があります。
Grafana のホームページで、[作成] > [ダッシュボード] を選択します。ご利用の TSDB インスタンスのダッシュボードが既に存在する場合は、それを選択します。

[新しいパネル] をクリックし、[新しいパネル] ダイアログボックスで [クエリを追加] をクリックします。

パネルエディターで、クエリパラメーターを構成します:
監視するメトリックを選択し、時系列全体で値を集計する方法を指定します。
interval、Aggregator、Fill パラメーターを設定して、ダウンサンプリングルールを構成します。
タグで時系列をグループ化します。特定のタグのすべてのタグ値を含めるには、タグ値として
*を入力します。

アグリゲーターの互換性: TSDB は、Grafana で利用可能なアグリゲーターのサブセットをサポートしています。サポートされているリストについては、「単一値データポイントのクエリ」をご参照ください。
複数値モデルのメトリックのクエリ
単一値モデルまたは複数値モデルのメトリックをクエリするには、クエリフィールドにメトリック名を入力します。ドロップダウンにメトリック名が表示されます。
複数値モデルのメトリックのすべてのフィールドを表示するには、メトリック名の後に @ を入力します。ドロップダウンに利用可能なすべてのフィールドが一覧表示されるので、目的のフィールドを選択します。
Grafana は数値のみを表示: TSDB は数値、文字列、ブール値をサポートしていますが、Grafana は数値のみをレンダリングします。そのため、文字列およびブール値のフィールドはパネルに表示されません。

変数を使用した時系列のフィルタリング
時系列の数が増えると、各パネルのクエリを手動で更新するのは非現実的になります。Grafana の変数を使用すると、パネル全体に適用される動的フィルターを作成できます。以下の例では、タグで時系列をフィルタリングするための変数を作成します。
ダッシュボードで、[設定] アイコンをクリックします。

[変数] ページで、変数を構成します: 完全な式構文については、Grafana のドキュメントをご参照ください。この例では、変数はタグ値を表すため、
tag_valuesで始まる式を使用します。 > Grafana 6.2.2 以前のクエリ結果の制限: すべての Grafana バージョンでは、返されるクエリ結果の数に制限があります。一部のメトリック、タグキー、またはタグ値がドロップダウンに表示されない場合があります。この問題が発生した場合は、クエリ条件を絞り込むか、回避策を適用してください。この問題はバージョン 6.2.2 以前では修正されていません。[データソース] を OpenTSDB に設定します。
[クエリ] フィールドに、OpenTSDB 用の Grafana クエリ式を入力します。以下の式がサポートされています:
式 戻り値 metrics(prefix)指定されたプレフィックスを含むすべてのメトリック名 (空の場合もあります) tag_names(metric)指定されたメトリックのすべてのタグキー tag_values(metric, tagKey)指定されたメトリックの指定されたタグキーのすべてのタグ値 suggest_tagk(prefix)すべてのメトリックにわたる、指定されたプレフィックスを持つすべてのタグキー suggest_tagv(prefix)すべてのメトリックにわたる、指定されたプレフィックスを持つすべてのタグ値

パネルクエリで
$<variable-name>を使用して変数を参照します。
次のステップ
詳細については、Grafana の公式ドキュメントをご参照ください。