如何在 VMware ESXi 虚拟机上运行 KVM

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在 VMware ESXi 虚拟机上运行 KVM相关的知识,希望对你有一定的参考价值。

记得以前就有人问过“能不能在一个虚拟机上运行虚拟机”,答案当然是可以的,Xen HVM, KVM, VMware, Qemu 等Hypervisor 都可以这样嵌套虚拟,不过由于性能低下实际用处不大。在VMware ESXi 虚拟机上运行虚拟机,被称为多层虚拟或者嵌套虚拟机(Nested VMs)。如果只有一台电脑想测试多节点OpenStack 环境的话,使用VMware ESXi 虚拟几个运行KVM Hypervisor 的OpenStack 计算节点是个不错的办法。VMware ESXi 5.0 默认情况下不支持嵌套虚拟,所以在VMware ESXi 虚拟机里安装完KVM 以后会发现KVM 虽然能装但不可用:

# kvm-ok
INFO: Your CPU does not support KVM extensions
KVM acceleration can NOT be used

解决办法很简单:1、修改VMware ESXi 的设置;2、修改对应虚拟机的设置。

登陆VMware ESXi 控制台打开VMware ESXi 5.0 的SSH 服务(默认SSH 服务是关闭的),然后用ssh 登陆VMware ESXi 后在config 文件中最后加入vhv.allow = “TRUE”一行:

# vi /etc/vmware/config
libdir = "/usr/lib/vmware"
authd.proxy.vim = "vmware-hostd:hostd-vmdb"
authd.proxy.nfc = "vmware-hostd:ha-nfc"
authd.proxy.nfcssl = "vmware-hostd:ha-nfcssl"
authd.proxy.vpxa-nfcssl = "vmware-vpxa:vpxa-nfcssl"
authd.proxy.vpxa-nfc = "vmware-vpxa:vpxa-nfc"
authd.fullpath = "/sbin/authd"
authd.soapServer = "TRUE"
vmauthd.server.alwaysProxy = "TRUE"
vhv.allow = "TRUE"
重启VMware ESXi 后编辑虚拟机选项(需要先关闭虚拟机),打开Edit virtual machine settings 对话框,在options 页面的General Options 选项里把Guest Operating System 的类型换成Other 里面的VMware ESxi 5.x,如图:

最后启动虚拟机后再kvm-ok 一下就可以看到KVM 可以用了:

# kvm-ok
INFO: /dev/kvm exists
KVM acceleration can be used
参考技术A 1、修改VMware ESXi 的设置
2、修改对应虚拟机的设置。

登陆VMware ESXi 控制台打开VMware ESXi 5.0 的SSH 服务(默认SSH 服务是关闭的),然后用ssh 登陆VMware ESXi 后在config 文件中最后加入vhv.allow = “TRUE”一行:

# vi /etc/vmware/config
libdir = "/usr/lib/vmware"
authd.proxy.vim = "vmware-hostd:hostd-vmdb"
authd.proxy.nfc = "vmware-hostd:ha-nfc"
authd.proxy.nfcssl = "vmware-hostd:ha-nfcssl"
authd.proxy.vpxa-nfcssl = "vmware-vpxa:vpxa-nfcssl"
authd.proxy.vpxa-nfc = "vmware-vpxa:vpxa-nfc"
authd.fullpath = "/sbin/authd"
authd.soapServer = "TRUE"
vmauthd.server.alwaysProxy = "TRUE"
vhv.allow = "TRUE"
重启VMware ESXi 后编辑虚拟机选项(需要先关闭虚拟机),打开Edit virtual machine settings 对话框,在options 页面的General Options 选项里把Guest Operating System 的类型换成Other 里面的VMware ESxi 5.x,如图:

最后启动虚拟机后再kvm-ok 一下就可以看到KVM 可以用了:

# kvm-ok
INFO: /dev/kvm exists
KVM acceleration can be used

VMWARE ESXi 系列虚机系统安装常见问题

  • 在虚拟机上无法安装64bit的操作系统
    Intel Virtualization Technology是否enable

  • 如何设置虚拟网卡
    1) 通过ESXi识别出来的ip地址段来创建虚拟网卡
    2) 添加一块网卡,然后点击网卡信息可以看到网卡连接的交换机来添加网卡

  • Windows中网卡与虚拟交换机添加的网卡如何匹配
    首先断所有的网卡连接,然后一块一块网卡连接来判断

  • Linux中的网卡与虚拟交换机添加的网卡如何匹配
    创建网卡后,通过ifconfig来看网卡的mac地址来判断
    一般网卡的命名顺序与虚拟机种网卡的命名顺序一致

  • 关闭超线程
    DL380系列G8以上服务器支持超线程功能,关闭方法如下:
    System Options=>Processor Options=>
    Intel(R) Hyperthreading Options =>Disabled
  • 以上是关于如何在 VMware ESXi 虚拟机上运行 KVM的主要内容,如果未能解决你的问题,请参考以下文章

    如何在 vmware esxi 虚拟机上运行 kvm

    如何在VMware ESXi虚拟机上设置静态MAC地址

    vmware esxi服务器无法启动

    VMware ESXI5.5虚拟机更改MAC地址

    ESXI的虚拟机中VMWare tools 无法安装如何解决

    VMware-ESXI上挂载U盘到某台虚拟机上