プロメテウス は無料のオープンソースの監視およびアラートツールで、2012年にSoundCloudでメトリックを監視するために最初に使用されました。Goプログラミング言語で記述されています。
Prometheusは、時系列データベースでリアルタイムイベントを監視および記録します。 それ以来、それは飛躍的に成長し、インフラストラクチャメトリックを監視するために多くの組織に採用されてきました。 Prometheusは、エラーの迅速な診断とトラブルシューティングに役立つ柔軟なクエリとリアルタイムのアラートを提供します。
Prometheusは、次の主要コンポーネントで構成されています。
- 時系列データをスクレイピングおよび保存するためのメインのPrometheusサーバー。
- Graphite、HAProxy、StatsDなどのサービスのためのユニークなエクスポーター
- アラートを処理するためのアラートマネージャー
- 一時的なジョブをサポートするためのプッシュゲートウェイ
- アプリケーションコードをインストルメント化するためのクライアントライブラリ
このチュートリアルでは、 Prometheusのインストール方法 オン Ubuntu 20.04。
あなたが必要なもの:
始める前に必要な最小要件は次のとおりです。
- 構成済みのUbuntuサーバーのインスタンス sudo ユーザー
- 2GBのRAMと1つのvCPU
- サーバーへのSSHアクセス
ステップ1:システムを更新する
次のようにパッケージリストを更新することから始めます。
$ sudo apt update
パッケージインデックスが更新されて最新になったら、次の手順に進みます。
ステップ2:Prometheusをダウンロードしてインストールします
Prometheusインストールファイルは、圧縮されたtarballまたはzipファイルでプリコンパイルされたバイナリで提供されます。 Prometheusをダウンロードするには、 公式ダウンロードページ。 このガイドを書いている時点で、Prometheusの最新バージョンは2.31.0です。
ただし、最初に、Prometheusの構成ディレクトリとデータディレクトリを作成する必要があります。
構成ディレクトリを作成するには、次のコマンドを実行します。
$ sudo mkdir -p /etc/prometheus
データディレクトリに対して、以下を実行します。
$ sudo mkdir -p /var/lib/prometheus
ディレクトリが作成されたら、圧縮されたインストールファイルを取得します。
$ wget https://github.com/prometheus/prometheus/releases/download/v2.31.0/prometheus-2.31.0.linux-amd64.tar.gz
ダウンロードしたら、tarballファイルを解凍します。
$ tar -xvf prometheus-2.31.3.linux-amd64.tar.gz
次に、Prometheusフォルダーに移動します。
$ cd prometheus-2.31.3.linux-amd64
ディレクトリに移動したら、 prometheus
と promtool
バイナリファイル /usr/local/bin/
フォルダ。
$ sudo mv prometheus promtool /usr/local/bin/
さらに、コンソールファイルをに移動します console
ディレクトリとライブラリファイル console_libraries
ディレクトリから /etc/prometheus/
ディレクトリ。
$ sudo mv consoles/ console_libraries/ /etc/prometheus/
また、prometheus.ymlテンプレート構成ファイルを /etc/prometheus/
ディレクトリ。
$ sudo mv prometheus.yml /etc/prometheus/prometheus.yml
この時点で、Prometheusは正常にインストールされています。 インストールされているPrometheusのバージョンを確認するには、次のコマンドを実行します。
$ prometheus --version
出力:
prometheus, version 2.31.3 (branch: HEAD, revision: f29caccc42557f6a8ec30ea9b3c8c089391bd5df)
build user: root@5cff4265f0e3
build date: 20211005-16:10:52
go version: go1.17.1
platform: linux/amd64
$ promtool --version
出力:
promtool, version 2.31.3 (branch: HEAD, revision: f29caccc42557f6a8ec30ea9b3c8c089391bd5df)
build user: root@5cff4265f0e3
build date: 20211005-16:10:52
go version: go1.17.1
platform: linux/amd64
あなたの出力が私が持っているものに似ているなら、あなたは正しい軌道に乗っています。 次のステップでは、システムグループとユーザーを作成します。
手順3:システムグループとユーザーを構成する
Prometheusのシステムファイルの作成を含む次のステップに進む前に、Prometheusグループとユーザーを作成することが不可欠です。
を作成するには prometheus
グループは次のコマンドを実行します。
$ sudo groupadd --system prometheus
その後、作成 prometheus
ユーザーとそれを作成したばかりに割り当てます prometheus
グループ。
$ sudo useradd -s /sbin/nologin --system -g prometheus prometheus
次に、ディレクトリの所有権と権限を次のように構成します。
$ sudo chown -R prometheus:prometheus /etc/prometheus/ /var/lib/prometheus/
$ sudo chmod -R 775 /etc/prometheus/ /var/lib/prometheus/
残っているのは、Prometheusをsystemdサービスにして、実行ステータスを簡単に管理できるようにすることだけです。
ステップ4:Prometheusのsystemdファイルを作成する
お気に入りのテキストエディタを使用して、systemdサービスファイルを作成します。
$ sudo vim /etc/systemd/system/prometheus.service
次のコード行を貼り付けます。
[Unit]
Description=Prometheus
Wants=network-online.target
After=network-online.target
[Service]
User=prometheus
Group=prometheus
Restart=always
Type=simple
ExecStart=/usr/local/bin/prometheus
--config.file=/etc/prometheus/prometheus.yml
--storage.tsdb.path=/var/lib/prometheus/
--web.console.templates=/etc/prometheus/consoles
--web.console.libraries=/etc/prometheus/console_libraries
--web.listen-address=0.0.0.0:9090
[Install]
WantedBy=multi-user.target
Save 変更してsystemdファイルを終了します。
次に、続行してPrometheusサービスを開始します。
$ sudo systemctl start prometheus
起動時にPrometheusサービスを実行できるようにします。 したがって、次のコマンドを呼び出します。
$ sudo systemctl enable prometheus
次に、Prometheusサービスのステータスを確認します。
$ sudo systemctl status prometheus
ステップ5:Prometheusにアクセスする
最後に、Prometheusにアクセスするには、ブラウザを起動し、サーバーのIPアドレスにアクセスしてからポート9090にアクセスします。
UFWファイアウォールを実行している場合は、9090ポートを開きます。
$ sudo ufw allow 9090/tcp
$ sudo ufw reload
ブラウザに戻ります。 示されたアドレスに向かいます。
https://server-ip:9090

結論
このチュートリアルでは、Ubuntu20.04にPrometheusをインストールする方法を学びました。 ここから、さまざまなイベントと時間ベースのメトリックの監視を開始できます。 詳細については、 プロメテウスの公式ドキュメント。