Afficher l’état de santé de vos nœuds - Amazon EKS

Aidez à améliorer cette page

Pour contribuer à ce guide de l’utilisateur, cliquez sur le lien Modifier cette page sur GitHub qui se trouve dans le volet droit de chaque page.

Afficher l’état de santé de vos nœuds

Cette rubrique explique les outils et les méthodes disponibles pour surveiller l’état de santé des nœuds dans les clusters Amazon EKS. Les informations couvrent les conditions des nœuds, les événements et les cas de détection qui vous aident à identifier et à diagnostiquer les problèmes au niveau des nœuds. Utilisez les commandes et les modèles décrits ici pour inspecter les ressources de santé des nœuds, interpréter les conditions d’état et analyser les événements des nœuds à des fins de dépannage opérationnel.

Vous pouvez obtenir certaines informations sur l’état de santé des nœuds à l’aide des commandes Kubernetes pour tous les nœuds. Si vous utilisez l’agent de surveillance des nœuds via le mode automatique Amazon EKS ou le module complémentaire géré par Amazon EKS, vous obtiendrez une plus grande variété de signaux de nœuds pour vous aider à résoudre les problèmes. Les descriptions des problèmes de santé détectés par l’agent de surveillance des nœuds sont également disponibles dans le tableau de bord d’observabilité. Pour de plus amples informations, consultez Activer la réparation automatique des nœuds et étudier les problèmes d’intégrité de ces derniers.

Conditions des nœuds

Les conditions des nœuds représentent des problèmes terminaux nécessitant des mesures correctives telles que le remplacement ou le redémarrage d’une instance.

Pour obtenir les conditions de tous les nœuds :

kubectl get nodes -o 'custom-columns=NAME:.metadata.name,CONDITIONS:.status.conditions[*].type,STATUS:.status.conditions[*].status'

Pour obtenir les conditions détaillées d’un nœud spécifique :

kubectl describe node node-name

Exemple de sortie de condition d’un nœud en bon état :

- lastHeartbeatTime: "2024-11-21T19:07:40Z" lastTransitionTime: "2024-11-08T03:57:40Z" message: Monitoring for the Networking system is active reason: NetworkingIsReady status: "True" type: NetworkingReady

Exemple de condition d’un nœud en mauvais état présentant un problème de réseau :

- lastHeartbeatTime: "2024-11-21T19:12:29Z" lastTransitionTime: "2024-11-08T17:04:17Z" message: IPAM-D has failed to connect to API Server which could be an issue with IPTable rules or any other network configuration. reason: IPAMDNotReady status: "False" type: NetworkingReady

Événements des nœuds

Les événements des nœuds indiquent des problèmes temporaires ou des configurations sous-optimales.

Pour obtenir tous les événements signalés par l’agent de surveillance des nœuds :

Lorsque l’agent de surveillance des nœuds est disponible, vous pouvez exécuter la commande suivante.

kubectl get events --field-selector=reportingComponent=eks-node-monitoring-agent

Exemple de sortie :

LAST SEEN TYPE REASON OBJECT MESSAGE 4s Warning SoftLockup node/ip-192-168-71-251.us-west-2.compute.internal CPU stuck for 23s

Pour obtenir les événements de tous les nœuds

kubectl get events --field-selector involvedObject.kind=Node

Pour obtenir les événements d’un nœud spécifique

kubectl get events --field-selector involvedObject.kind=Node,involvedObject.name=node-name

Pour surveiller les événements en temps réel

kubectl get events -w --field-selector involvedObject.kind=Node

Exemple de sortie d’événement :

LAST SEEN TYPE REASON OBJECT MESSAGE 2m Warning MemoryPressure Node/node-1 Node experiencing memory pressure 5m Normal NodeReady Node/node-1 Node became ready

Commandes de dépannage courantes

# Get comprehensive node status kubectl get node node-name -o yaml # Watch node status changes kubectl get nodes -w # Get node metrics kubectl top node