Prometheus サービスディスカバリ (AWS編)

スポンサーリンク

Prometheusはコンテナやクラウドなどの大量コンポーネントを監視する事に特化したソフトウェアです。監視対象は大量に存在しますので、その監視対象を1つ1つ手作業で定義するのは非現実的です。このような問題に対応するため、Prometheusには監視対象を動的に検出するサービスディスカバリという機能が備わっています。このページではAWS EC2をサービスディスカバリする方法を説明します。

関連記事 : 統合監視ツール : Linux基本操作

前提

参照資料

動作確認済環境

  • Amazon Linux 2

構成図

3台の仮想マシンに対して、以下コンポーネントがインストール済の状態とします。

+------------------+ +------------------+ +------------------+
| 172.31.20.110/20 | | 172.31.22.234/20 | | 172.31.19.70/20  |
|                  | |                  | |                  |
| node_exporter    | | node_exporter    | | node_exporter    |
| prometheus       | |                  | |                  |
+------------------+ +------------------+ +------------------+

サービスディスカバリ

prometheus.ymlの設定例

prometheus.ymlを以下のように編集します。region, access_key, secret_keyなどは適宜の変更をお願いします。

global:
  scrape_interval: 10s

scrape_configs:
  - job_name: prometheus
    static_configs:
      - targets:
        - localhost:9090
  - job_name: node
    ec2_sd_configs:
      - region: us-east-1
        access_key: XXXXXXXXXXXXXXXXXXXX
        secret_key: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
        port: 9100

Prometheusを起動します。

./prometheus 

動作確認

Service Discoveryページ(http://<ip_addr>:9090/service-discovery)を表示すると、サービスディスカバリの結果が表示されます。

Service Discoveryの結果確認

Targetsページ(http://<ip_addr>:9090/targets)を表示すると、監視対象ホストの一覧が表示されます。

targetの一覧確認

タイトルとURLをコピーしました