QEMU类嵌套虚拟机报错kvm_buf_set_msrs failed.

近日在AMD平台上用虚拟化工具 Proxmox VE 搭建 基于Deskpool 的 DVI 云桌面服务总是遭遇报错如下:

kvm: error: failed to set MSR 0xe1 to 0x0
kvm: /build/pve-qemu/pve-qemu-kvm-5.0.0/target/i386/kvm.c:2695: kvm_buf_set_msrs: Assertion `ret == cpu->kvm_msr_buf->nmsrs‘ failed.
TASK ERROR: start failed: QEMU exited with code 1

刚开始以为是deskpool的模板配置有误,所以换成了确定无误的 koolshare LEDE 镜像,却依旧报错

QEMU类嵌套虚拟机报错kvm_buf_set_msrs failed.
?

而我用同样的软件环境部署到 Intel CPU硬件上是却没用报告这一错误

QEMU类嵌套虚拟机报错kvm_buf_set_msrs failed.
?

这个报错大意是说QEMU初始化 CPU创建失败,经咨询AMD工程师,回复说这个问题多发生在AMD硬件平台上,很可能是软件工程的原因,Intel 的技术参与力度较大,对软件工程的底层支持较好。在VMware ESXi 套件上也会遭遇类似的报错。

我个人使用的CPU是 AMD 锐龙 3950X,对于不能很好地利用AMD的多核心CPU的虚拟化功能其实很浪费。建议Linus先生和QEMU及KVM团队多研究一下如何充分利用 AMD CPU 的多核心、多线程资源。
另外,在生产环境上如果侧重于云计算或虚拟化业务的话,建议当前定制服务器时尽可能采用 Intel 系的硬件资源。

最后吐槽一下 koolshare 的酷软中心,新版的酷软中心不仅下架了“满世界溜达”插件,还禁止通过以离线的方式安装相应的插件,看来今后的软路由项目又得转移了......

QEMU类嵌套虚拟机报错kvm_buf_set_msrs failed.
QEMU类嵌套虚拟机报错kvm_buf_set_msrs failed.

QEMU类嵌套虚拟机报错kvm_buf_set_msrs failed.

版权信息,孟伯所属

相关推荐