7.2.2. ノードにおける kubelet ステータスのクエリー
クラスターノードの健全性ステータス、リソース消費統計、およびノードログを確認できます。さらに、個別のノードで kubelet ステータスをクエリーできます。
前提条件
-
cluster-adminロールを持つユーザーとしてクラスターにアクセスできる。 - API サービスが機能している。
-
OpenShift CLI (
oc) がインストールされている。
手順
kubelet は各ノードの systemd サービスを使用して管理されます。デバッグ Pod 内で
kubeletsystemd サービスをクエリーし、kubelet のステータスを確認します。ノードのデバッグ Pod を起動します。
$ oc debug node/my-node注記コントロールプレーンノードで
oc debugを実行している場合は、/etc/kubernetes/static-pod-resources/kube-apiserver-certs/secrets/node-kubeconfigsディレクトリーに管理用kubeconfigファイルがあります。/hostをデバッグシェル内の root ディレクトリーとして設定します。デバッグ Pod は、Pod 内の/hostにホストの root ファイルシステムをマウントします。root ディレクトリーを/hostに変更すると、ホストの実行パスに含まれるバイナリーを実行できます。# chroot /host注記Red Hat Enterprise Linux CoreOS (RHCOS) を実行する OpenShift Container Platform 4.20 クラスターノードは、イミュータブルです。クラスターの変更を適用するには、Operator を使用します。SSH を使用したクラスターノードへのアクセスは推奨されません。ただし、OpenShift Container Platform API が利用できない場合や、
kubeletがターゲットノードで適切に機能しない場合、oc操作がその影響を受けます。この場合は、代わりにssh core@<node>.<cluster_name>.<base_domain>を使用してノードにアクセスできます。kubeletsystemd サービスがノードでアクティブかどうかを確認します。# systemctl is-active kubeletより詳細な
kubelet.serviceステータスの要約を出力します。# systemctl status kubelet