天天看點

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 的酷軟中心,新版的酷軟中心不僅下架了“滿世界溜達”插件,還禁止通過以離線的方式安裝相應的插件,看來今後的軟路由項目又得轉移了......

繼續閱讀