[Cloud] 在VMWare中使用QEMU-KVM

博客首页 » Cloud 在VMWare中使用QEMU-KVM

发布于 16 Sep 2015 09:04
标签 blog
想在VMWare中用QEMU-KVM验证一些功能。发现还有诸多需要调整的地方。写个记录。

这次使用的是CentOS 7 x86_64

安装测试详细请参见这个文章:
http://www.centoscn.com/image-text/install/2014/0928/3873.html

安装kvm
yum -y install qemu-kvm libvirt virt-install bridge-utils

发现lsmod | grep kvm 看不到相应的模块,原来是VMWare Workstation默认不开vhv.enable = "TRUE"。关闭VMWare,添加这个Option,再开启,就可以看到:

[root@localhost ~]# lsmod | grep kvm
kvm_intel 148081 0
kvm 461126 1 kvm_intel

详情参见下面的文章:

解决VMware下64位Linux系统不支持全虚拟化(VMX)
http://www.linuxidc.com/Linux/2014-10/107895.htm

一、前提:

cpu支持Inter VT-X或AMD虚拟化技术,具体参考官网说明。

二、问题描述:

物理机下,VMware Workstation能安装64位CentOS系统,处理器Inter i3 M390,且支持Inter VT-X虚拟化技术,物理机BIOS中已打开Inter虚拟化开关(自己找),既然能安装64位系统,说明物理机BIOS中支持虚拟化开关已打开。

半虚拟化为pae

全虚拟化为vmx(Inter)、svm(AMD)

  1. uname -r

2.6.32-358.el6.x86_64

  1. cat /proc/cpuinfo |grep flags

flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36

clflush dts mmx fxsr sse sse2 ss syscall nx rdtscp lm constant_tsc up arch_perfmon

pebs bts xtopology tsc_reliable nonstop_tsc aperfmperf unfair_spinlock pni ssse3 cx16

sse4_1 sse4_2 x2apic popcnt hypervisor lahf_lm arat dts

可以看到系统是64位CentOS,只支持半虚拟化为pae,没有全虚拟化vmx

三、解决办法

在workstation上实现嵌套虚拟化,需要编辑虚拟机的vmx文件,添加

vhv.enable = "TRUE"

找到虚拟机安装文件,带有.vmx后缀,添加即可。

参考KB如下(Additional Information部分)

http://kb.vmware.com/kb/2034803

  1. cat /proc/cpuinfo |grep flags

flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov

pat pse36 clflush dts mmx fxsr sse sse2 ss syscall nx rdtscp lm constant_tsc

up arch_perfmon pebs bts xtopology tsc_reliable nonstop_tsc aperfmperf unfair_spinlock

pni vmx ssse3 cx16 sse4_1 sse4_2 x2apic popcnt hypervisor lahf_lm arat dts tpr_shadow vnmi ept vpid

可以看到,已经支持全虚拟化(vmx)了。

从这点可以看出vmware下的vcpu并不充分兼容物理机cpu。


本页面的文字允许在知识共享 署名-相同方式共享 3.0协议和GNU自由文档许可证下修改和再使用,仅有一个特殊要求,请用链接方式注明文章引用出处及作者。请协助维护作者合法权益。


系列文章

文章列表

  • Cloud 在VMWare中使用QEMU-KVM

这篇文章对你有帮助吗,投个票吧?

rating: 0+x

留下你的评论

Add a New Comment