公司测试环境,机器为飞腾2000-arm架构,系统为麒麟V10(移植centos)
公司模块利用qcow快照和libvirt创建的虚拟机无法启动,报错unsupported configuration: CPU mode 'host-passthrough' for aarch64 qemu domain on aarch64 host is not supported by hypervisor,定位了很久最后发现是程序生成的虚拟机xml文件中domain type为qemu导致的。
修复过程:
- virsh list --all 查看虚拟机名称
- virsh dumpxml VIRT_NAME > /root/VIRT_NAME.xml 将虚拟机xml打印出来重定向到文件中
- virsh undefine VIRT_NAME 去除虚拟机定义
- vim /root/VIRT_NAME.xml 修改domain type为kvm
- virsh define /root/VIRT_NAME.xml 创建虚拟机
- virsh start VIRT_NAME 启动虚拟机
- virsh console VIRT_NAME 控制台进入虚拟机 (完成)
注:其他很多libvirt的错误都是权限导致的,相应修改/etc/libvirt/qemu.conf中的user、group、dynamic_ownership等配置即可。