码迷,mamicode.com
首页 > 其他好文 > 详细

KVM上如何让虚拟机支持虚拟化(kvm虚拟化的嵌套)

时间:2018-03-17 10:56:49      阅读:288      评论:0      收藏:0      [点我收藏+]

标签:name   span   vmx   tap   bool   gre   hat   nbsp   repo   

http://blog.csdn.net/swimming_in_it_/article/details/53320141
http://blog.csdn.net/wickedglory/article/details/53264559

首先检查 KVM host(宿主机/母机)上的kvm_intel模块是否打开了嵌套虚拟机功能(默认是开启的):
    root@localhost:~# modinfo kvm_intel | grep nested
    parm: nested:bool
    root@localhost:~# cat /sys/module/kvm_intel/parameters/nested
    Y
    root@localhost:~#

如果上面的显示结果不是 Y 的话需要开启 nested:

    root@localhost:~# modprobe -r kvm-intel
    root@localhost:~# modprobe kvm-intel nested=1
    root@localhost:~# cat /sys/module/kvm_intel/parameters/nested
    Y
然后创建虚拟机即可
使用qemu打开一个虚拟机在启动命令上加上“-cpu host”或“-cpu qemu64,+vmx”
如下面所示:
root@ubuntu:~/qemu# qemu-system-x86_64 -enable-kvm -m 1024 -smp 4 -hda ubuntu.raw -cpu host -net nic -net tap,ifname=tap1 -monitor stdio


默认情况下,系统并不支持nested

#查看当前系统是否支持nested
systool -m kvm_intel -v  | grep -i nested
nested              = "N"
#或者这样查看
cat /sys/module/kvm_intel/parameters/nested
N

第一步升级内核,用3.18内核做测试,升级内核很简单,下载编译好的内核rpm包,这里是下载地址,安装,然后修改grub.conf默认引导内核为新内核

第二步添加引导参数同样很简单,只需要在 kernel 那一行的末端加上 "kvm-intel.nested=1"

https://www.baidu.com/
复制代码
#升级内核
rpm -ivh kernel-ml-3.18.3-1.el6.elrepo.x86_64.rpm

#修改grub.conf
default=0              #使用新内核
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title Red Hat Enterprise Linux Server (3.18.3-1.el6.elrepo.x86_64)
    root (hd0,0)
    kernel /vmlinuz-3.18.3-1.el6.elrepo.x86_64 ro root=UUID=9c1afc64-f751-473c-aaa6-9161fff08f6f rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcy
rheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet kvm-intel.nested=1

KVM上如何让虚拟机支持虚拟化(kvm虚拟化的嵌套)

标签:name   span   vmx   tap   bool   gre   hat   nbsp   repo   

原文地址:https://www.cnblogs.com/wucg/p/8587257.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!