本节提供了一些关于 vm.memory.size[<mode>] agent 监控项 的参数详情。
以下参数适用于此 监控项:
available
/total*100)used
/total*100)这些参数中的一些是特定于平台的,可能在您的平台上不可用。请参见 Zabbix agent items 以获取详细信息。
特定于平台的 available 和 used 计算:
平台 | "available" | "used" |
---|---|---|
AIX | free + cached | 实际使用的内存 |
FreeBSD | inactive + cached + free | active + wired + cached |
HP UX | free | total - free |
Linux<3.14 | free + buffers + cached | total - free |
Linux 3.14+ (also backported to 3.10 on RHEL 7) |
/proc/meminfo,参见 Linux 内核 documentation 中的 "MemAvailable" 以获取详细信息。 请注意,free + buffers + cached 不再等于 'available',因为并非所有页面缓存都可以被释放,并且在计算中使用了低水位线。 |
total - free |
NetBSD | inactive + execpages + file + free | total - free |
OpenBSD | inactive + free + cached | active + wired |
OSX | inactive + free | active + wired |
Solaris | free | total - free |
Win32 | free | total - free |
vm.memory.size[used] 和 vm.memory.size[available] 的总和不一定等于 total。例如,在 FreeBSD 上:
* Active, inactive, wired, cached 内存被视为 used,因为它们存储了一些有用的信息。
* 同时,inactive, cached, free 内存被视为 available,因为这些类型的内存可以立即提供给请求更多内存的进程。
因此,inactive 内存同时被视为 used 和 available。由于这一点,vm.memory.size[used] 监控项 仅用于信息目的,而 vm.memory.size[available] 旨在用于触发器。