×

机器配置守护程序是机器配置操作符的一部分。它在集群中的每个节点上运行。机器配置守护程序管理每个节点上的配置更改和更新。

了解机器配置守护程序指标

从 OpenShift Container Platform 4.3 开始,机器配置守护程序提供了一组指标。可以使用 Prometheus 集群监控堆栈访问这些指标。

下表描述了这组指标。有些条目包含获取特定日志的命令。但是,可以使用oc adm must-gather命令获得最全面的日志集。

在“名称”和“描述”列中标有*的指标表示可能导致性能问题的严重错误。此类问题可能会阻止更新和升级继续进行。

表 1. MCO 指标
名称 格式 描述 备注

mcd_host_os_and_version

[]string{"os", "version"}

显示 MCD 运行的操作系统,例如 RHCOS 或 RHEL。如果是 RHCOS,则提供版本。

mcd_drain_err*

记录在排水失败期间收到的错误。*

虽然排水可能需要多次尝试才能成功,但最终的排水失败会阻止更新继续进行。drain_time指标(显示排水耗时)可能有助于故障排除。

要进行进一步调查,请运行以下命令查看日志:

$ oc logs -f -n openshift-machine-config-operator machine-config-daemon-<hash> -c machine-config-daemon

mcd_pivot_err*

[]string{"err", "node", "pivot_target"}

记录在枢轴期间遇到的错误。*

枢轴错误可能会阻止操作系统升级继续进行。

要进行进一步调查,请运行此命令查看来自machine-config-daemon容器的日志:

$ oc logs -f -n openshift-machine-config-operator machine-config-daemon-<hash> -c machine-config-daemon

mcd_state

[]string{"state", "reason"}

指示节点的机器配置守护程序的状态。可能的状态为“已完成”、“正在工作”和“已降级”。如果为“已降级”,则包含原因。

要进行进一步调查,请运行以下命令查看日志:

$ oc logs -f -n openshift-machine-config-operator machine-config-daemon-<hash> -c machine-config-daemon

mcd_kubelet_state*

记录 kubelet 健康状况故障。*

预期此值为空,失败计数为 0。如果失败计数超过 2,则表示超过错误指示阈值。这表明 kubelet 的健康状况可能存在问题。

要进行进一步调查,请运行此命令访问节点并查看其所有日志:

$ oc debug node/<node> — chroot /host journalctl -u kubelet

mcd_reboot_err*

[]string{"message", "err", "node"}

记录失败的重启和相应的错误。*

预期此值为空,这表示重启成功。

要进行进一步调查,请运行以下命令查看日志:

$ oc logs -f -n openshift-machine-config-operator machine-config-daemon-<hash> -c machine-config-daemon

mcd_update_state

[]string{"config", "err"}

记录配置更新的成功或失败以及相应的错误。

预期值为rendered-master/rendered-worker-XXXX。如果更新失败,则存在错误。

要进行进一步调查,请运行以下命令查看日志:

$ oc logs -f -n openshift-machine-config-operator machine-config-daemon-<hash> -c machine-config-daemon