pve开启嵌套虚拟化,pve下kvm类型CPU的群晖VMM虚拟机创建

pve开启嵌套虚拟化,pve下kvm类型CPU的群晖VMM虚拟机创建

0.前言

pve下安装了群晖,尝试在群晖内利用VMM再创建虚拟机(套娃)。直接在VMM里面创建虚拟机会无法开启,也无法删除,只能直接卸载VMM套件。
要在pve下的虚拟机内再开虚拟机,需要开启pve的嵌套虚拟化,并设置cpu类型。下面以群晖为例,演示设置过程。

1.pve嵌套虚拟化开启

检查pve系统是否开启nested,在pve shell运行命令:

cat /sys/module/kvm_intel/parameters/nested

输出N,表示未开启,输出Y,表示已开启。
未开启,则必须先关闭所有的虚拟机,强制关闭命令:

qm stop 100  #100为虚拟机ID

然后执行以下命令开启嵌套虚拟化:

modprobe -r kvm_intel
modprobe kvm_intel nested=1
cat /sys/module/kvm_intel/parameters/nested

再次检查,输出Y,即为开启成功。
为保证pve重启后,嵌套虚拟化仍然开启,添加开机自启:

echo "options kvm_intel nested=1" >> /etc/modprobe.d/modprobe.conf

2.设置虚拟机CPU类型

在网络上查询到的资料是直接将cpu类型设置为 host ,再开机即可,在其他虚拟机下是可行的(例如ikuai/win7),但是将群晖虚拟机的cpu类型设置为host,将导致群晖无法正常使用。
所以需要给默认的kvm类型 添加虚拟化选项,使得群晖能够正常使用,并且开启虚拟化。
在pve shell 输入如下指令,通过vi修改对应的.conf文件。vi的使用可以百度。

vi /etc/pve/nodes/pve/qemu-server/100.conf  #100为对应的虚拟机ID

在打开的文件,第一行添加配置如下:

args: -cpu 'kvm64,enforce,+kvm_pv_eoi,+vmx,+kvm_pv_unhalt,+lahf_lm,+sep'

在这里插入图片描述

其中主要是 +vmx 在起作用,开启了kvm类型cpu的虚拟化。保存后开启群晖虚拟机,就可以在vmm里面启动虚拟机了。

3.测试虚拟机系统是否已开启虚拟化

启动pve群晖虚拟机,用ssh连接群晖,运行下面的命令:

egrep --color 'vmx|svm' /proc/cpuinfo

输出vmx或者svm的,则该系统已开启虚拟化。
在这里插入图片描述
参考如下:
[1]: https://blog.csdn.net/qq_24841037/article/details/98684837 一般虚拟机的设置
[2]: https://blog.csdn.net/qq_22182829/article/details/119568108 kvm类型cpu的设置,文中提供的配置文件修改路径有误,应该是/etc/pve/nodes/pve/qemu-server/100.conf,且提供的修改指令引号有误,应该是打错了。按照这篇文章修改会导致群晖不开机。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值