このチュートリアルでは、Ubuntu20.04にPrometheusをインストールする方法を学習します。 Prometheusに慣れていない場合は、システムのすべてのメトリックとパフォーマンス情報の概要を提供するシステム監視ツールであるため、問題やボトルネックを特定できます。 CPU使用率、メモリ使用率、ネットワークIO待機時間などのリソースを追跡する場合に役立つことがあります。インターネットに接続されている任意のデバイスから簡単に監視できるWebインターフェイスを備えており、メトリックが設定されたしきい値を超えた場合に、電子メールおよびSMSメッセージを介してアラートを送信します。
- 2GB以上のRAMと1つのvCPUを備えたUbuntu20.04LTSを実行しているサーバー。
- rootまたはsudo権限を持つroot以外のユーザーとしてログインします。
Nginxをインストール
次のコマンドを実行して、常にリポジトリを更新する必要があります:
sudo apt update
これによりプロンプトが表示されます。デフォルトの応答はyとEnterです。プロンプトが表示されたらnを押すことはお勧めしません。これにより、後でインストールされるパッケージまたはプログラムで問題が発生する可能性があります。
リポジトリは、中間プロセスを通じてシステムによって更新されます。この手順が完了すると、次のコマンドを使用してnginxのインストールに進むことができます。
sudo apt install nginx
Nginxサービスが実行され、リクエストに応答します。以下のコマンドを実行して確認できます:
sudo systemctl status nginx
次のような出力が表示される場合は、Nginxが実行されています:
Nginxサービスが実行されていない場合は、次のコマンドを入力してサービスを開始できます。
sudo systemctl start nginx
それでおしまい! nginxがサーバーで実行されています
Prometheusシステムユーザーの作成
Prometheusサーバーを実行するには、サービスユーザーアカウントが必要です。次のコマンドでユーザーを作成できます。 「node_exporter」の代わりに、prometheus-serverの代わりに独自のアプリケーション名を使用してください。
sudo useradd --no-create-home --shell /bin/false prome
sudo useradd --no-create-home --shell /bin/false node_exporter
次に、いくつかのディレクトリを作成する必要があります。これらは、構成ファイルやその他のデータが保存される場所です。これらのディレクトリは、以前にPrometheus用に選択したディレクトリに作成されます。この例では、ベースディレクトリとして/ ect/prometheusと/var/ lib/prometheusを使用します。
sudo mkdir /etc/prometheus
sudo mkdir /var/lib/prometheus
Prometheusのダウンロードとインストール
Linux用のPrometheusは、wgetを使用するだけでダウンロードできます。ウェブサイトでダウンロードの最新バージョンに移動し、そこから取得します。
wget https://github.com/prometheus/prometheus/releases/download/v2.28.1/prometheus-2.28.1.linux-amd64.tar.gz
バイナリをダウンロードしたら、tarコマンドを使用して解凍します。
tar -xvf prometheus-2.28.1.linux-amd64.tar.gz
抽出したフォルダーから、prometheusおよびpromtoolバイナリを/ usr / local/binディレクトリにコピーします。
sudo cp prometheus-2.28.1.linux-amd64/prometheus /usr/local/bin/>
sudo cp prometheus-2.28.1.linux-amd64/promtool /usr/local/bin/
コピー後、以下のコマンドを入力して、ファイルの所有権をプロメテウスに変更します。
sudo chown prome:prome /usr/local/bin/prometheus
sudo chown prome:prome /usr/local/bin/promtool
次に、次のディレクトリをPrometheus構成ディレクトリ/ etc /prometheusにコピーします:「console_libraries」および「prometheus」。このステップを忘れないことが重要です!
sudo cp -r prometheus-2.28.1.linux-amd64/consoles /etc/prometheus
sudo cp -r prometheus-2.28.1.linux-amd64/console_libraries /etc/prometheus
次のコマンドを使用して、ファイルの所有権を変更します。
sudo chown -R prome:prome /etc/prometheus/consoles
sudo chown -R prome:prome /etc/prometheus/console_libraries
Prometheus構成ファイルを作成
Prometheusが機能するには、構成ファイルが必要です。 prometheous.ymlは、使用中に構成する最も一般的な方法です。このセクションでは、前に作成した/ etc/prometheusディレクトリにprometheus.ymlという名前の構成ファイルを作成します。
sudo nano /etc/prometheus/prometheus.yml
次に、次の行をコピーして端末に貼り付けます。
global:
scrape_interval: 15s
scrape_configs:
- job_name: 'prometheus'
scrape_interval: 5s
static_configs:
- targets: ['localhost:9090']
完了したら、Ctrl + xを押してからyを押してから、Enterキーを押してファイルを保存します。
デフォルトの構成には、サーバーによって公開された時系列データをスクレイプするPrometheusと呼ばれる単一のジョブがあります。ジョブには、ポート9090のlocalhostという1つのターゲットのみが含まれ、静的に構成されています。
次に、systemdサービスのファイルを作成する必要があります。以下のコマンドを実行します:
sudo nano /etc/systemd/system/prometheus.service
次のコンテンツをコピーしてファイルに貼り付けます。
[Unit]
Description=Prometheus
Wants=network-online.target
After=network-online.target
[Service]
User=prome
Group=prome
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
[Install]
サービスファイルは、/ etc/prometheusディレクトリに設定と/var/libディレクトリに保存されたデータを使用してPrometheusをprometheusユーザーとして実行するようにsystemdに指示します。
完了したら、Ctrl + xを押してからyを押してから、Enterキーを押してファイルを保存します。
新しく作成されたサービスを使用するには、以下のコマンドを実行してsystemdをリロードします。
sudo systemctl daemon-reload
これで、次のコマンドを使用してPrometheusを起動できます。
sudo systemctl enable prometheus
以下のコマンドを使用して、サービスステータスを確認できます。
sudo systemctl status prometheus
prometheus.service - Prometheus
Loaded: loaded (/etc/systemd/system/prometheus.service; disabled; vendor preset: enabled)
Active: active (running) since Thu 2021-07-15 22:31:10 UTC; 3s ago
Process: 3949 ExecStart=/usr/local/bin/prometheus --config.file /etc/prometheus>
Main PID: 3949 (prometheus)
Tasks: 7
Memory: 13.8M
CPU: 470ms
CGroup: /system.slice/prometheus.service
Prometheusステータスモニターは、サービスの現在のアクティビティレベルを示します。また、現在実行中のプロセスと、特定の時点で使用しているメモリの量を確認することもできます。
Prometheusは、ユーザーが自分自身やインストールした他のプログラムに関する統計を表示して、ユーザー内で問題が発生しているかどうかを判断できる基本的なWebインターフェイスを提供します。
Prometheusサービスにアクセスするには、最初にファイアウォールでポート9090を開く必要があります。次のように入力してこれを行うことができます:
ufw allow 9090/tcp
次に、Webブラウザを開いて、次のアドレスに移動します。
http:// ip-address:9090
「ip-address」という用語をサーバーの実際のIPアドレスに置き換えます。 localhostまたは127.0.0.1を使用して、システム上のPrometheusにローカルにアクセスし、正しく実行されているかどうかを確認することもできます。
これで、Prometheusアプリケーションが稼働し、Webリクエストを受信できるようになりました:
チュートリアルがお役に立てば幸いです。また、ご自身のインストールをテストしていただければ幸いです。これは、当社のWebサイトにある多くのチュートリアルの1つにすぎないため、監視またはPrometheusについて他に知りたいことがあれば、以下のコメントでお知らせください。