Libvirt CPU 配置参数 链接到标题 我们先来看下 Libvirt 关于虚拟机 CPU 配置项:
match check mode model … 具体配置解释可以去 Libvirt 官方文档中查看,这里主要说一下 mode 参数,看一下 mode 具体含义及可选配置:
host-passthrough 链接到标题 Libvirt 通知 KVM 对 CPU 不做任何配置项修改,直通给虚拟机。因为虚拟机可以使用与物理主机相同 CPU 指令集,性能最好,相反,在虚拟机热迁移过程中,对目标主机 CPU 要求同型号同代。
host-model 链接到标题 本质上是根据物理主机 CPU 从 cpu_map.xml 文件中选择最匹配的 CPU 型号。由于CPU定义是在启动虚拟机之前复制的,因此可以在不同主机上使用完全相同的XML,同时仍然提供每个主机支持的最佳虚拟机 CPU。属于在功能与性能之间的平衡。
custom 链接到标题 不指定 mode 属性时的默认值。此模式使得无论虚拟机启动哪个主机,虚拟机都将看到相同的硬件,兼容性最好。
最佳选择 链接到标题 在不考虑虚拟机兼容性(热迁移)情况下,优先选择 host-passthrough ,综合考虑选择 host-model 。
OpenStack 中如果检测到 hypervisor 是 kvm-qemu ,则默认值为 host-model ;在 hypervisor 是其他类型时,默认值为 none,即由 hypervisor 自己选择。
我查看了自己两台 VPS 的 CPU 信息,如下: