【初心者向け】Grafana入門:導入から使い方まで徹底解説


【初心者向け】Grafana入門:導入から使い方まで徹底解説

システム監視やデータ分析に興味はあるけれど、どこから手をつければいいか分からない… そんな方にぜひ知っていただきたいのが「Grafana」です。

Grafanaは、様々なデータソースと連携し、美しいグラフやダッシュボードを作成できる強力なオープンソースの分析・監視プラットフォームです。初心者でも比較的扱いやすく、システムの状況を「見える化」するのに非常に役立ちます。

この記事では、Grafanaの基本的な概要から、実際にPCに導入し、簡単なダッシュボードを作成するまでの手順を、初心者の方にも分かりやすく徹底的に解説します。

1. Grafanaとは? なぜ使うの?

Grafanaの概要

Grafanaは、データを視覚化(Visualization)することに特化したツールです。単体ではデータを収集・保存する機能は持っていません。代わりに、Prometheus、InfluxDB、Elasticsearch、MySQL、PostgreSQLなど、様々な場所に保存されているデータを取得し、分かりやすい形式で表示します。

Grafanaの主な特徴

  1. 豊富なデータソース対応: 幅広い種類のデータベースや監視ツールと連携できます。
  2. 美しいダッシュボード: 豊富なグラフの種類(時系列グラフ、ゲージ、テーブルなど)を使って、見栄えの良いダッシュボードを簡単に作成できます。
  3. 柔軟なクエリ: 各データソースのクエリ言語を使い、必要なデータを正確に取得・整形できます。
  4. アラート機能: 閾値を超えた場合などに通知を行うアラートを設定できます。
  5. オープンソース: 無料で利用でき、活発なコミュニティがあります。
  6. 拡張性: プラグインによって機能を追加できます。

なぜGrafanaを使うのか?

システムを運用していると、「CPU使用率はどうなっているか?」「メモリは足りているか?」「ユーザーからのリクエスト数は増えているか?」といった情報を常に把握しておく必要があります。これらの情報は、個別のツールやログファイルを見ても断片的になりがちです。

Grafanaを使えば、これらの断片的な情報を一つの画面(ダッシュボード)に集約し、時系列で変化を追ったり、複数のメトリクスを比較したりすることが容易になります。これにより、以下のようなメリットが得られます。

  • 状況の把握: システム全体の健全性やパフォーマンスを一目で把握できます。
  • 問題の早期発見: 異常な傾向や急激な変化に素早く気づくことができます。
  • 原因の特定: 複数のグラフを関連付けて表示することで、問題の原因究明がしやすくなります。
  • トレンド分析: 長期間のデータを表示することで、将来的な傾向を予測したり、キャパシティプランニングに役立てたりできます。
  • チーム間の共有: チームメンバーや関係者と情報を容易に共有できます。

特に初心者の方にとっては、複雑なコマンド操作やログ解析ツールを使いこなす前に、まずはデータの「見える化」から始めるのに最適なツールと言えます。

2. Grafanaの導入(インストール)

Grafanaを始めるには、まずPCやサーバーにインストールする必要があります。ここでは、一般的な導入方法をいくつかご紹介します。初心者の方には、まずご自身のPCにインストールしてみるのがおすすめです。

導入前の準備

  • 動作環境: Linux (Ubuntu/Debian, CentOS/RHELなど)、Windows、macOSなど、様々なOSで動作します。
  • リソース: 多くのリソースは要求されませんが、快適に使うためにはある程度のCPUとメモリが必要です。データ量が増えるとディスク容量も必要になります。
  • インストール方法の選択:
    • OSに直接インストール: 各OSのパッケージマネージャーを使用(Linux)またはインストーラーを使用(Windows/macOS)。
    • Dockerコンテナ: Dockerがインストールされていれば、簡単に起動できます。初心者にもおすすめの手法です。
    • Grafana Cloud: インストール不要で、クラウド上で提供されるマネージドサービスです。無料枠もあります。

ここでは、Linux (Debian/Ubuntu系) と Docker でのインストール方法を簡単に説明します。

方法1: Linuxにaptコマンドでインストール(Debian/Ubuntu系)

