すべてのプロダクト
Search
ドキュメントセンター

Managed Service for Prometheus:RecordingRule.yaml ファイルの変更

最終更新日:Dec 27, 2024

このトピックでは、レコーディングルールを設定し、レコーディングルールメトリックの詳細を表示する方法について説明します。

背景情報

レコーディングルールは、メトリックデータのカスタム開発に使用できます。一部のクエリでは、クエリ対象サーバーで大量の計算が必要になる場合があり、サーバーのワークロードが増加します。レコーディングルールを設定して、計算プロセスを結果が書き込まれるサーバーに事前に実行することができます。これにより、クエリ対象サーバーのリソース使用量が削減されます。大規模なクラスターが使用され、ビジネスが複雑なシナリオでは、レコーディングルールを使用することで、PromQL 式の複雑さを軽減できます。これにより、クエリのパフォーマンスが向上し、ユーザー設定が簡素化されます。

説明 Alibaba Cloud Managed Service for Prometheus では、オープンソースの Prometheus と同じ方法でレコーディングルールを設定できます。レコーディングルールはルールグループ内に存在します。各ルールグループには複数のルールを含めることができます。レコーディングルールの名前は、有効なメトリック名である必要があります。グループ内のルールは、一定の間隔で順番に実行されます。メトリックは、新しいルール名に基づいてリモートデータベースに保存されます。

レコーディングルールを設定する

  1. Managed Service for Prometheus コンソールにログインします。

  2. ページの左上隅で、Prometheus インスタンスが存在するリージョンを選択します。次に、Prometheus インスタンスの名前をクリックします。
  3. 左側のナビゲーションペインで、設定 をクリックします。設定 タブをクリックします。次に、Recordingrule.yaml の編集 をクリックします。
  4. Recordingrule.yaml の編集 ダイアログボックスで、デフォルトの設定を削除し、レコーディングルールの設定を入力して、保存 をクリックします。
    説明 クラスターごとに 1 つの RecordingRule.yaml ファイルのみを設定する必要があります。ルールグループの名前は一意である必要があります。
    bc

    次のセクションでは、ルールグループの例を示します。

    groups:
      - name: apiserver_request_total
        interval: 60s
        rules:
          - record: job_instance_mode:apiserver_request_total:avg_rate5m
            expr: avg by (job, instance, mode) (rate(apiserver_request_total[5m])) // job、インスタンス、モード別に平均を計算します。
            labels:
              team: operations
          - record: job:apiserver_request_total:sum_rate10m
            expr: sum by (job)(rate(apiserver_request_total[10m]))  // job別に合計を計算します。
            labels:
              team: operations
    パラメーター説明
    groupsルールグループ。RecordingRule.yaml ファイルには複数のルールグループを設定できます。
    nameルールグループの名前。ルールグループの名前は一意である必要があります。
    intervalオプション。ルールグループを評価する間隔。デフォルト値は 60 です。単位:秒。
    rulesレコーディングルール。ルールグループには複数のレコーディングルールを含めることができます。
    recordルールの名前。レコーディングルールの名前は、有効なメトリック名である必要があります。
    説明 レコーディングルール名の推奨フォーマットlevel:metric:operations
    • level は、ルール出力の集計レベルとラベルを示します。
    • metric は、メトリック名を示します。
    • operations は、メトリックに適用される操作のリストです。最新の操作が最初に表示されます。
    expr式。Managed Service for Prometheus は、この式を使用してメトリックを計算します。式は、有効な PromQL 式である必要があります。
    lablesオプション。メトリックのラベル。

レコーディングルールメトリックの詳細を表示する

方法 1: Grafana ダッシュボードを使用する

  1. オンプレミスの Grafana システムに管理者としてログオンします。
  2. 左側のナビゲーションペインで、Explore をクリックします。
  3. Explore ページで、Kubernetes クラスター名を選択し、Metrics の横にあるテキストボックスにレコーディングルールメトリックの名前を入力します。メトリックの詳細が表示されます。fg

方法 2: Managed Service for Prometheus コンソールを使用する

  1. Prometheus consoleにログオンします。
  2. ページの左上隅で、Prometheusインスタンスが存在するリージョンを選択します。次に、Prometheusインスタンスの名前をクリックします。
  3. 左側のナビゲーションペインで、サービスディスカバリをクリックします。メトリクスタブをクリックします。次に、検索ボックスにレコーディングルールメトリックの名前を入力して、メトリックの詳細を表示します。dh

レコーディングルールのリモート書き込みを設定する

Alibaba Cloud Managed Service for Prometheus は、オープンソースの Prometheus のリモート書き込み機能をサポートしています。

  1. Managed Service for Prometheus コンソールにログインします。

  2. ページの左上隅で、リモート書き込みを設定する Prometheus インスタンスが存在するリージョンを選択します。次に、Prometheus インスタンスの名前をクリックします。
  3. 左側のナビゲーションペインで、設定 をクリックします。設定 タブをクリックします。次に、Prometheus.yaml の編集 をクリックします。
  4. Prometheus.yaml の編集 ダイアログボックスで、リモート書き込みを設定します。
    jk
    説明 Alibaba Cloud Managed Service for Prometheus では、オープンソースの Prometheus と同じ方法でリモート書き込みを設定できます。リモート書き込み設定の配列を指定できます。さらに、書き込み再ラベル設定を指定することもできます。
    リモート書き込み設定は、エージェントとレコーディングルールの両方に有効です。レコーディングルールによって生成されたメトリックデータのみを他のデータベースにリモートで書き込む必要がある場合は、書き込み再ラベル設定を指定できます。例:
    remote_write:
      - url: "https://xxxx/api/v1/prom/write?db=dbname&u=username&p=password"    // データをリモート書き込みするデータベースのエンドポイント。
        write_relabel_configs:
          - source_labels: [__name__]
            regex: job_instance_mode:apiserver_request_total:avg_rate5m // レコーディングルールメトリック名
            action: keep  // 一致するメトリックのみを保持します。
    説明 上記の構成では、レコーディングルールメトリック (job_instance_mode:apiserver_request_total:avg_rate5m) のデータのみが別のデータベースにリモート書き込みされます。

関連操作

レコーディングルールによって生成された新しいメトリックデータをリモートで書き込むには、URL をパブリックエンドポイントに設定する必要があります。レコーディングルールのネットワークホワイトリストを設定するには、リージョンに基づいて IP アドレスを追加する必要があります。

 中国 (北京): 101.200.XX.XX
 中国 (杭州): 118.31.XX.XX
 中国 (上海): 106.14.XX.XX.XX
 中国 (深圳): 8.129.XX.XX
 中国 (張家口): 39.103.XX.XX
 中国 (青島): 139.129.XX.XX
 中国 (成都): 47.108.XX.XX
 中国 (香港): 47.242.XX.XX
 シンガポール (シンガポール): 47.241.XX.XX