Prometheus実践入門|メトリクス収集・PromQL・Grafanaダッシュボード構築まで

現場実践|Prometheus監視構築
Prometheus実践入門|メトリクス収集・PromQL・Grafanaダッシュボード構築まで
「PrometheusとGrafanaを使った監視環境を構築したい」——Prometheusのアーキテクチャ・Exporterを使ったメトリクス収集・PromQLの書き方・Grafanaでのダッシュボード作成まで実践的に解説します。
💡 Prometheus+GrafanaはKubernetesとオンプレ混在環境の監視標準。「自前でセットアップすれば無料」「カスタマイズ自由」「コミュニティが活発」の三拍子揃ったOSS監視スタックです。
1. Prometheusのアーキテクチャ
Prometheusサーバー
Exporterからメトリクスをスクレイピング(Pull型)して時系列DBに保存する。設定ファイル(prometheus.yml)でスクレイピング対象を定義する。
Exporter
監視対象のメトリクスをHTTPエンドポイントで公開するエージェント。node_exporter(Linux)・mysqld_exporter・nginx_exporterなど種類が豊富。
Grafana
Prometheusをデータソースとしてダッシュボードにグラフを描画するツール。「kube-prometheus-stack」のHelmチャートでPrometheus+Grafanaを一括デプロイできる。
2. prometheus.ymlの基本設定
global:
scrape_interval: 15s
evaluation_interval: 15s
scrape_configs:
- job_name: "prometheus"
static_configs:
- targets: ["localhost:9090"]
- job_name: "node"
static_configs:
- targets: ["web01:9100","web02:9100","db01:9100"]
- job_name: "nginx"
static_configs:
- targets: ["web01:9113","web02:9113"]3. よく使うPromQLクエリ
# CPU使用率(%)
100 - (avg by(instance) (irate(node_cpu_seconds_total{mode="idle"}[5m])) * 100)
# メモリ使用率(%)
(1 - (node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes)) * 100
# ディスク使用率(%)
(1 - (node_filesystem_free_bytes / node_filesystem_size_bytes)) * 100
# HTTPリクエスト数(1分あたり)
rate(nginx_http_requests_total[1m])4. Grafanaダッシュボードの作り方
1
データソースにPrometheusを追加
Grafana管理画面のConnectionsからPrometheusのURLを設定してテスト接続を確認する。
2
Grafana.comのダッシュボードをインポート
grafana.com/grafana/dashboardsから「Node Exporter Full」(ID:1860)をインポートするだけでLinuxの包括的なダッシュボードが即座に完成する。
3
アラートルールを設定
Grafanaのアラートルールで「CPU使用率が80%超えたらSlackに通知」を設定する。Contact Pointにwebhook URLを設定してSlack通知を実現する。
📌 この記事のポイント
- Prometheusはnode_exporterを対象サーバーにインストールするだけでLinuxの主要メトリクスを収集できる
- PromQLのirate・rate・avgを組み合わせてCPU・メモリ・ディスク・HTTPリクエスト数を計算する
- Grafana.comからダッシュボードIDをインポートするだけで即座に本格的な監視画面が完成する
キャリアの疑問、一緒に解決しませんか?
Route Bloomでは、インフラ系ITエンジニアを目指す方への個別サポートを行っています。2026年7月からフリーランス講師として本格始動予定です。
ABOUT ME




