背景
需要使用Grafana触发多个Prometheus的告警, 这个就需要Grafna 一个panel展示多个Prometheus的数据,同时配配置告警可以区分哪一个数据源触发的
展示多个数据源
数据源选择Mixed, 就可以给每个查询添加不同的数据来源
告警区分数据来源
由于两个Prometheus 采集到的数据都是一样的没法区分谁是谁,想通过 PromQL 给指标添加标签
最后使用label_join
函数
label_join 原本作用是把多个标签拼接成一个标签,使用分隔符区分, 这里我们把分隔符设置成Prometheus的标识,然后拼接两个不存在的标签 aaa
,aaaa
(这里不要用数字 111, 不行), 于是就得到了我要的标签
例如171集群的 Prometheus 表达式如下
label_join((max by (persistentvolumeclaim,namespace) (kubelet_volume_stats_used_bytes )) / (max by (persistentvolumeclaim,namespace) (kubelet_volume_stats_capacity_bytes )),"cluster","171集群","aaa","aaaa") >=0.7
得到的指标结果就带有 cluster=171集群的label了
告警信息配置就可以使用这个label区分是哪一个集群了