😺
[Prometheus,Grafana]インストール,ログイン,初期設定
本記事を読み終わった時のゴール
- Prometheus,Grafanaとはどういうものかざっくり把握出来る
- ご自身の環境にPrometheus,Grafanaをインストール出来る事
前提
- 必要なAWS環境は設定済みの状態(今回はEC2インスタンスを使用)
-
Prometheus
とGrafana
は同一インスタンスへインストール -
Node Exporter
は別インスタンスへインストール
Prometheusのインストール方法
- インストールコマンド
# LTS版をダウンロード https://prometheus.io/download/
wget https://github.com/prometheus/prometheus/releases/download/v2.45.3/prometheus-2.45.3.linux-amd64.tar.gz
- 圧縮ファイルの解凍
tar xvzf prometheus-2.45.3.linux-amd64.tar.gz
-
systemd
でprometheusを制御するためにサービスユニットファイルを作成
/etc/systemd/system/prometheus.service
[Unit]
Description=Prometheus Server
Documentation=https://prometheus.io/docs/introduction/overview/
After=network-online.target
[Service]
User=root
Restart=on-failure
# ご自身の環境に合わせてパスを書き換えてください。
ExecStart=/home/ec2-user/prometheus-2.45.3.linux-amd64/prometheus --config.file=/home/ec2-user/prometheus-2.45.3.linux-amd64/prometheus.yml
[Install]
WantedBy=multi-user.target
- systemdに変更を認識させるためにデーモンを更新
sudo systemctl daemon-reload
- サービスの起動設定
sudo systemctl start prometheus
sudo systemctl enable prometheus
systemctl status prometheus
- prometheusへアクセス
デフォルトのポート番号は9090
のため、SGで穴あけ出来ているか確認する必要あり。
http://{ホスト名}:9090
Node Exporterのインストール方法
- インストールコマンド
# https://prometheus.io/download/#:~:text=556adf78030370c461d059c8b4375e4296472a3af6036d217c979f68bcd5cb4e-,node_exporter,-Exporter%20for%20machine
wget https://github.com/prometheus/node_exporter/releases/download/v1.7.0/node_exporter-1.7.0.linux-amd64.tar.gz
- 圧縮ファイルの解凍
tar xvzf node_exporter-1.7.0.linux-amd64.tar.gz
-
systemd
でNodeExporterを制御するためにサービスユニットファイルを作成
/etc/systemd/system/node_exporter.service
[Unit]
Description=Prometheus Server
Documentation=https://prometheus.io/docs/introduction/overview/
After=network-online.target
[Service]
User=root
Restart=on-failure
ExecStart=/home/ec2-user/node_exporter-1.7.0.linux-amd64/node_exporter
[Install]
WantedBy=multi-user.target
- systemdに変更を認識させるためにデーモンを更新
sudo systemctl daemon-reload
- サービスの起動設定
sudo systemctl start node_exporter
sudo systemctl enable node_exporter
systemctl status node_exporter
-
Node Exporter
へアクセス
デフォルトのポート番号は9100
のため、SGで穴あけ出来ているか確認する必要あり。
http://{ホスト名}:9100
prometheus
からNode Exporter
のメトリクス確認
/home/ec2-user/prometheus-2.45.3.linux-amd64/prometheus.yml
# my global config
global:
scrape_interval: 60s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
evaluation_interval: 60s # 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=<job_name>` to any timeseries scraped from this config.
- job_name: "prometheus"
# metrics_path defaults to '/metrics'
# scheme defaults to 'http'.
static_configs:
- targets: ["localhost:9090"]
- targets: ["{node_exporterのIP}:9100"]
- PromQLの
up
メトリクスを確認(Prometheusが正常にメトリクスをスクレイピングできた状態かどうか)- 値が
1
のためスクレイピング出来ている。(値が0
なら失敗)
- 値が
Grafanaのインストール方法
- インストールコマンド
# https://grafana.com/grafana/download?pg=oss-graf&plcmt=hero-btn-1&edition=oss
# 最新バージョンのOSS版をインストール
sudo yum install -y https://dl.grafana.com/oss/release/grafana-10.3.3-1.x86_64.rpm
-
systemd
でサービスの起動
# root権限で起動
sudo systemctl start grafana-server
# 自動起動の設定
sudo systemctl enable grafana-server
# 設定が反映されているか確認
systemctl status grafana-server
- Grafanaへアクセス
デフォルトのポート番号は3000
のため、SGで穴あけ出来ているか確認する必要あり。
http://{EC2のホスト名}:3000/login
- Grafanaへログイン
初期ユーザー名:admin
初期PW:admin
-
初期パスワードの変更が求められるため変更する。
-
ログイン完了
GrafanaでPrometheusにDataSourceとして接続
-
GrafanaはPrometheusで収集したメトリクスを可視化,分析するためのツールで内部的にPrometheusと接続する必要がある。
-
Save&test
を押下しSuccessfully
の文字が表示されれば設定完了。
Discussion