7.2. Vérification de l'état des nœuds
7.2.1. Examen de l'état des nœuds, de l'utilisation des ressources et de la configuration
Examinez l'état de santé des nœuds de la grappe, les statistiques de consommation des ressources et les journaux des nœuds. Vous pouvez également consulter le site kubelet
pour connaître l'état de chaque nœud.
Conditions préalables
-
Vous avez accès au cluster en tant qu'utilisateur ayant le rôle
cluster-admin
. -
Vous avez installé l'OpenShift CLI (
oc
).
Procédure
Liste le nom, l'état et le rôle de tous les nœuds de la grappe :
$ oc get nodes
Résumez l'utilisation de l'unité centrale et de la mémoire pour chaque nœud de la grappe :
$ oc adm top nodes
Résume l'utilisation de l'unité centrale et de la mémoire pour un nœud spécifique :
$ oc adm top node my-node
7.2.2. Interroger l'état du kubelet sur un nœud
Vous pouvez consulter l'état de santé des nœuds de la grappe, les statistiques de consommation des ressources et les journaux des nœuds. En outre, vous pouvez consulter l'état de kubelet
sur des nœuds individuels.
Conditions préalables
-
Vous avez accès au cluster en tant qu'utilisateur ayant le rôle
cluster-admin
. - Your API service is still functional.
-
Vous avez installé l'OpenShift CLI (
oc
).
Procédure
Le kubelet est géré à l'aide d'un service systemd sur chaque nœud. Examinez l'état du kubelet en interrogeant le service systemd de
kubelet
dans un pod de débogage.Démarrer un pod de débogage pour un nœud :
$ oc debug node/my-node
NoteSi vous exécutez
oc debug
sur un nœud du plan de contrôle, vous trouverez les fichiers administratifskubeconfig
dans le répertoire/etc/kubernetes/static-pod-resources/kube-apiserver-certs/secrets/node-kubeconfigs
.Définissez
/host
comme répertoire racine dans le shell de débogage. Le pod de débogage monte le système de fichiers racine de l'hôte dans/host
au sein du pod. En changeant le répertoire racine en/host
, vous pouvez exécuter les binaires contenus dans les chemins d'exécution de l'hôte :# chroot /host
NoteLes nœuds de cluster d'OpenShift Container Platform exécutant Red Hat Enterprise Linux CoreOS (RHCOS) sont immuables et s'appuient sur les opérateurs pour appliquer les changements de cluster. L'accès aux nœuds de cluster à l'aide de SSH n'est pas recommandé et les nœuds seront altérés en tant que accessed. Cependant, si l'API OpenShift Container Platform n'est pas disponible, ou si
kubelet
ne fonctionne pas correctement sur le nœud cible, les opérationsoc
seront impactées. Dans de telles situations, il est possible d'accéder aux nœuds en utilisantssh core@<node>.<cluster_name>.<base_domain>
à la place.Vérifiez si le service
kubelet
systemd est actif sur le nœud :# systemctl is-active kubelet
Affiche un résumé plus détaillé de l'état de
kubelet.service
:# systemctl status kubelet
7.2.3. Interroger les journaux des nœuds de cluster
Vous pouvez rassembler les journaux de l'unité journald
et d'autres journaux dans /var/log
sur des nœuds de cluster individuels.
Conditions préalables
-
Vous avez accès au cluster en tant qu'utilisateur ayant le rôle
cluster-admin
. - Your API service is still functional.
-
Vous avez installé l'OpenShift CLI (
oc
). - Vous avez un accès SSH à vos hôtes.
Procédure
Requête
kubelet
journald
journaux d'unité des nœuds de cluster OpenShift Container Platform. L'exemple suivant interroge uniquement les nœuds du plan de contrôle :$ oc adm node-logs --role=master -u kubelet 1
- 1
- Remplacer
kubelet
le cas échéant pour interroger d'autres journaux d'unité.
Collecte des journaux à partir de sous-répertoires spécifiques sous
/var/log/
sur les nœuds de la grappe.Récupérer la liste des journaux contenus dans un sous-répertoire
/var/log/
. L'exemple suivant répertorie les fichiers de/var/log/openshift-apiserver/
sur tous les nœuds du plan de contrôle :$ oc adm node-logs --role=master --path=openshift-apiserver
Inspecter un journal spécifique dans un sous-répertoire
/var/log/
. L'exemple suivant affiche le contenu de/var/log/openshift-apiserver/audit.log
pour tous les nœuds du plan de contrôle :$ oc adm node-logs --role=master --path=openshift-apiserver/audit.log
Si l'API n'est pas fonctionnelle, examinez les journaux sur chaque nœud en utilisant SSH à la place. L'exemple suivant est une queue
/var/log/openshift-apiserver/audit.log
:$ ssh core@<master-node>.<cluster_name>.<base_domain> sudo tail -f /var/log/openshift-apiserver/audit.log
NoteLes nœuds de cluster OpenShift Container Platform 4.12 exécutant Red Hat Enterprise Linux CoreOS (RHCOS) sont immuables et dépendent des opérateurs pour appliquer les changements de cluster. L'accès aux nœuds de cluster à l'aide de SSH n'est pas recommandé et les nœuds seront altérés comme accessed. Avant d'essayer de collecter des données de diagnostic via SSH, vérifiez si les données collectées en exécutant
oc adm must gather
et d'autres commandesoc
sont suffisantes. Cependant, si l'API OpenShift Container Platform n'est pas disponible, ou si le kubelet ne fonctionne pas correctement sur le nœud cible, les opérationsoc
seront impactées. Dans de telles situations, il est possible d'accéder aux nœuds en utilisantssh core@<node>.<cluster_name>.<base_domain>
.