关于CPU配置模式,深度实践KVM一书中有概要讲述,最近做KVM的CPU host 模式配置做了相关了解,但因为宿主机的型号种类较多可能无法进一步发布,现做记录
CPU配置模式可以有以下几种种模式:
一、custom 自己定义:
<cpu mode='custom' match='exact'>
<model fallback='allow'>kvm64</model>
...
<feature policy='require' name='monitor'/>
</cpu>
二、host-model
根据物理CPU的特性,选择一个最靠近的标准CPU型号,如果没有指定CPU模式,默认也是使用这种模式,xml配置文件为:
<cpu mode='host-model' />
三、host-passthrough
直接将物理CPU 暴露给虚拟机使用,在虚拟机上完全可以看到的就是物理CPU的型号;xml配置文件为:
<cpu mode='host-passthrough'/>
四、两种host模式对比
(1)使用host-model看到的VCPU:Libvir 会根据物理cpu的型号,从规定的CPU中选择一种最接近的CPU型号
processor : 3
vendor_id : GenuineIntel
cpu family : 6
model : 44
model name : Westmere E56xx/L56xx/X56xx (Nehalem-C)
...
(2)使用host-passthrough看到的VCPU:直接看到物理CPU的型号
processor : 3
vendor_id : GenuineIntel
cpu family : 6
model : 44
model name : Intel(R) Xeon(R) CPU X5650 @ 2.67GHz
五、host技术适用于以下场景:
1 CPU压力非常大;
2需要将物理CPU的一些特性传给虚拟机使用;
3需要在虚拟机里面看到和物理CPU一模一样的CPU品牌型号,这个在一些公有云很有意义;
注意:host-passthrough 方式虚拟机不能迁移到不同型号的CPU上;