更新时间:2024-08-05 GMT+08:00

配置预聚合规则

预聚合(Recording Rule)可以对落地的指标数据做二次开发。某些查询可能需要在查询端进行大量的计算,导致查询端压力过大,通过配置预聚合规则将计算过程提前到写入端,可减少查询端资源占用,尤其在大规模集群和复杂业务场景下可以有效的降低PromQL的复杂度,从而提高查询性能,解决用户配置以及查询慢的问题。

前提条件

服务已接入CCE类型Prometheus 监控并接入CCE集群,具体请参见Prometheus实例 for CCE

配置Recording Rule

  1. 登录AOM 2.0控制台。
  2. 在左侧导航栏选择“指标分析 > Prometheus监控”。
  3. 在Prometheus实例列表中,单击目标CCE类型的Prometheus实例名称,进入该实例的详情界面。
  4. 在左侧导航栏单击“设置”,然后在“预聚合(Recording Rule)”区域单击“编辑RecordingRule.yaml”。
  5. 在弹出的对话框,删除默认模板并输入预聚合规则。

    同一个集群只需要配置一份RecordingRule.yaml,不同规则组(Rule Group)的名字必须不同。

    表1 Recording Rule参数说明

    参数

    说明

    groups

    规则组。一份RecordingRule.yaml可以配置多组规则组。

    name

    规则组名称。规则组名称必须唯一。

    interval

    (可选)规则组的执行周期。默认60s。

    rules

    规则。一个规则组可以包含多条规则。

    record

    规则的名称。聚合规则的名称必须符合 Prometheus指标名称规范

    expr

    计算表达式。Prometheus监控将通过该表达式计算得出预聚合指标。计算表达式必须符合PromQL

    labels

    (可选)指标的标签。

    配置后的Recording Rule示例如下:

    groups:
      - name: apiserver_request_total
        interval: 60s
        rules:
          - record: apiserver_request_rate
            expr: avg by (job, instance, mode) (rate(apiserver_request_total[5m]))
            labels:
              team: operations
          - record: job:apiserver_request_total:sum_rate10m
            expr: sum by (job)(rate(apiserver_request_total[10m]))
            labels:
              team: operations

  6. 配置完成,单击“确定”保存Recording Rule。

查看Recording Rule指标

Recording Rule配置完成后,可通过AOM的“指标浏览”界面查看和通过Grafana系统查看Recording Rule指标。

方式一:通过AOM的“指标浏览”界面查看

  1. 在“指标分析 > 指标浏览”界面,从下拉列表选择已配置Recording Rule的Prometheus实例。
  2. 单击“全量指标”,在搜索框中输入对应的Recording Rule指标名称来查看该指标的详细信息。

方式二:通过Grafana查看

具体操作请参见通过Grafana查看AOM中的指标数据