12.5. 配置单个 NUMA 节点策略
NUMA Resources Operator 要求在集群中配置单个 NUMA 节点策略。这可以通过创建并应用性能配置集或配置 KubeletConfig 来实现。
配置单个 NUMA 节点策略的首选方法是应用性能配置集。您可以使用 Performance Profile Creator (PPC) 工具来创建性能配置集。如果在集群中创建了性能配置集,它会自动创建 KubeletConfig 和 tuned 配置集等其他调优组件。
有关创建性能配置集的更多信息,请参阅"添加资源"部分中的"关于 Performance Profile Creator"。
12.5.1. 性能配置集示例 复制链接链接已复制到粘贴板!
此 YAML 示例显示使用性能配置集创建器(PPC) 工具创建的性能配置集:
- 1
- 这个值需要与您要配置 NUMA Resources Operator 的
MachineConfigPool值匹配。例如,您可以创建一个名为worker-cnf的MachineConfigPool对象,它指定电信工作负载在其中运行的一组节点。MachineConfigPool的值必须与稍后在"创建 NUMAResourcesOperator 自定义资源"中配置的NUMAResourcesOperatorCR 中的machineConfigPoolSelector值匹配。 - 2
- 确保
topologyPolicy字段被设置为single-numa-node,方法是在运行 PPC 工具时将topology-manager-policy参数设置为single-numa-node。注意对于托管的 control plane 集群,
MachineConfigPoolSelector并没有任何功能上的效果。节点关联由特定的NodePool对象决定。
12.5.2. 创建 KubeletConfig CR 复制链接链接已复制到粘贴板!
配置单个 NUMA 节点策略的建议方法是应用性能配置集。另一种方法是创建并应用 KubeletConfig 自定义资源 (CR),如下所示。
流程
创建
KubeletConfig自定义资源 (CR) 来为机器配置集配置 pod admittance 策略:将以下 YAML 保存到
nro-kubeletconfig.yaml文件中:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意对于托管的 control plane 集群,
MachineConfigPoolSelector设置并没有任何功能上的效果。节点关联由特定的NodePool对象决定。要为托管的 control plane 集群应用KubeletConfig,您必须创建一个包含配置的ConfigMap,然后在NodePool的spec.config字段中引用该ConfigMap。运行以下命令来创建
KubeletConfigCR:oc create -f nro-kubeletconfig.yaml
$ oc create -f nro-kubeletconfig.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow 注意应用性能配置集或
KubeletConfig会自动触发节点重新引导。如果没有触发重启,您可以通过查看处理节点组的KubeletConfig中的标签来排除此问题。