この方法は、サーバーOSとして広く使われているUbuntuやDebianでよく利用されます。

  1. 必要なパッケージのインストール:
    bash
    sudo apt-get install -y apt-transport-https software-properties-common wget

    (apt-transport-https: HTTPS経由でのリポジトリアクセス、software-properties-common: add-apt-repositoryコマンドの提供、wget: ファイルダウンロード)

  2. Grafana GPGキーのインポート:
    Grafanaリポジトリの正当性を確認するためのキーを追加します。
    bash
    wget -q -O - https://packages.grafana.com/gpg.key | sudo apt-key add -

  3. Grafanaリポジトリの追加:
    /etc/apt/sources.list.d/grafana.list というファイルを作成し、以下の行を追加します。安定版リポジトリを追加する場合:
    bash
    echo "deb https://packages.grafana.com/oss/deb stable main" | sudo tee -a /etc/apt/sources.list.d/grafana.list

  4. aptリポジトリの更新:
    追加したリポジトリの情報をシステムに反映させます。
    bash
    sudo apt-get update

  5. Grafanaのインストール:
    bash
    sudo apt-get install grafana

  6. Grafanaサーバーの起動と有効化:
    システム起動時に自動的にGrafanaが立ち上がるように設定し、今すぐ起動します。
    bash
    sudo systemctl enable grafana-server
    sudo systemctl start grafana-server

  7. 状態確認:
    Grafanaサーバーが正常に起動しているか確認します。
    bash
    sudo systemctl status grafana-server

    active (running) と表示されていれば成功です。

方法2: Dockerでインストール

Dockerを使うと、OS環境を汚さずに手軽にGrafanaを試すことができます。Dockerがインストール済みであることが前提です。

  1. Grafanaコンテナの起動:
    以下のコマンドを実行します。
    bash
    docker run -d -p 3000:3000 --name grafana grafana/grafana

    • -d: バックグラウンドで実行
    • -p 3000:3000: ホストの3000ポートをコンテナの3000ポートにマッピング(これにより http://localhost:3000 でアクセス可能になります)
    • --name grafana: コンテナに grafana という名前を付けます
    • grafana/grafana: 使用するDockerイメージ名(公式イメージ)

    データ永続化のためには、ボリュームマウントを追加することを推奨します(初回はスキップしてもOK)。
    bash
    docker run -d -p 3000:3000 --name grafana -v grafana_data:/var/lib/grafana grafana/grafana

    grafana_data はDockerボリューム名)

  2. コンテナの状態確認:
    bash
    docker ps

    grafana という名前のコンテナが Up 状態になっていれば成功です。

アクセス

どちらの方法でインストールした場合も、Webブラウザを開き、以下のURLにアクセスします。

http://<GrafanaがインストールされているサーバーのIPアドレスまたはホスト名>:3000

ローカルPCにインストールした場合は http://localhost:3000 です。

3. Grafanaへのログインと基本操作

WebブラウザでGrafanaにアクセスすると、ログイン画面が表示されます。

  • 初期ユーザー名: admin
  • 初期パスワード: admin

初期ログイン時には、パスワードの変更を求められます。セキュリティのため、必ず新しいパスワードを設定してください。

ログイン後、Grafanaのメイン画面が表示されます。左側にナビゲーションメニューがあります。

  • Search dashboards: 既存のダッシュボードを検索
  • Create: 新しいダッシュボードやパネルを作成
  • Dashboards: ダッシュボード一覧やプレイリストなど
  • Explore: データソースを探索し、アドホックなクエリを実行
  • Alerting: アラートの設定・管理
  • Configuration: データソース、ユーザー、プラグインなどの設定
  • Server Admin (管理者のみ): ユーザー、組織、設定の管理

まずは、「Configuration」メニューから「Data sources」に進み、Grafanaに表示させたいデータの場所(データソース)を登録します。

4. データソースの接続

Grafanaは、単体ではデータを持ちません。外部のデータソースからデータを取得して表示します。ダッシュボードを作成する前に、まずはデータの取得元を設定する必要があります。

データソースの追加手順

  1. 左側のメニューから「Configuration (設定)」を選択します。
  2. 「Data sources (データソース)」を選択します。
  3. 画面上部の「Add data source (データソースの追加)」ボタンをクリックします。
  4. 利用可能なデータソースの一覧が表示されます。Prometheus, InfluxDB, MySQLなど、接続したいデータソースの種類を選択します。

ここでは例として、監視分野でよく利用されるPrometheusという時系列データベースをデータソースとして追加する手順を説明します。Prometheus自体が別途インストール・起動されている前提です。

