首先,我们先来看看XenServer中Socket、Core、以及超线程后的核心之间在XenServer中CPU的排序关系,请参考下表:
CPU排序(以2路4核具有超线程功能CPU示范)Socket1
Socket2
Core1
Core2
Core3
Core4
Core1
Core2
Core3
Core4
HT1
HT2
HT1
HT2
HT1
HT2
HT1
HT2
HT1
HT2
HT1
HT2
HT1
HT2
HT1
HT2
#0
#1
#2
#3
#4
#5
#6
#7
#8
#9
#10
#11
#12
#13
#14
#15
上表反应了XenServer中CPU的排序规则。
1、指定特定的VM使用指定的物理CPU可以使用命令:
[root@xenserver ~]# xe vm-param-set uuid=<VMUUID> VCPUs-params:mask=1,3,7
该命令用于设置特定UUID的VM使用物理CPU排序中的第1,3,7个CPU
2、设置VM中CPU的权重
[root@xenserver ~]# xe vm-param-set uuid=<VMUUID> VCPUs-params:weight=512
该命令设置vCPU的权重为512,默认dom0权重为256,权重决定VM在CPU时间片中所占比例,权重范围从0到65535
3、设置VM最大CPU使用率
[root@xenserver ~]# xe vm-param-set uuid=<VMUUID> VCPUs-params:cap=80
该命令用户设置VM最大可以使用的CPU为单个CPU的80%,设置为100,则为1个物理CPU的,设置为80,则只能使用一个物理CPU的80%性能,设置为400,则表示最大可以使用4个物理CPU。默认为0,不限制。