Prometheus構成ファイルを分割する方法は?


10

現在、モニタリングにPrometheusを使用しており、多数の構成があります(prometheus.ymlのメイン構成ファイルは1400行以上です)。

これを論理グループ(おそらくDEV / TEST / PROD?)に分割したいのですが、Prometheus構成ファイルの構文で「インクルード」(または同様のもの)を使用する方法に関するドキュメントが見つかりません。

誰かがPrometheus構成ファイルを使用してこれを行いましたか?もしそうなら、あなたはそれをどのように行いましたか?


複数のファイルを1つに結合するスクリプトはどうですか?
gf_

ええ、それが私がしなければならないことだと思います。しかし、せいぜいこれは「回避策」です。小さな構成ファイルを作成し、「job_name」を定義して構成をテストし(私が想定している構成の「開発」)、「reload」を呼び出して試してみたくなりました。
srkiNZ84 2017年

回答:


8

Prometheus構成ファイル(およびエコシステム内の他の構成ファイル)は、どのような形式のテンプレートも明示的にサポートしていません。代わりに、これは処理する構成管理システムに任されています。

さらに、設定ファイルにdev / test / prodセクションがあることは少し変わっているように見えます。通常、a)環境ごとにPrometheusがあり、b)これらのPrometheusサーバー間の主な違いは、のenvラベルの異なる値ですexternal_labels


これは「一枚のガラス」という考えに違反していませんか?環境ごとに個別のインスタンスがある場合、DEVメトリックとPRODメトリックをどのように比較できますか?この使用例では、統合されたPrometheusを使用する必要がありますか?
srkiNZ84 2017年

ユースケースは、独立したDEV / TEST / PROD Kubernetesクラスターがあることです。各クラスターでは、「サービスディスカバリ」を利用して、サービスオブジェクトとポッド(コンテナー)オブジェクトからすべてのメトリックを取得します。
srkiNZ84 2017年

1
Prometheusには単一のガラスペインのアイデアはありません。これは、システムのごく一部を超えるものに対しては適切にスケーリングされません。プロメテウス自体の測定基準でさえ、一枚のガラスには大きすぎ、4-5に近いものです。通常のアプローチは、Grafanaでデータソーステンプレートを使用することであり、ダッシュボードを並べて比較できます。
brian-brazil 2017年

0

ターゲットを別のファイルにオフロードしたり、などのサービス検出ツールを使用したりできますconsul

  - job_name: yyy
    metrics_path: /probe
    scrape_interval: 10s
    scheme: https
    params:
      module:
        - http_2xx_LL
    static_configs:
      - targets: null
    file_sd_configs:
      - files:
          - prod-targets.yml
          - prod-misc-targets.yml
          - preprod-targets.yml
          - dev1-targets.yml
          - dev2-targets.yml
          - lab2-targets.yml
          - lab3-targets.yml
          - lab1-targets.yml
    relabel_configs:
      - source_labels:
          - __address__
    (...)

個々のYMLの例

- targets:
    - https://example0.example.com:8443/studio/
    - https://example1.example.com:8443/studio/
    - https://example2.example.com:8443/studio/
    - https://example3.example.com:8443/studio/
    - https://example4.example.com:8443/studio/
    - https://example5.example.com:8443/studio/
    - https://example.example.com/studio/
  labels:
    service: Studio
    env: Prod
    team: Nullmean
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.