FreeBSD 14
Sponsored Link

Prometheus : インストール2024/09/06

 

監視システム Prometheus をインストールして設定します。
Prometheus サーバーから監視対象ノードにアクセスしてデータを取得する Pull 型のアーキテクチャーを採用しています。 また、外部データベースは不要で Prometheus サーバー上に時系列データが保存されます。

Prometheus のアーキテクチャー概要は公式サイトを参照ください。
⇒ https://prometheus.io/docs/introduction/overview/

[1] Prometheus サーバー、および CPU やメモリーなどの一般的なシステムリソースのデータを取得する [node-exporter] をインストールします。
root@dlp:~ #
pkg install -y prometheus node_exporter
[2] 基本的な設定は [prometheus.yml] で実施します。
root@dlp:~ #
vi /usr/local/etc/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=<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"]

  # ローカルホストの監視設定を追記
  - job_name: node
    static_configs:
      - targets: ['localhost:9100']

root@dlp:~ #
service prometheus enable

root@dlp:~ #
service prometheus start

root@dlp:~ #
service node_exporter enable

root@dlp:~ #
service node_exporter start
[3] 任意のクライアントコンピューターで Web ブラウザーを起動し、[http://(サーバーのホスト名 または IPアドレス):9090/] へアクセスします。 すると、Prometheus Web UI の画面が表示されます。
[4]
[Execute] ボタンの左横のアイコンをクリックすると、保存された時系列データが参照可能な様々なクエリーの一覧が表示されます。
クエリーは上部の入力フィールドから直接記述することも可能で、Prometheus 独自の [Expression Language] 機能です。
Expression Language の使用例は公式サイトを参照ください。
⇒ https://prometheus.io/docs/querying/examples/
[5] [node-exporter] で取得した [node_load5] のデータを表示した様子です。
関連コンテンツ