很久以前,我在一台生产服务器上创build了一些虚拟机。 在使用virt-manager的Ubuntu上,我已经忘记了他们的configuration,即我分配给这些虚拟机有多lessRAM,有人能帮我弄清楚。我不知道如何检测这个部分。
编辑一些答复后,我正在使用KVM而不是Xen
free -m具有以下输出
total used free shared buffers cached Mem: 1002 956 45 0 30 151 -/+ buffers/cache: 774 228 Swap: 2015 0 2015
和configuration文件virtual_machine.xml有以下条目,我认为是RAM规范的权利
<memory>1048576</memory> <currentMemory>1048576</currentMemory>
但是我不能理解GB中没有什么等于。这里是虚拟机上的顶层命令的输出
Mem: 1026868k total, 980080k used, 46788k free, 31508k buffers Swap: 2064376k total, 104k used, 2064272k free, 155040k cached
对于另一个虚拟机免费-m有以下
total used free shared buffers cached Mem: 2009 1848 161 0 235 792 -/+ buffers/cache: 820 1189 Swap: 5847 1 5846
和它的configuration文件有
<memory>2097152</memory> <currentMemory>2097152</currentMemory>
现在在所有这些客户端运行的主机上输出top -b -d 1 > top.txt命令
top - 14:40:43 up 8 days, 4:01, 1 user, load average: 0.68, 0.58, 0.55 Tasks: 259 total, 2 running, 256 sleeping, 0 stopped, 1 zombie Cpu(s): 1.3%us, 4.2%sy, 0.0%ni, 94.4%id, 0.1%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 8181868k total, 8059876k used, 121992k free, 388564k buffers Swap: 15624184k total, 63012k used, 15561172k free, 1596052k cached
主机拥有多less内存,多less给客户,这是我想知道的。
你的主机有8GB的内存:
Mem: 8181868k total
你的第一个虚拟机有1GB的内存分配给它。 你的虚拟机configuration文件指定了1048576,单位是kB(我假设,但在任何其他单位没有任何意义)。 顶级显示1026868k的输出certificate了这一点,这也足以支持1GB的支持。
这让人困惑,因为这些数字不匹配。 这可能是因为内存是为PCI和BIOS地址空间映射保留的 – 这种情况甚至发生在KVM内部,因为KVM提供了一个假BIOS,需要为BIOS和假PCI空间保留一些内存。
第二个虚拟机同样有2GB的ram分配给它。
这里有一个很好的答案,就是如何正确解释“自由”的输出,值得一读。 我不会在这里复制它
假设你使用xen,试试“grep mem [xen config files]”,我的configuration文件在/ etc / xen / configs /中,所以它会是“grep mem / etc / xen / configs / *”
要在你的系统上find内存(主机),请尝试“free -m”
就像Sirex写的,如果你使用的是Xen,试着使用命令
xm list
这将向您显示您分配有内存的虚拟机。
编辑:我注意到你正在使用KVM。 尝试使用像这样的命令virsh:
virsh dommemstat DOMAIN_ID
要找出您的域使用的ID:
virsh list
我希望它有帮助。