2

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

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

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

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

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

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

4

1 回答 1

1

可以在https://docs.openshift.com/container-platform/4.7/scalability_and_performance/using-node-tuning-operator.html找到调整操作符的文档。

Tuned Operator 的一般信息:

  • 命名空间/项目:openshift-cluster-node-tuning-operator
  • 操作员:集群节点调整操作员
  • 守护进程:调整
  • CRD:tuneds.tuned.openshift.io
  • CR : 调整/默认 & 调整/渲染

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

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

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

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

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

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

这是调整运算符中的一个错误,它作为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 -o wide

  • 查看 operator 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 -o wide

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

oc 记录 tune-h8xgh -n openshift-cluster-node-tuning-operator -f

  • 登录到调整的 pod 并手动确认是否应用了调整:(实际的 pod 名称可以从 previous-to-above 命令中找到)

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

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

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

    bash-4.4#tuned-adm 建议无法通过 DBus 与 Tuned 守护进程对话。Tuned 守护程序是否正在运行?基础节点 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!
于 2021-07-22T12:18:57.967 回答