In my scene KVM host cat /proc/meminfo MemTotal=256G MemFree=4G Cached=12G Buffers=80G
When I want to deploy a VM with 32G memory to this host, it prompts that the resources are insufficient (mem.overprovisioning.factor=1.0). CLOUDSTACK tells me that KVMHOST has 16GB of available memory (it does not count Buffers). So 16<32, so there is not enough data. But I manually started a VM with 32G memory on KVM HOST, and it succeeded; and Buffers/cached/memfree/they were reduced accordingly. therefore: Can we add the memory occupied by Buffers to AvailableMemory and report to CLOUDSTACK? -----邮件原件----- 发件人: Riepl, Gregor (SWISS TXT) <gregor.ri...@swisstxt.ch> 发送时间: 2020年7月15日 17:41 收件人: users@cloudstack.apache.org 主题: Re: KVM host AvailableMemory data is incorrect This sounds very familiar... https://bugzilla.redhat.com/show_bug.cgi?id=1250060 and they rolled it back in https://bugzilla.redhat.com/show_bug.cgi?id=1779609 because upstream didn't accept their patch. We had to "fix" our memory monitoring twice because of this. It's important to *not* calculate buffer/cache memory towards memory usage, because the kernel can reclaim this memory whenever there is a need. ________________________________ From: li jerry <div...@hotmail.com> Sent: 15 July 2020 08:27 To: users@cloudstack.apache.org <users@cloudstack.apache.org> Subject: KVM host AvailableMemory data is incorrect Hello everyone We use HCI to run CloudStack (KVM+CEPH). After running for a period of time, cloudstack reports that HOST has no available memory. But ZABBIX monitoring shows that HOST still has a lot of available memory. By observing /proc/meminfo on KVM HOST, it is found that most of the memory is occupied by Buffers. Further analysis of the source code of cloudstack-agent shows that the algorithm for cloudstack-agent to obtain AvailableMemory on the host is: Cached +MemFree -reservedMemory +overCommitMemory It does not calculate the memory occupied by Buffers. Excuse me, can I mark the memory occupied by Buffers as AvailableMemory? If not, what is the reason? Thank you! - Jerry