监控工具之---Prometheus查询持久性(六)
查询持续性
到目前为止,我们只是在表达式浏览器中运行查询。虽然查看该查询的输出很方便,但结果仍然是临时存储在Prometheus服务器上,我们可以通过以下三种方式使查询持久化:
- 记录规则:根据查询创建新指标
- 报警规则:从查询生成警报
- 可视化:使用Grafana等仪表板可视化查询
记录规则存储在Prometheus服务器上,位于Prometheus服务器加载的文件中。规则是自动计算的,频率则由prometheus.yml配置文件的global块中的evaluation_interval参数控制。
规则文件在Prometheus配置文件的rules_files块中指定。
在prometheus.yml文件的同一文件夹中创建一个 名为rules的子文件夹,用于保存我们的记录规则。我们还将为节点指标创建一个名为node_rules.yml的文件。
# cd /etc/prometheus # mkdir rules # cd rules # touch node_rules.yml
首先修改prometheus.yml文件
rule_files: - "rules/node_rules.yml" # - "second_rules.yml"
接下来修改node_rules.yml文件
groups: - name: node_rules rules: - record: instance:node_cpu:avg_rate1m expr: 100 - avg(irate(node_cpu_seconds_total{mode="idle"}[1m])) by (instance) * 100 labels: metric_type: aggregation
不积跬步,无以至千里;不积小流,无以成江海。