如何在PromQL中合并两个查询以关联实例与节点名称
关联PromQL查询以显示节点名称
要将CPU使用率查询结果与node_uname_info通过instance标签关联,从而显示对应的节点名称(nodename),可以使用PromQL的标签匹配关联语法:
(1 - avg(irate(node_cpu_seconds_total{mode="idle"}[5m])) by (instance)) * on(instance) group_left(nodename) node_uname_info
语句说明:
- 左侧部分
(1 - avg(irate(node_cpu_seconds_total{mode="idle"}[5m])) by (instance)):计算每个instance的CPU使用率(用1减去空闲CPU时间的5分钟平均速率) on(instance):指定仅通过instance标签进行指标匹配group_left(nodename):将右侧node_uname_info中的nodename标签添加到左侧的CPU使用率结果中(左侧指标标签更少,用group_left关联右侧的额外标签)- 乘以
node_uname_info是因为该指标数值恒为1,不会改变CPU使用率的计算结果,仅用于传递标签信息
预期结果示例:
执行上述查询后,结果会同时包含instance和nodename标签:
{instance="10.103.20.68:9796", nodename="iagindvd01-indv-dev-02-mastercentos3"} 0.10527083333193621
内容的提问来源于stack exchange,提问作者Julien Roussel
相关产品推荐
相关产品推荐

