For Win VMs you need to install the qemu guest agent. For linux VM PVE will always report buffered/cached RAM as used because from the point of view of the hypervisor the physical memory is used and not free/available.
For Win VMs you need to install the qemu guest agent. For linux VM PVE will always report buffered/cached RAM as used because from the point of view of the hypervisor the physical memory is used and not free/available.
To show you how much of the physical RAM the VM is actually using instead of lying to you reporting that RAM is free when it actually isn't because it is used by the page file cache of the VM. See here: https://www.LinuxAteMyRAM.com
Run free -h inside your VM and look how much RAM is reported as "free". This should match with what PVE is reporting how much free RAM the VM got.
To show you how much of the physical RAM the VM is actually using instead of lying to you reporting that RAM is free when it actually isn't because it is used by the page file cache of the VM. See here: https://www.LinuxAteMyRAM.com