4.9. Machine Config Daemon メトリクス

Machine Config Daemon は Machine Config Operator の一部です。これはクラスター内のすべてのノードで実行されます。Machine Config Daemon は、各ノードの設定変更および更新を管理します。

4.9.1. Machine Config Daemon メトリクス

OpenShift Container Platform 4.3 以降、Machine Config Daemon はメトリクスのセットを提供します。これらのメトリクスには、Prometheus クラスターモニタリングスタックを使用してアクセスできます。

以下の表では、これらのメトリクスのセットについて説明しています。

注記

Name および Description 列の * のマークが付いたメトリクスは、パフォーマンスの問題を引き起こす可能性がある重大なエラーを示しています。このような問題により、更新およびアップグレードが続行されなくなる可能性があります。

注記

一部のエントリーには特定のログを取得するコマンドが含まれていますが、最も包括的なログのセットは、oc adm must-gather コマンドを使用して利用できます。

表4.3 MCO メトリクス

名前フォーマット説明備考

mcd_host_os_and_version

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

RHCOS や RHEL など、MCD が実行されている OS を示します。RHCOS の場合、バージョンは指定されます。

 

ssh_accessed

counter

ノードへの SSH 認証に成功した数を表示します。

ゼロ以外の値は、いずれかのユーザーがノードに手動で変更した可能性があることを示しています。このような変更により、ディスクの状態とマシン設定で定義される状態の差異により、調整不可能なエラーが発生する可能性があります。

mcd_drain*

{"drain_time", "err"}

ドレイン (解放) の失敗時に受信されるエラーをログに記録します。*

ドレイン (解放)が成功するには、複数回試行する必要がある可能性があり、ターミナルでは、ドレイン (解放) に失敗すると更新を続行できなくなります。ドレイン (解放) にかかる時間を示す drain_time メトリクスはトラブルシューティングに役立つ可能性があります。

詳細な調査を実行するには、以下を実行してログを表示します。

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

mcd_pivot_err*

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

ピボットで発生するログ。*

ピボットのエラーにより、OS のアップグレードを続行できなくなる可能性があります。

詳細な調査を行うには、以下のコマンドを実行してノードにアクセスし、そのすべてのログを表示します。

$ oc debug node/<node> — chroot /host journalctl -u pivot.service

または、以下のコマンドを実行して、machine-config-daemon コンテナーのログのみを確認します。

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

mcd_state

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

指定ノードの Machine Config Daemon の状態。状態のオプションとして、「Done」、「Working」、および「Degraded」があります。「Degraded」の場合は、理由も含まれます。

詳細な調査を実行するには、以下を実行してログを表示します。

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

mcd_kubelet_state*

[]string{"err"}

kubelet の正常性についての失敗をログに記録します。*

これは、失敗数が 0 で空になることが予想されます。失敗数が 2 を超えると、しきい値を超えたことを示すエラーが出されます。これは kubelet の正常性に関連した問題の可能性を示します。

詳細な調査を行うには、以下のコマンドを実行してノードにアクセスし、そのすべてのログを表示します。

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

mcd_reboot_err*

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

再起動の失敗と対応するエラーをログに記録します。*

これは空になることが予想されますが、これは再起動が成功したことを示します。

詳細な調査を実行するには、以下を実行してログを表示します。

$ 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