このチュートリアルでは、Ubuntu 20.04 LTSにPrometheusをインストールする方法を紹介します。知らなかった方のために、Prometheusは優れたオープンソースの監視システムです。アプリケーションからメトリックを収集し、データベース、特に時系列ベースのDBに保存します。Prometheusの最大の利点は、データ処理に提供されるクエリ言語です。
この記事は、少なくともLinuxの基本的な知識があり、シェルの使用方法を知っていること、そして最も重要なこととして、サイトを独自のVPSでホストしていることを前提としています。インストールは非常に簡単で、ルートアカウントで実行されていますが、そうでない場合は、' sudo
を追加する必要があります。 ‘ルート権限を取得するコマンドに。 Ubuntu 20.04FocalFossaにPrometheusを段階的にインストールする方法を紹介します。 Ubuntu 18.04、16.04、およびLinuxMintなどの他のDebianベースのディストリビューションでも同じ手順に従うことができます。
前提条件
- 次のオペレーティングシステムのいずれかを実行しているサーバー:Ubuntu 20.04、18.04、およびLinuxMintやエレメンタリーOSなどの他のDebianベースのディストリビューション。
- 潜在的な問題を防ぐために、OSの新規インストールを使用することをお勧めします。
非rootsudoユーザー
またはrootユーザー
へのアクセス 。非rootsudoユーザー
として行動することをお勧めします ただし、ルートとして機能するときに注意しないと、システムに害を及ぼす可能性があるためです。
Ubuntu 20.04 LTSFocalFossaにPrometheusをインストール
手順1.まず、次の apt
を実行して、すべてのシステムパッケージが最新であることを確認します。 ターミナルのコマンド。
sudo apt update sudo apt upgrade
ステップ2.NginxWebサーバーをインストールします。
NginxはデフォルトのUbuntuリポジトリで利用できます。インストールするには、次のコマンドを実行します:
sudo apt install nginx
インストールが完了したら、コマンドを実行して、サーバーの起動時にNginxが自動的に起動できるようにします。
sudo systemctl stop nginx.service sudo systemctl start nginx.service sudo systemctl enable nginx.service
ステップ3.Prometheusユーザーを作成します。
Prometheusというユーザーとグループ、およびPrometheusというディレクトリを作成する必要があります:
sudo useradd -s /sbin/nologin --system -g prometheus prometheus sudo mkdir /var/lib/prometheus for i in rules rules.d files_sd; do sudo mkdir -p /etc/prometheus/${i}; done
ステップ4.Ubuntu20.04にPrometheusをインストールします。
これで、 wget
を使用してPrometheusの最新の安定したリリースをダウンロードします。 コマンド:
mkdir -p /tmp/prometheus && cd /tmp/prometheus curl -s https://api.github.com/repos/prometheus/prometheus/releases/latest | grep browser_download_url | grep linux-amd64 | cut -d '"' -f 4 | wget -qi - tar xvf prometheus*.tar.gz
ファイルの抽出が完了したら、抽出したPrometheusアーカイブフォルダーの下にあるprometheusおよびpromtoolバイナリを / usr / local / bin
に移動します。 ディレクトリ:
sudo mv prometheus promtool /usr/local/bin/
ステップ5.Prometheusを構成します。
/ etc / prometheus
にprometheus.ymlという名前の構成ファイルを作成します ディレクトリ:
sudo mv prometheus.yml /etc/prometheus/prometheus.yml sudo mv consoles/ console_libraries/ /etc/prometheus/ sudo nano /etc/prometheus/prometheus.yml
prometheus.yml
のコンテンツ 次のとおりです:
my global config global: scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute. evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute. # scrape_timeout is set to the global default (10s). Alertmanager configuration alerting: alertmanagers: static_configs: targets: # - alertmanager:9093 Load rules once and periodically evaluate them according to the global 'evaluation_interval'. rule_files: # - "first_rules.yml" # - "second_rules.yml" A scrape configuration containing exactly one endpoint to scrape: Here it's Prometheus itself. scrape_configs: # The job name is added as a label job= to any timeseries scraped from this config. job_name: 'prometheus' metrics_path defaults to '/metrics' scheme defaults to 'http'. static_configs: targets: ['localhost:9090']
インストールされているPrometheusのバージョンを確認するには、次のコマンドを実行します。
prometheus --version
ステップ6.PrometheusSystemdサービスを作成します。
次に、 systemd
のファイルを作成します サービス:
sudo nano /etc/systemd/system/prometheus.service
次のファイルを追加します:
[Unit] Description=Prometheus Documentation=https://prometheus.io/docs/introduction/overview/ Wants=network-online.target After=network-online.target [Service] Type=simple User=prometheus Group=prometheus ExecReload=/bin/kill -HUP $MAINPID 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 \ --web.external-url= SyslogIdentifier=prometheus Restart=always [Install] WantedBy=multi-user.target
次に、これらのディレクトリの所有権をPrometheusユーザーとグループに変更します:
for i in rules rules.d files_sd; do sudo chown -R prometheus:prometheus /etc/prometheus/${i}; done for i in rules rules.d files_sd; do sudo chmod -R 775 /etc/prometheus/${i}; done sudo chown -R prometheus:prometheus /var/lib/prometheus/
上記の設定が完了したら、 systemd
をリロードします 次のコマンドを使用します:
sudo systemctl daemon-relaod sudo systemctl start prometheus sudo systemctl enable prometheus
手順7.ファイアウォールを構成します。
一方、ファイアウォールがHTTP(80)、HTTPS(443)、9090ポートでのトラフィックを許可するように構成されていることを確認する必要があります。Nginxはufwでサービスとして登録します。
:
sudo ufw allow in "Nginx Full" sudo ufw allow 9090/tcp
ステップ8.PrometheusWebインターフェイスへのアクセス。
PrometheusはデフォルトでHTTPポート9090で利用できます。お気に入りのブラウザを開き、http://your-domain.com:9090に移動します。コード> または
http:// server-ip-addreess:9090
インストールを完了するために必要な手順を完了します。
おめでとうございます!Prometheusが正常にインストールされました。Ubuntu20.04LTS(Focal Fossa)にPrometheusオープンソースモニタリングをインストールするためにこのチュートリアルを使用していただきありがとうございます。追加のヘルプや役立つ情報については、 Prometheusの公式ウェブサイトを確認してください。