您好我刚开始在rhel6上使用kvm,创build一个虚拟机之后,我尝试增加内存,但是我在xml文件中的更改不会传播给虚拟机,即使在popup虚拟机并重新启动libvert之后?
[root@kvm01 qemu]# virsh dominfo dev-kvm01 Id: 2 Name: dev-kvm01 UUID: 9b2bf581-2807-3116-b176-60e9c0559943 OS Type: hvm State: running CPU(s): 2 CPU time: 1975.3s Max memory: 7864320 kB Used memory: 7864320 kB Persistent: yes Autostart: disable Security model: selinux Security DOI: 0 Security label: system_u:system_r:svirt_t:s0:c47,c760 (enforcing) [iknowmed@dev-kvm01 ~]$ free total used free shared buffers cached Mem: 3632284 3614508 17776 0 3980 3491676 -/+ buffers/cache: 118852 3513432 Swap: 5668856 0 5668856
我相信,在你的客户端,你可能有一个没有PAE(物理地址扩展)支持的x86(32位)内核。 这些内核只能支持less于4 GB的内存。
简单的解决scheme是切换到由Linux发行版提供的支持PAE的内核(希望)。
更困难的解决scheme是切换到x86_64 / amd64(64位)体系结构,但是您需要重新安装guest虚拟机。
编辑添加:
或者,您可能没有在libvirtconfiguration中启用PAE。
如果你做virsh edit dev-kvm01你应该看到如下的function部分:
<features> <pae/> <acpi/> <apic/> </features>
如果<pae/>条目不存在,放在那里并重新启动guest <pae/> 。
您可以按照以下步骤来增加KVM虚拟机的内存大小。
首先关机vm virsh shutdown dev-kvm01
完成之后,validationvm xml文件中的内存设置,然后运行virsh undefine dev-kvm01 virsh define dev-kvm01
现在启动vm virsh start dev-kvm01
validationvm中的内存变化,我build议不要使用linux free程序来检查内存使用情况,而是可以安装一个很好的工具htop
yum install htop # For Red Hat/ CentOS / Fedora
apt-get install htop # For Debian / Ubuntu / Linux Mint
htop 我希望这会解决你的问题。