我在干净的 Centos 6 机器上安装了标准(未修改)的 KVM+libvirtd,该机器具有 8G RAM 和 8 核 CPU。
当我尝试使用 virt-manager 安装 guest centos 6 时,需要很长时间才能完成安装。我给它提供了 2 个核心和 3 GB 的 RAM,我可以在性能选项卡中看到它永久使用了所有 3GB 的 RAM。
问题出在哪里?
答案1
我在使用 KVM(CentOS EL 6.4)时遇到了这个问题,因此我运行了一个基准测试来找出发生了什么。结果发现我的客户虚拟机的运行速度只有主机(裸机操作系统)的 15%。我检查了 kvm 的先决条件,并确认我的英特尔处理器具有 VT-x (vmx) [AMD 称之为 svm]。
cat /proc/cpuinfo | grep vmx
那么为什么性能这么慢呢?原来我需要在系统 BIOS 中启用 VT-x(旧机器,大约 2006 年)。为了验证这是问题所在,我检查了内核模块是否kvm_intel
正在运行:
lsmod | grep kvm
事实证明它没有运行kvm_intel
。当我安装虚拟机时,libvirt 将定义domain type
为qemu
。但这应该是类型kvm
。您可以检查:
virsh edit your_vm_guest_domain
...检查顶部的行...
<domain type='qemu'>
这是 libvirt 告诉我它没有检测到kvm_intel
我的系统上的存在并且默认为普通的 qemu 仿真。
当我在 BIOS 中启用 VT-x 时,我发现我可以加载模块kvm_intel
,然后更改<domain type='kvm'>
。我再次执行了相同的基准测试,发现客户虚拟机和主机操作系统之间的速度几乎没有差异。