基于kolla安装的OpenStack解决KVM虚拟机嵌套问题

33 篇文章 16 订阅
10 篇文章 7 订阅

一、问题

基于kolla安装OpenStack Queens版本。其中一个控制节点、两个计算节点,均为物理X86服务器。在计算节点启动KVM虚拟机。

需求是:在KVM虚拟机里面再启动KVM虚拟机,进行其他实验验证。

首先,在计算节点的物理服务器上面改配置,实现支持KVM虚拟机嵌套。具体请参考《openstack开启kvm虚拟机嵌套

然后,重启相关容器:

docker restart nova_libvirt
docker restart nova_compute

然后,启动虚拟机(修改物理服务器配置时,上面运行的虚拟机必须先关闭)
报如下错误:

Exception during message handling: libvirtError: internal error: process exited while connecting to monitor: Could not access KVM kernel module: Permission denied
2018-07-28T15:19:33.415996Z qemu-kvm: failed to initialize KVM: Permission denied

可以看到是权限问题。

二、解决

查看计算节点qume配置

cat /etc/kolla/nova-libvirt/qemu.conf
stdio_handler = "file"
user = "nova"
group = "nova"

用户和组都是nova

再看 /dev/kvm 的权限,其他用户和组没有rw权限

ls -al /dev/kvm
crw-rw---- 1 root 42427 10, 232 Jul 28 11:31 /dev/kvm

设置权限,实现其他用户和组也有rw权限

chmod a+rw /dev/kvm
ls -al /dev/kvm
crw-rw-rw- 1 root 42427 10, 232 Jul 28 11:31 /dev/kvm

启动虚拟机,没有再报错

进入虚拟机,查看已经支持kvm

egrep -c '(vmx|svm)' /proc/cpuinfo
4

显示为 4 ,说明CPU为4核,支持kvm

问题解决。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值