可用記憶體:Available memory=free+buffers+cached,即2021=235+394+1392
已使用記憶體:Used memory=used-buffers-cached,即30217=32003-394-1392
而在用zabbix自身的Template OS Linux模版監控伺服器時,發現Used memory都偏高。
這是因為zabbix通過vm.memory.size[used]這個key獲取伺服器的已使用記憶體(Used memory)。但vm.memory.size[used]獲取的值(如下所示為used 32003)還包含buffers、cached這部份。buffers、cached這部份對伺服器來說也是可用的。只不過linux本身是儘可能多地使用記憶體,只有當記憶體不足時才會釋放buffers、cached空間。
vm.memory.size[available]獲取的可用記憶體倒是挺準確的,也就是說zabbix獲取的available是加上buffers和cached的,獲取的used也是加上buffers和cached,因此我們這邊就會修改Used memory的key值,讓總記憶體減去可用記憶體即可獲取準確的已使用記憶體。
Used memory的key:(last("vm.memory.size[total]")-last("vm.memory.size[available]"))
百分比