如何编写PromQL过滤关机VM计算ESXi主机内存预配占比
ESXi主机开机虚拟机内存预配占比查询方案
可用PromQL语句
sum by (host_name) (vmware_vm_memory_max * on (vm_name, host_name) group_left vmware_vm_power_state == 1) / sum by (host_name) (vmware_host_memory_max)
实现逻辑
- 基础指标作用:
vmware_host_memory_max:对应单台ESXi主机的总可用内存容量vmware_vm_memory_max:对应单台虚拟机预配的内存容量vmware_vm_power_state:虚拟机电源状态标识,值为1代表虚拟机处于开机状态,值为0代表已关机
- 过滤关机虚拟机逻辑:通过PromQL的关联匹配规则,将虚拟机内存指标与电源状态指标按
vm_name、host_name标签关联,仅保留电源状态为1的开机虚拟机的内存数据,关机虚拟机的内存数据不会被计入总和统计 - 最终计算结果说明:返回值为各ESXi主机开机虚拟机总预配内存占主机总可用内存的比例,例如返回值为0.75代表已用预配内存占主机总内存的75%,返回值大于1代表主机内存已超配
内容的提问来源于stack exchange,提问作者cbeach512
相关产品推荐
相关产品推荐

