10.2. 为过时的 CPU 型号管理节点标签

您可以将虚拟机(VM)调度到虚拟机的 CPU 模型和策略属性与节点支持的 CPU 模型和策略属性兼容的节点。通过在配置映射中指定过时的 CPU 模型列表,您可以把它们从为 CPU 模型创建的标签列表中排除。

10.2.1. 了解已过时 CPU 型号的节点标签

为确保节点只支持已调度虚拟机的有效 CPU 型号,创建一个带有过时 CPU 模型列表的配置映射。当 node-labeller 获取过时的 CPU 型号列表时,它会删除这些 CPU 模型并为有效的 CPU 模型创建标签。

注意

如果您没有配置具有过时 CPU 型号列表的配置映射,则会为标签(包括环境中不存在的过时的 CPU 型号)评估所有 CPU 模型。

在迭代过程中,从为节点生成的标签列表中删除最小 CPU 模型中的基本 CPU 功能列表。例如,一个环境可能有两个支持的 CPU 型号: PenrynHaswell

对于 minCPU,如果将 Penryn 指定为 CPU 型号,则 node-labeller 会为 Penryn 评估每个基本 CPU 功能,并将其与 Haswell 支持的每个 CPU 功能进行比较。对于 PenrynHaswell 都支持的 CPU 功能,node-labeller 会从用于创建标签的 CPU 功能列表中删除该功能。如果只被 Haswell 支持而 Penryn 不支持的 CPU 功能,则该 CPU 功能包含在生成的标签列表中。node-labeller 按照这个迭代过程删除最小 CPU 模型中存在的基本 CPU 功能并创建标签。

以下示例显示了 Penryn 的 CPU 功能的完整列表,该功能指定为 minCPU 的 CPU 型号:

Penryn 的 CPU 功能示例

apic
clflush
cmov
cx16
cx8
de
fpu
fxsr
lahf_lm
lm
mca
mce
mmx
msr
mtrr
nx
pae
pat
pge
pni
pse
pse36
sep
sse
sse2
sse4.1
ssse3
syscall
tsc

以下示例显示了 Haswell 的 CPU 功能完整列表:

Haswell 的 CPU 功能示例

aes
apic
avx
avx2
bmi1
bmi2
clflush
cmov
cx16
cx8
de
erms
fma
fpu
fsgsbase
fxsr
hle
invpcid
lahf_lm
lm
mca
mce
mmx
movbe
msr
mtrr
nx
pae
pat
pcid
pclmuldq
pge
pni
popcnt
pse
pse36
rdtscp
rtm
sep
smep
sse
sse2
sse4.1
sse4.2
ssse3
syscall
tsc
tsc-deadline
x2apic
xsave

以下示例显示了,在迭代并把 Penryn 的 CPU 功能与 Haswell 的 CPU 功能进行比较后,由 node-labeller 创建的节点标签列表:

迭代后节点标签示例

aes
avx
avx2
bmi1
bmi2
erms
fma
fsgsbase
hle
invpcid
movbe
pcid
pclmuldq
popcnt
rdtscp
rtm
sse4.2
tsc-deadline
x2apic
xsave