如何在Prometheus内存使用率查询中筛选指定主机名?
调整Grafana内存使用率查询的节点筛选方法
直接给每个内存相关指标添加{node_name=~".*admin.*"}标签筛选即可,调整后的完整查询语句如下:
100 * (1 - ((avg_over_time(node_memory_MemFree_bytes{node_name=~".*admin.*"}[10m]) + avg_over_time(node_memory_Cached_bytes{node_name=~".*admin.*"}[10m]) + avg_over_time(node_memory_Buffers_bytes{node_name=~".*admin.*"}[10m])) / avg_over_time(node_memory_MemTotal_bytes{node_name=~".*admin.*"}[10m])))
说明
因为你的查询是基于多个node_memory_*指标的时间序列聚合计算,必须给每个指标单独添加节点标签筛选:
- 每个
avg_over_time函数作用的是单个指标的时间序列,只有限定每个指标的节点范围,才能确保聚合计算的是目标节点的对应内存数据。 - 这种写法和你
node_load1{node_name=~".*admin.*"}的筛选逻辑完全一致,只会返回名称包含admin的节点数据。
内容的提问来源于stack exchange,提问作者DevOpsSauce
相关产品推荐
相关产品推荐

