【入門】Grafana とは?構築や設定方法を説明

Grafana

Grafana とは、データソースの可視化やアラートの設定をする OSS です。

Grafana はデータソースにクエリを渡すことで、可視化するデータを取得します。

利用可能なデータソースの一例は、以下のとおりです。

対応しているデータソースの一覧は、公式ドキュメントをご覧ください。

Data sources | Grafana documentation
Grafana data sources Grafana comes with built-in support for many data sources. If you need other data sources, you can also install one of the many data source...
Grafana Plugins - extend and customize your Grafana
Visualize and alert on your observability and operational data, wherever it lives
スポンサーリンク

初めに

本記事は以下の書籍を参考に執筆しています。

また、本記事ではコンテナ環境構築シリーズの Grafana 編となります。

そのほかの記事は以下のとおりです。

スポンサーリンク

Grafana の使い方

今回は docker を利用して Grafana をインストールします。

docker で Grafana をインストール

docker run -p 3000:3000 grafana/grafana

http://localhost:3000 にアクセスします。
(ポートフォワーディングする場合 ssh -NL 3000:localhost:3000 $REMOTE_IP)

デフォルトの username と password は共に "admin" です

新しいパスワードを設定

ダッシュボードの作成

1. 左側サイドメニューの
 プラスマーク (➕) を選択
2. [Create] を選択

[Add a new panel] を選択

サンプル用のグラフが作成

下側にある [Query] タブから、サンプルグラフの作成に利用したクエリを確認できます。

  • データソース:--Grafana--
  • クエリ:Random Walk

[Save] を選択すると、Dashboard を保存できます。

Prometheus と連携

Grafana と相性の良いデータソースである Prometheus を連携する方法を紹介します。

docker compose を設定

まずは Prometheus、Pushgateway、Grafana の3つのコンテナを作成します。

version: '3'
services:
  prometheus: ##Prometheus コンテナ
    image: prom/prometheus:v2.35.0
    container_name: prometheus
    volumes:
      - ./prometheus.yml:/etc/prometheus/prometheus.yml
    ports:
      - 9090:9090
  
  exporter: #exporter コンテナ
    image: prom/node-exporter
    container_name: exporter
    ports:
      - 9100:9100

  grafana: #Grafana コンテナ
    image: grafana/grafana
    ports:
      - 3000:3000
vim prometheus.yml
global:
  scrape_interval: 10s
scrape_configs:
 - job_name: prometheus
   static_configs:
    - targets:
       - localhost:9090
 - job_name: node
   static_configs:
    - targets:
       - exporter:9100

http://localhost:3000 へアクセスし、ユーザー名とパスワードを「admin」でアクセスします。

Grafana のデータソースに Prometheus を追加

  1. 歯車アイコン
  2. [Data sources] を選択

[Add data source] を選択

[Prometheus] を選択

データソースの URL を http://prometheus:9090 に設定

(dockerPrometheus コンテナの名前で URL を名前解決)

[Save & test] を選択

Grafana で Prometheus を可視化

最後に Grafana で PromQL 式を利用して Prometheus にクエリを発行し、可視化を行います。

データソースに Prometheus を選択

up 式を入力

  1. [Run Query] を実行
  2. グラフが表示

以上の操作で Prometheus のデータを可視化することが出来ました。

これらのデータを利用して好きなダッシュボードを作ってみてください。

スポンサーリンク

関連記事

コンテナ環境構築シリーズの記事は以下のとおりです。


参考資料

Grafana open source documentation | Grafana documentation
Open source documentation for Grafana