了解用于内存空闲的普罗米修斯查询(节点导出器)
Posted
技术标签:
【中文标题】了解用于内存空闲的普罗米修斯查询(节点导出器)【英文标题】:Understanding a prometheus query for memory free (node-exporter) 【发布时间】:2021-12-24 15:18:57 【问题描述】:谁能帮我理解来自 prometheus 的查询以及来自 node-exporter 的数据?
我从社区获取了一个查询,它是以下内容 - 请注意完整查询前面的“1 -”。这是我得到的查询。
(1 - (node_memory_MemAvailable_bytesnode_type=~"mining" / (node_memory_MemTotal_bytesnode_type=~"mining")))* 100 > 75
我不明白为什么会有“1-”。此特定查询现在返回 2 个结果。
我像这样删除了“1-”
(node_memory_MemAvailable_bytesnode_type=~"mining" / (node_memory_MemTotal_bytesnode_type=~"mining"))* 100 > 75
现在查询返回 4 个结果。
我有点困惑哪个是正确的,为什么“1-”会在查询之前。
这是显示prometheus查询结果的截图
谁能帮忙或解释一下,也许我遗漏了什么。
【问题讨论】:
【参考方案1】:正确的是第一个(带“1-”),“数学”解释如下。
我们有:
MemUsed = MemTotal - MemAvailable
所以:
% MemUsed = ((MemTotal - MemAvailble) / MemTotal) * 100
简化我们有:
% MemUsed = (MemTotal / MemTotal - MemAvailable / MemTotal) * 100
最后:
% MemUsed = (1 - MemAvailable / MemTotal) * 100
【讨论】:
现在说得通了。谢谢。以上是关于了解用于内存空闲的普罗米修斯查询(节点导出器)的主要内容,如果未能解决你的问题,请参考以下文章