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 型号: Penryn
和 Haswell
。
对于 minCPU
,如果将 Penryn
指定为 CPU 型号,则 node-labeller
会为 Penryn
评估每个基本 CPU 功能,并将其与 Haswell
支持的每个 CPU 功能进行比较。对于 Penryn
和 Haswell
都支持的 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