Prometheusインストール・セットアップ

はじめに

前のパートでは、Prometheusがどのような仕組みで動作し、メトリクス収集の流れを学びました。ここからは実際に手を動かして、Prometheusをインストールして動かしてみましょう。

Prometheusのインストール方法はいくつかあります。バイナリファイルを直接使う方法もあれば、Dockerで簡単に実行する方法もあります。環境や要件に応じて、最適な方法を選ぶことが大切です。このパートでは各方法の特徴を理解したうえで、代表的な方法でセットアップして、実際に動作確認するまでの流れを見ていきましょう。

インストール方法の比較

Prometheusをセットアップするには、大きく3つの方法があります。それぞれの特徴をおさえて、自分の環境に合ったものを選ぶといいでしょう。

インストール方法セットアップの手軽さリソース効率推奨される場面
バイナリインストール中程度(手動設定が必要)高い(軽量)本番環境、Linux専有サーバー、複数インスタンス管理
Docker高い(コンテナ化済み)中程度(コンテナのオーバーヘッド)開発環境、ローカルテスト、マイクロサービス環境
パッケージマネージャー高い(apt/yum)高いUbuntu/Debian/CentOS環境、最小構成での運用

ここでは、バイナリインストールを代表例にして説明していきます。多くの環境に対応できるアプローチで、セットアップの流れを理解する助けになります。

バイナリインストール(代表例)

ステップ1: ダウンロードディレクトリの準備

まず、Prometheusをダウンロード・インストールするための作業ディレクトリを準備します。

bash
mkdir -p ~/prometheus-setup
cd ~/prometheus-setup

このディレクトリにPrometheus本体とその設定ファイルを配置していきます。

ステップ2: Prometheusバイナリのダウンロード

公式リリースページから、お使いのOSに対応したバイナリをダウンロードしましょう。ここでは macOS(Intel)の場合を例に進めます。

bash
wget https://github.com/prometheus/prometheus/releases/download/v2.45.0/prometheus-2.45.0.darwin-amd64.tar.gz

バージョン番号は最新のものに置き換えてください。Linux環境の場合は linux-amd64、M1 Macの場合は darwin-arm64 など、お使いの環境に合わせて選びます。

ステップ3: アーカイブの展開

ダウンロードしたファイルを展開します。

bash
tar xzf prometheus-2.45.0.darwin-amd64.tar.gz
cd prometheus-2.45.0.darwin-amd64

展開すると、prometheus という実行ファイルと、デフォルトの prometheus.yml 設定ファイルが含まれています。

ステップ4: 設定ファイルの確認と編集

展開されたディレクトリに含まれる prometheus.yml ファイルを確認します。ここでスクレイプ対象やアラートルール設定などを指定していきます。

初期設定では、Prometheus自身のメトリクスをローカルホスト(localhost:9090)から集めるよう設定されています。この状態でひとまず動かしてみることをお勧めします。

ステップ5: Prometheusの起動

以下のコマンドでPrometheusを起動します。

bash
./prometheus --config.file=prometheus.yml

起動すると、ターミナルにログが表示されます。Server is ready to receive web requests. というメッセージが出れば、正常に起動しています。

ステップ6: バックグラウンド実行への変更(オプション)

開発環境での動作確認が目的であれば、上記のフォアグラウンド実行で問題ありません。長時間実行する場合は、バックグラウンドで動かすといいですね。

ターミナルを別のウィンドウで開くか、以下のように nohup や systemd を使う方法もあります。

bash
nohup ./prometheus --config.file=prometheus.yml > prometheus.log 2>&1 &

初期設定手順

prometheus.yml の基本構成

Prometheusの動作を制御する主要な設定ファイルが prometheus.yml です。ここでは最小限の構成を見ていきます。

初期状態のファイルには、次のような要素が含まれています。

yaml
global:
  scrape_interval: 1m    # デフォルト値(テスト環境では15秒に短縮することもできます)
  evaluation_interval: 1m

scrape_configs:
  - job_name: 'prometheus'
    static_configs:
      - targets: ['localhost:9090']

ここで特に大切なのは次の3つです。

global セクション では、スクレイプ間隔などの基本設定を指定します。scrape_interval: 1m はデフォルト値で、1分ごとにメトリクスを集めるという意味ですね。開発環境やテストでは、15秒など短い間隔に変更することもできます。本番環境では、リソース効率とデータの鮮度のバランスを考えて設定しましょう。

scrape_configs セクション では、監視対象(ターゲット)を指定します。job_name: 'prometheus' は Prometheus 自身のメトリクス収集を、targets: ['localhost:9090'] はローカルホストのポート9090(Prometheusのメトリクスエンドポイント)を監視対象にしているということです。

詳しい設定パラメータや複数ターゲットの設定、アラートルール、リテンションポリシーなどは、次のパートで詳しく説明します。まずは、この最小構成でPrometheusが動くことを確認することが大切です。

Web UIへのアクセス確認

Prometheusを起動したら、ブラウザでWeb UIにアクセスして、正常に動作しているか確認しましょう。このガイドはPrometheus 2.45など、2.xバージョンを対象にしています。

アクセス方法

ブラウザを開いて、以下のアドレスにアクセスします。

Prometheus Web UIが表示されれば、インストール成功です。

確認ポイント

Web UIには複数のページがあります。ブラウザのメニューバーから、または以下のURLで直接アクセスできます。

  • Status ページ: [)
  • Targets ページ: [)
  • Graph ページ: [)

Status ページ では、Prometheusのバージョンや設定ファイルの読み込み状態、ターゲットの監視状況などが表示されます。ここで State: READY と表示され、スクレイプ対象(targets)が「UP」と緑色で表示されていれば、正常に動作しています。

Targets ページ では、設定した監視対象(スクレイプ対象)の一覧と、それぞれの状態が確認できます。localhost:9090 が「UP」と表示されていることを確認しましょう。

Graph ページ では、収集されたメトリクスをクエリして、グラフ表示することができます。試しに up というメトリクスをクエリボックスに入力して実行してみてください。up メトリクスは各ターゲットの監視状態を示す値で、値が 1 なら正常、0 なら接続失敗を意味します。グラフが表示されれば、メトリクス収集が正常に機能しています。

このように、Web UIを通じて、Prometheusがメトリクスを正常に収集し、クエリに応答していることが確認できます。

まとめ

このパートでは、Prometheusのインストール方法の選び方、バイナリを使ったセットアップの流れ、初期設定の最小構成、そしてWeb UIでの動作確認方法をお伝えしました。

ここまでで、Prometheusを実際に動かし、メトリクスを収集する環境が整いました。次のステップでは、より詳しい設定方法、複数ターゲットの監視設定、アラートルールの定義など、運用に必要な機能を学んでいきます。


ナビゲーション