OpenStack DevStack全新安装后Nova Compute Service无法运行及版本报错
解决DevStack中Nova Compute因Qemu版本不匹配报错的问题
我之前也碰到过一模一样的情况——明明系统里装了高版本的qemu-kvm,但Nova就是认不到,反而揪着旧版本报错,折腾了好一会儿才搞定,给你几个关键步骤:
先定位问题根源
先搞清楚系统当前实际调用的qemu是哪个版本:which qemu-system-x86_64 qemu-system-x86_64 --version大概率会发现输出的是2.0.0的路径(比如
/usr/bin/qemu-system-x86_64),而你安装的2.9.0可能在/usr/local/bin或者其他自定义路径下。调整系统PATH优先级
把高版本qemu所在的路径放到PATH最前面,让系统优先调用它:
编辑全局环境配置文件(比如/etc/profile)或者当前用户的~/.bashrc,添加一行:export PATH=/usr/local/bin:$PATH然后执行
source /etc/profile(或者source ~/.bashrc)让配置生效,再重新检查qemu版本,确认已经切换到2.9.0。配置DevStack指向正确的qemu
打开DevStack的local.conf文件,确保添加了以下配置(如果没有的话):LIBVIRT_TYPE=kvm QEMU_BIN_PATH=/usr/local/bin/qemu-system-x86_64 # 替换成你实际的高版本qemu路径这一步是让Nova明确知道要调用哪个qemu二进制文件,避免它去用系统默认的旧版本。
重启相关服务验证
重启Nova Compute和libvirt服务,让配置生效:sudo systemctl restart nova-compute sudo systemctl restart libvirtd然后实时查看Nova Compute的日志,确认报错消失:
journalctl -u nova-compute -f另外也可以用
virsh capabilities命令,在输出里搜索qemu关键字,确认libvirt已经识别到2.9.0版本的qemu。
一般按这个流程走,就能解决版本不匹配的问题了。
内容的提问来源于stack exchange,提问作者Dinesh Kumar
相关产品推荐
相关产品推荐

