Tuned Operator 不激活自定义配置文件 (Openshift 4.6.18)

问题描述

Openshift 认提供“node-tuning-operator”来调低系统。

我们可以使用自定义资源 (CR) 创建自定义配置文件

但是,操作员没有加载/激活自定义配置文件

它不是激活我的自定义配置文件,而是激活 openshift 提供的配置文件

我仍在努力找出正确的配置文件配置。

调整操作员没有激活我的自定义配置文件可能是什么问题?

解决方法

可以在 https://docs.openshift.com/container-platform/4.7/scalability_and_performance/using-node-tuning-operator.html 中找到有关调谐运算符的文档。

关于调谐运算符的通用信息:

  • 命名空间/项目:openshift-cluster-node-tuning-operator
  • 操作员:cluster-node-tuning-operator
  • DaemonSet:已调整
  • CRD:tuneds.tuned.openshift.io
  • CR:调整/默认和调整/渲染

文档说,除了 openshift 提供的名为“Tuned/default & Tuned/rendered”的默认资源之外,我们还可以创建自己的 kind=Tuned 自定义资源。

这些资源提供名为“openshift”、“openshift-node”和“openshift-control-plane”的默认配置文件。

可以使用以下命令查看更多信息:

oc get Tuned/default -n openshift-cluster-node-tuning-operator -o yaml

现在,我们可以创建自己的自定义配置文件作为自定义资源的一部分来调整我们自己的设置。

这里的技巧是自定义资源 yaml 文件中关于自定义配置文件的配置应该是正确的。如果正确,调谐操作员将加载配置文件并激活它。如果它不正确,则调整后的操作员将不会激活它,它也会忽略任何未来的正确配置。

这是调整运算符中的一个错误,已作为 https://bugzilla.redhat.com/show_bug.cgi?id=1919970 的一部分解决。

修复:将 openshift 集群版本升级到 4.7 及更高版本。

解决方法:删除调整后的 Pod,以便操作员创建新的 Pod。创建新 Pod 后,它将激活正确的配置文件。 (希望您 CR.yaml 中的配置已更正)。

重要命令:

  • 要找出运行调整操作符本身的 pod:

oc get pod -n openshift-cluster-node-tuning-operator -owide

  • 查看操作员 pod 的日志:(实际 pod 名称可以从 以上命令)

oc 记录 pod/cluster-node-tuning-operator-6644cd48bb-z2qxn -n openshift-cluster-node-tuning-operator

  • 要检查所有 kind=Tuned 的自定义资源都存在:

oc get Tuned -n openshift-cluster-node-tuning-operator

  • 描述和检查默认配置文件:

oc get Tuned/default -n openshift-cluster-node-tuning-operator -o yaml

  • 要找出它们正在运行的所有调优的 pod 和节点 集群:

oc get pod -n openshift-cluster-node-tuning-operator -owide

  • 要检查特定调谐 pod 的日志:(实际 pod 名称可以是 从上面的命令找到)

oc 日志tuned-h8xgh -n openshift-cluster-node-tuning-operator -f

  • 登录到已调整的 Pod 并手动确认已应用调整或 不是:(实际的 pod 名称可以从上一条到上一条命令中找到)

oc exec -it tuning-h8xgh -n openshift-cluster-node-tuning-operator --bash

  • 您可以在使用上面的登录到调整后的 Pod 后执行下面的命令 验证调整设置的命令:

    bash-4.4# cat /etc/tuned/infra-nodes/tuned.conf
    [主要的] summary=优化运行 OpenShift Infra 节点的系统
    [系统控制] fs.inotify.max_user_watches = 1048576 vm.swappiness = 1

    bash-4.4#tuned-adm 推荐无法通过 DBus 与 Tuned 守护进程对话。 Tuned 守护进程是否正在运行? infra-nodes bash-4.4#

bash-4.4# tuned-adm active 
Cannot talk to Tuned daemon via DBus. Is Tuned daemon running? 
Current active profile: openshift-control-plane 
bash-4.4#

注意:上面的示例代码准确地描述了这个问题中提出的问题。如果您注意到,活动配置文件是“openshift-control-plane”,而推荐/加载的配置文件是“infra-nodes”。这是由于前面提到的现有错误。一旦您删除了调整后的 pod (tuned-h8xgh),操作员将恢复并激活正确的配置文件。

自定义配置文件配置中的示例问题: 如果配置文件优先级与默认配置文件相同,则操作员将发出类似如下警告:

W0722 04:24:25.490704       1 profilecalculator.go:480] profiles openshift-control-plane/infra-node have the same priority 30,please use a different priority for your custom profiles!