例: Prometheusデータソースの追加

  1. データソースの種類で「Prometheus」を選択します。
  2. 設定画面が表示されます。最低限必要なのは以下の項目です。
    • Name: データソースの名前(例: MyPrometheus)。ダッシュボード作成時にこの名前でデータソースを選択します。
    • URL: Prometheusサーバーのアドレス(例: http://localhost:9090 または http://<PrometheusサーバーのIP>:9090)。
  3. 画面下部の「Save & Test (保存してテスト)」ボタンをクリックします。
  4. 接続に成功すると、「Data source is working」といったメッセージが表示されます。

これで、GrafanaからPrometheusに保存されているデータを参照できるようになりました。他のデータソース(InfluxDB, MySQLなど)でも、基本的な手順は同じです。データソースの種類によって設定項目は異なりますが、接続先のURLや認証情報などを入力することが多いです。

5. ダッシュボードの作成とパネルの追加

いよいよGrafanaのメイン機能であるダッシュボード作成です。ダッシュボードは、複数のグラフや表示要素(パネル)を集めたものです。

新しいダッシュボードの作成

  1. 左側のメニューから「Create (作成)」を選択します。
  2. 「Dashboard (ダッシュボード)」を選択します。
  3. 新しい空のダッシュボード画面が表示されます。
  4. 「Add visualization (可視化の追加)」または「Add Panel (パネルを追加)」ボタンをクリックします。

パネルの追加と設定

パネルはダッシュボードを構成する最小単位で、一つのグラフやテーブルなどを表示します。

パネルを追加すると、「Panel options」という設定画面が表示されます。この画面は主に以下のセクションに分かれています。

  1. Query (クエリ):

    • ここでどのデータソースから、どのようなデータを取得するかを定義します。
    • まず「Data source」ドロップダウンから、先ほど設定したデータソースを選択します(例: MyPrometheus)。
    • その下のエリアに、選択したデータソースに応じたクエリを入力します。例えばPrometheusならPromQLというクエリ言語を使います。
    • 例 (Prometheus): サーバーのCPU使用率を取得するクエリの一部 (node_cpu_seconds_total というメトリクスを仮定)。
      promql
      rate(node_cpu_seconds_total{mode="idle"}[5m])

      (このクエリは「5分間の平均で、CPUがアイドル状態だった時間の割合」を取得します。実際のCPU使用率とは逆の値になりますが、Prometheus入門としてはよく使われるメトリクスです。)
    • クエリを入力すると、画面下部にグラフのプレビューが表示されます。
    • 複数のクエリ(A, B, C…)を追加して、同じパネルに複数の系列を表示することも可能です。
    • 画面右上の「Query Inspector」ボタンは、クエリの実行状況や結果を詳しく見ることができ、デバッグに非常に役立ちます。
  2. Transform (変換):

    • 取得したデータを表示に適した形に変換する機能です。
    • 例えば、複数の系列を結合したり、不要なフィールドを削除したり、計算を行ったりできます。「Organize fields」で表示順序や名前を変更したり、「Add field from calculation」で新たな計算結果のフィールドを追加したりなどが可能です。
    • 初心者の方は最初はスキップしても大丈夫です。
  3. Visualization (可視化):

    • データの表示形式を選択します。デフォルトは「Time series (時系列)」グラフですが、他にも様々な種類があります。
    • Graph / Time series: 時間に伴う変化を表示する折れ線グラフ、棒グラフなど。
    • Stat: 単一の数値(現在の値、合計、平均など)を大きく表示。
    • Gauge: ゲージとして目標値に対する進捗などを表示。
    • Table: 表形式でデータを表示。
    • Heatmap: 時間と値の分布を色で表示。
    • その他多数のパネルタイプがあります。表示したいデータの種類に合わせて選択します。
  4. Panel options (パネルオプション):

    • 選択した可視化の種類に応じた詳細設定を行います。
    • Title: パネルのタイトルを設定します(例: サーバーCPUアイドル率)。
    • Description: パネルの説明を記述できます。
    • Units: データの単位を設定します(例: percent (0-100))。単位を設定すると、Y軸のラベルやツールチップ表示が適切になります。
    • Min/Max: Y軸の最小値・最大値を固定できます。
    • Thresholds: 特定の値を超えたら色を変えるなどの閾値表示を設定できます(例: アイドル率が10%を下回ったら赤色にする)。
    • Legend: グラフの凡例の表示方法を設定します。
    • 他にも軸の表示設定、ツールチップ、データリンクなど、多くの設定項目があります。

パネルの保存とダッシュボードへの追加

  • Panel options画面で設定が終わったら、画面右上の「Apply (適用)」ボタンをクリックします。
  • 設定したパネルがダッシュボードに追加されます。
  • 続けて「Add Panel」ボタンから別のパネルを追加したり、既存のパネルを複製して修正したりできます。

ダッシュボードの保存

  • ダッシュボードの編集が終わったら、画面上部の保存アイコン(フロッピーディスクの形)をクリックします。
  • ダッシュボードの名前を入力し、「Save (保存)」をクリックします。フォルダを作成して分類することも可能です。

これで、あなたの最初のダッシュボードが完成しました!

6. ダッシュボードの操作

作成したダッシュボードには、いくつかの便利な操作機能があります。

  • 時間範囲の変更: 画面右上の時間範囲セレクター(例: Last 6 hours)をクリックすると、表示する期間を変更できます。過去5分、1時間、24時間、7日間などのプリセットや、カスタム範囲の指定が可能です。この設定はダッシュボード全体に適用されます。
  • 自動更新: 時間範囲セレクターの隣にある更新間隔設定(例: 5s)をクリックすると、ダッシュボードの表示を定期的に自動更新できます。リアルタイムに近い監視を行う場合に便利です。
  • パネルの配置変更: パネルのタイトルバーをドラッグ&ドロップすることで、自由に配置を入れ替えたり、サイズを変更したりできます。
  • パネルの操作: 各パネルのタイトルバーにマウスカーソルを合わせると、メニューが表示されます。ここから「Explore」で詳細を確認したり、パネルを編集・複製・削除したりできます。

7. その他の便利な機能 (初心者向け)

  • Explore:
    • ダッシュボードにパネルを追加する前に、データソースに対してクエリを試しに実行し、結果を確認するのに非常に便利な機能です。左メニューから「Explore」を選択し、データソースとクエリを指定します。デバッグやアドホックな分析に活用しましょう。
  • Import Dashboard:
    • Grafanaコミュニティや各種プロジェクト(Kubernetes, Prometheus Node Exporterなど)は、事前に作成された便利なダッシュボードを公開しています。これらのダッシュボードをGrafanaにインポートして利用できます。Grafana Labsの公式ウェブサイト(https://grafana.com/grafana/dashboards/)などで、目的のデータソースやアプリケーションに対応したダッシュボードを探してみましょう。インポートは左メニューの「Dashboards」→「Import」から行います。ダッシュボードIDやJSONファイルを指定してインポートできます。

8. トラブルシューティングと学び方

  • 接続できない: データソースのURLや認証情報が正しいか、Grafanaサーバーからデータソースにネットワーク的に到達可能か(ファイアウォールなど)を確認してください。
  • データが表示されない:
    • データソースの設定は正しいか?
    • パネルのクエリは正しいか?(Explore機能でクエリを試してみるのが有効です)
    • データソース自体に目的のデータが保存されているか?
    • パネルの時間範囲設定は適切か?
    • Grafanaサーバーのログを確認すると、エラーメッセージが表示されていることがあります。
  • 公式ドキュメント: Grafanaの公式ドキュメント(https://grafana.com/docs/)は非常に充実しています。困ったときはまず公式ドキュメントを参照しましょう。
  • コミュニティ: GrafanaコミュニティフォーラムやStack Overflowなどでも多くの情報が共有されています。
  • データソースの学習: 効果的なダッシュボードを作成するには、利用するデータソース(Prometheus, InfluxDBなど)の基本的な使い方やクエリ言語を学ぶことも重要です。

9. まとめと次のステップ

この記事では、Grafanaの基本的な概念から、インストール、データソース接続、そして最も重要なダッシュボード作成のステップを解説しました。

  • Grafanaは様々なデータを「見える化」するのに役立つ強力なツールです。
  • 導入方法はいくつかありますが、Dockerが手軽でおすすめです。
  • Grafanaは単体ではデータを持ちません。まずデータソースを接続する必要があります。
  • ダッシュボードは複数のパネルで構成され、パネルごとにデータソース、クエリ、表示形式を設定します。
  • Explore機能やダッシュボードのインポート機能も活用しましょう。

Grafanaの世界は非常に奥深く、アラート設定、変数を使った動的なダッシュボード、権限管理、プラグインによる機能拡張など、様々な機能があります。

まずは、この記事で解説した基本的な手順を繰り返し試してみてください。ご自身の環境で取得できる様々なデータをGrafanaで表示してみることから始めて、少しずつ機能を使いこなせるようになっていきましょう。

システムの「見える化」は、安定稼働や改善の第一歩です。Grafanaをあなたの監視・分析活動にぜひ役立ててください!


コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

上部へスクロール