Aidez à améliorer cette page
Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Pour contribuer à ce guide de l'utilisateur, cliquez sur le GitHub lien Modifier cette page sur qui se trouve dans le volet droit de chaque page.
Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Détectez les problèmes de santé des nœuds avec l'agent de surveillance des nœuds EKS
Cette rubrique détaille les problèmes de santé des nœuds détectés par l'agent de surveillance des nœuds EKS, la manière dont ces problèmes apparaissent sous forme de conditions ou d'événements sur les nœuds, et comment configurer l'agent de surveillance des nœuds.
L'agent de surveillance des nœuds EKS peut être utilisé avec ou sans réparation automatique des nœuds EKS. Pour plus d'informations sur la réparation automatique des nœuds EKS, consultezRéparer automatiquement les nœuds dans les clusters EKS.
Le code source de l'agent de surveillance des nœuds EKS est publié GitHub dans le eks-node-monitoring-agent référentiel aws/
Problèmes d’état du nœud
Les tableaux suivants décrivent les problèmes d’état des nœuds que l’agent de surveillance des nœuds peut détecter. Il existe deux types de problèmes :
-
Condition : problème terminal qui nécessite une action corrective, telle que le remplacement d’une instance ou un redémarrage. Lorsque la réparation automatique est activée, Amazon EKS effectue une action de réparation, soit en remplaçant le nœud, soit en le redémarrant. Pour de plus amples informations, veuillez consulter Conditions des nœuds.
-
Événement : problème temporaire ou configuration sous-optimale du nœud. Aucune action de réparation automatique n’est effectuée. Pour de plus amples informations, veuillez consulter Événements des nœuds.
AcceleratedHardware problèmes de santé des nœuds
La condition de surveillance est AcceleratedHardwareReady pour les problèmes du tableau suivant qui ont une sévérité « Condition ». Les événements et conditions décrits dans le tableau ci-dessous concernent les problèmes de santé des nœuds liés à NVIDIA et Neuron.
| Nom | Sévérité | Description | Action de réparation |
|---|---|---|---|
|
DCGMDiagnosticDéfaillance |
Condition |
Un cas de test de la suite de tests de diagnostic actif DCGM a échoué. |
Aucune |
|
DCGMError |
Condition |
La connexion au processus hôte DCGM a été perdue ou n'a pas pu être établie. |
Aucune |
|
DCGMFieldErreur [Code] |
Événement |
Le DCGM a détecté une dégradation du GPU grâce à un identifiant de champ. |
Aucune |
|
DCGMHealthCode [Code] |
Événement |
Un bilan de santé du DCGM a échoué de manière non fatale. |
Aucune |
|
DCGMHealthCode [Code] |
Condition |
Un bilan de santé du DCGM a échoué de manière fatale. |
Aucune |
|
Neurone DMAError |
Condition |
Un moteur DMA a rencontré une erreur irrécupérable. |
Remplacez |
|
Erreur neuronale HBMUncorrectable |
Condition |
Une mémoire HBM a rencontré une erreur incorrigible et a produit des résultats incorrects. |
Remplacez |
|
Erreur neuronale NCUncorrectable |
Condition |
Une erreur mémoire incorrigible du cœur Neuron a été détectée. |
Remplacez |
|
Erreur neuronale SRAMUncorrectable |
Condition |
Une mémoire SRAM sur puce a rencontré une erreur de parité et a produit des résultats incorrects. |
Remplacez |
|
NvidiaDeviceCountMismatch |
Événement |
Le nombre de périphériques GPUs visibles via NVML ne correspond pas au nombre de périphériques NVIDIA présents sur le système de fichiers. |
Aucune |
|
NvidiaDoubleBitError |
Condition |
Le pilote GPU a généré une erreur double bit. |
Remplacez |
|
Nvidia NCCLError |
Événement |
Une erreur de segmentation s'est produite dans la bibliothèque NVIDIA Collective Communications ( |
Aucune |
|
NVLinkErreur Nvidia |
Condition |
NVLink des erreurs ont été signalées par le pilote du GPU. |
Remplacez |
|
PCIeErreur Nvidia |
Événement |
PCIe des rediffusions ont été déclenchées pour remédier à des erreurs de transmission. |
Aucune |
|
NvidiaPageRetirement |
Event |
Le pilote GPU a marqué une page mémoire pour mise hors service. Cela peut se produire si une seule erreur double bit ou deux erreurs simple bit sont détectées à la même adresse. |
Aucune |
|
NvidiaPowerError |
Event |
La consommation d'énergie GPUs a dépassé les seuils autorisés. |
Aucune |
|
NvidiaThermalError |
Event |
L'état thermique GPUs a dépassé les seuils autorisés. |
Aucune |
|
Erreur NvidiaXid [Code] |
Condition |
Une erreur critique du processeur graphique s'est produite. |
Remplacer ou redémarrer |
|
NvidiaXID[Code]Warning |
Événement |
Une erreur GPU non critique s'est produite. |
Aucune |
Codes d'erreur NVIDIA XID
L'agent de surveillance des nœuds détecte les erreurs NVIDIA XID dans les journaux du noyau du GPU. Les erreurs XID se répartissent en deux catégories :
-
Codes XID connus : erreurs critiques qui définissent la condition d'un nœud (
AcceleratedHardwareReady=False) et déclenchent une réparation automatique lorsqu'ils sont activés. La raison pour laquelle le format du code estNvidiaXID[Code]Error. Les codes XID bien connus détectés par l'agent de surveillance des nœuds EKS ne représentent peut-être pas la liste complète des codes XID NVIDIA nécessitant des actions de réparation. -
Codes XID inconnus : enregistrés uniquement en tant qu'événements Kubernetes. Ils ne déclenchent pas la réparation auto. La raison pour laquelle le format du code est
NvidiaXID[Code]Warning. Pour rechercher des erreurs XID inconnues, consultez les journaux de votre noyau avecdmesg | grep -i nvrm.
Pour plus d’informations sur les erreurs XID, consultez Erreurs XID
Le tableau suivant répertorie les codes XID connus, leur signification et l'action de réparation des nœuds par défaut si elle est activée.
| Code XID | Description | Action de réparation |
|---|---|---|
|
13 |
Exception relative au moteur graphique : une erreur du moteur graphique du processeur graphique s'est produite, généralement en raison de problèmes logiciels ou de bogues du pilote. |
Redémarrer |
|
31 |
Erreur de page de mémoire du processeur graphique : une application a tenté d'accéder à la mémoire du processeur graphique qui n'est ni mappée ni accessible. |
Redémarrer |
|
48 |
Erreur ECC double bit — Une erreur double bit non corrigible s'est produite dans la mémoire du GPU, indiquant une dégradation matérielle potentielle. |
Redémarrer |
|
63 |
Événement de remappage de la mémoire du GPU : le pilote du GPU a remappé une partie de la mémoire du GPU en raison d'erreurs détectées. Cela est souvent récupérable. |
Redémarrer |
|
64 |
Échec du remappage de la mémoire du processeur graphique : le processeur graphique n'a pas pu remapper la mémoire défectueuse, ce qui indique des problèmes matériels. |
Redémarrer |
|
74 |
NVLink Erreur — Une erreur s'est produite lors de l' NVLink interconnexion haut débit entre GPUs. |
Remplacez |
|
79 |
Le GPU est tombé du bus — Le GPU n'est plus accessible via PCIe, ce qui indique généralement une panne matérielle ou un problème d'alimentation. |
Remplacez |
|
94 |
Erreur de mémoire contenue : une erreur de mémoire s'est produite mais elle est restée confinée et n'a pas affecté les autres applications. |
Redémarrer |
|
95 |
Erreur de mémoire non confinée : une erreur de mémoire s'est produite et peut avoir affecté d'autres applications ou la mémoire du système. |
Redémarrer |
|
119 |
Délai d'expiration du GSP RPC : le délai de communication avec le processeur du système GPU a expiré, probablement en raison de problèmes liés au microprogramme. |
Remplacez |
|
120 |
Erreur GSP — Une erreur s'est produite dans le processeur du système GPU. |
Remplacez |
|
121 |
Erreur C2C — Une erreur s'est produite sur l' chip-to-chipinterconnexion (utilisée en GPUs multipuce). |
Remplacez |
|
140 |
Erreur ECC non récupérée — Une erreur ECC a échappé au confinement et a peut-être endommagé les données. |
Remplacez |
Pour afficher l'état actuel du nœud lié à l'état du GPU, exécutez la commande suivante.
kubectl get nodes -o custom-columns='NAME:.metadata.name,ACCELERATOR_READY:.status.conditions[?(@.type=="AcceleratedHardwareReady")].status,REASON:.status.conditions[?(@.type=="AcceleratedHardwareReady")].reason'
Pour afficher les événements liés au XID sur votre cluster, exécutez l'une des commandes suivantes.
kubectl get events | grep -i "NvidiaXID"
ContainerRuntime problèmes de santé des nœuds
La condition de surveillance est ContainerRuntimeReady pour les problèmes du tableau suivant qui ont une sévérité « Condition ».
| Nom | Sévérité | Description | Action de réparation |
|---|---|---|---|
|
ContainerRuntimeFailed |
Événement |
L’exécution du conteneur n’a pas réussi à créer un conteneur, ce qui est probablement lié à des problèmes signalés s’ils se produisent de manière répétée. |
Aucune |
|
DeprecatedContainerdConfiguration |
Event |
Une image de conteneur utilisant le manifeste d'image obsolète version 2, schéma 1, a récemment été transférée sur le nœud via. |
Aucune |
|
KubeletFailed |
Event |
Le kubelet est passé à l’état d’échec. |
Aucune |
|
LivenessProbeFailures |
Event |
Une défaillance de la sonde de vivacité a été détectée, ce qui peut indiquer des problèmes de code d’application ou des valeurs de délai d’expiration insuffisantes si cela se produit de manière répétée. |
Aucune |
|
PodStuckTerminating |
Condition |
Un pod est ou était bloqué pendant une durée excessive, ce qui peut être dû à des erreurs CRI empêchant la progression de l’état du pod. |
Remplacez |
|
ReadinessProbeFailures |
Événement |
Une défaillance de la sonde de disponibilité a été détectée, ce qui peut indiquer des problèmes de code d’application ou des valeurs de délai d’expiration insuffisantes si cela se produit de manière répétée. |
Aucune |
|
[Nom] RepeatedRestart |
Événement |
Une unité systemd redémarre fréquemment. |
Aucune |
|
ServiceFailedToStart |
Event |
Une unité systemd n’a pas pu démarrer. |
Aucune |
Problèmes d’état du nœud du noyau
La condition de surveillance est KernelReady pour les problèmes du tableau suivant qui ont une sévérité « Condition ».
| Nom | Sévérité | Description | Action de réparation |
|---|---|---|---|
|
AppBlocked |
Événement |
La tâche a été bloquée pendant une longue période à partir de la planification, généralement en raison d’un blocage au niveau de l’entrée ou de la sortie. |
Aucune |
|
AppCrash |
Event |
Une application sur le nœud a planté. |
Aucune |
|
ApproachingKernelPidMax |
Event |
Le nombre de processus approche le nombre maximum de processus disponibles PIDs selon le |
Aucune |
|
ApproachingMaxOpenFiles |
Event |
Le nombre de fichiers ouverts approche le nombre maximal de fichiers ouverts possibles selon les paramètres actuels du noyau, après quoi l’ouverture de nouveaux fichiers échouera. |
Aucune |
|
ConntrackExceededKernel |
Event |
Le suivi des connexions a dépassé le maximum pour le noyau et le système n’a pas pu établir de nouvelles connexions, ce qui peut entraîner une perte de paquets. |
Aucune |
|
ExcessiveZombieProcesses |
Event |
Les processus que le système ne peut pas entièrement récupérer s’accumulent en grand nombre, ce qui indique des problèmes d’application et peut conduire à atteindre les limites des processus du système. |
Aucune |
|
ForkFailedOutOfPIDs |
Condition |
Un appel fork ou exec a échoué en raison d'un manque de processus IDs ou de mémoire du système, ce qui peut être dû à des processus zombies ou à un épuisement physique de la mémoire. |
Remplacez |
|
KernelBug |
Événement |
Un bogue du noyau a été détecté et signalé par le noyau Linux lui-même, bien que cela puisse parfois être causé par des nœuds avec une utilisation élevée du processeur ou de la mémoire, entraînant un retard dans le traitement des événements. |
Aucune |
|
LargeEnvironment |
Event |
Le nombre de variables d'environnement associées à ce processus est supérieur aux prévisions, ce qui peut être dû au fait que de nombreux services sont |
Aucune |
|
RapidCron |
Event |
Une tâche cron s’exécute plus rapidement que toutes les cinq minutes sur ce nœud, ce qui peut avoir un impact sur les performances si la tâche consomme des ressources importantes. |
Aucune |
|
SoftLockup |
Event |
Le CPU s’est bloqué pendant un certain temps. |
Aucune |
Problèmes d’état du nœud de réseau
La condition de surveillance est NetworkingReady pour les problèmes du tableau suivant qui ont une sévérité « Condition ».
| Nom | Sévérité | Description | Action de réparation |
|---|---|---|---|
|
BandwidthInExceeded |
Événement |
La file d’attente ou la suppression de paquets s’explique par le dépassement du maximum de bande passante agrégée entrante pour l’instance. |
Aucune |
|
BandwidthOutExceeded |
Event |
La file d’attente ou la suppression de paquets s’explique par le dépassement du maximum de bande passante agrégée sortante pour l’instance. |
Aucune |
|
ConntrackExceeded |
Event |
Le suivi des connexions a dépassé le maximum pour l’instance et le système n’a pas pu établir de nouvelles connexions, ce qui peut entraîner une perte de paquets. |
Aucune |
|
EFAErrorMétrique |
Événement |
Les indicateurs du pilote EFA indiquent qu'il existe une interface présentant une dégradation des performances. |
Aucune |
|
IPAMDInconsistent État |
Événement |
L'état du point de contrôle IPAMD sur le disque ne reflète pas l'environnement d' IPs exécution du conteneur. |
Aucune |
|
IPAMDNoIPs |
Event |
Il n'y a plus d'adresses IP sur l'IPAMD. |
Aucune |
|
IPAMDNotPrêt |
Condition |
IPAMD ne parvient pas à se connecter au serveur API. |
Remplacez |
|
IPAMDNotCourir |
Condition |
Le processus Amazon VPC CNI n'a pas été détecté comme étant en cours d'exécution. |
Remplacez |
|
IPAMDRepeatedlyRedémarrer |
Événement |
Le service IPAMD s’est redémarré plusieurs fois. |
Aucune |
|
InterfaceNotRunning |
Condition |
Cette interface semble ne pas fonctionner ou il y a des problèmes de réseau. |
Remplacez |
|
InterfaceNotUp |
Condition |
Cette interface semble ne pas être active ou il y a des problèmes de réseau. |
Remplacez |
|
KubeProxyNotReady |
Événement |
Kube-proxy n’a pas réussi à surveiller ou à répertorier les ressources. |
Aucune |
|
LinkLocalExceeded |
Event |
Le système a supprimé des paquets car le PPS du trafic vers les services mandataires locaux a dépassé le maximum de l’interface réseau. |
Aucune |
|
MACAddressPolicyMisconfigured |
Event |
La valeur de la configuration du lien systemd-networkd est incorrecte. |
Aucune |
|
MissingDefaultRoutes |
Event |
Il manque des règles de routage par défaut. |
Aucune |
|
Manquant IPRoutes |
Événement |
Il manque des itinéraires pour Pod IPs. |
Aucune |
|
Manquant IPRules |
Événement |
Il manque des règles pour Pod IPs. |
Aucune |
|
MissingLoopbackInterface |
Condition |
L’interface de bouclage est manquante dans cette instance, ce qui entraîne l’échec des services dépendant de la connectivité locale. |
Remplacez |
|
NetworkSysctl |
Événement |
Les |
Aucune |
|
PPSExceeded |
Event |
Des paquets ont été mis en file d’attente ou supprimés car le PPS bidirectionnel a dépassé le maximum pour l’instance. |
Aucune |
|
PortConflict |
Event |
Si un Pod utilise HostPort, il peut écrire des |
Aucune |
|
UnexpectedRejectRule |
Event |
Une |
Aucune |
Problèmes d’état du nœud de stockage
La condition de surveillance est StorageReady pour les problèmes du tableau suivant qui ont une sévérité « Condition ».
| Nom | Sévérité | Description | Action de réparation |
|---|---|---|---|
|
EBSInstanceIOPSExceeded |
Événement |
Le nombre maximal d'IOPS pour l'instance a été dépassé. |
Aucune |
|
EBSInstanceThroughputExceeded |
Event |
Le débit maximal de l'instance a été dépassé. |
Aucune |
|
EBSVolumeIOPSExceeded |
Event |
Le nombre maximal d'IOPS pour un volume EBS donné a été dépassé. |
Aucune |
|
EBSVolumeThroughputExceeded |
Event |
Le débit maximal pour un volume Amazon EBS spécifique a été dépassé. |
Aucune |
|
EtcHostsMountFailed |
Event |
Le montage du kubelet généré |
Aucune |
|
IODelays |
Event |
Un retard d’entrée ou de sortie a été détecté dans un processus, ce qui peut indiquer un provisionnement d’entrée-sortie insuffisant s’il est excessif. |
Aucune |
|
KubeletDiskUsageSlow |
Event |
Le signale |
Aucune |
|
XFSSmallAverageClusterSize |
Event |
La taille moyenne du cluster XFS est faible, ce qui indique une fragmentation excessive de l'espace libre. Cela peut empêcher la création de fichiers malgré les inodes disponibles ou l'espace libre. |
Aucune |
Configuration de l'agent de surveillance des nœuds
L'agent de surveillance des nœuds EKS est déployé en tant que DaemonSet. Lorsque vous le déployez en tant que module complémentaire EKS, vous pouvez personnaliser l'installation avec les valeurs de configuration suivantes. Pour les configurations par défaut, reportez-vous au diagramme Helm
| Option de configuration | Description |
|---|---|
|
|
Demande de ressources CPU pour l'agent de surveillance. |
|
|
Demande de ressource mémoire pour l'agent de surveillance. |
|
|
Limite de ressources du processeur pour l'agent de surveillance. |
|
|
Limite de ressources de mémoire pour l'agent de surveillance. |
|
|
Tolérances pour la planification de l'agent de surveillance sur les nœuds contaminés. |
|
|
Arguments de ligne de commande supplémentaires à transmettre à l'agent de surveillance. |
Note
Vous pouvez configurer hostname-override et verbosity comme monitoringAgent.additionalArgs pour les modules complémentaires EKS ou l'installation de Helm. Vous ne pouvez actuellement pas personnaliser l'agent de surveillance des nœuds probe-address (8002) ou metrics-address (8003) via des arguments supplémentaires avec les modules complémentaires EKS ou l'installation de Helm.
L'agent de surveillance des nœuds inclut un composant serveur NVIDIA DCGM (Data Center GPU Manager) (nv-hostengine) pour surveiller NVIDIA GPUs. Ce composant s'exécute uniquement sur les nœuds qui sont des types d'instances de GPU NVIDIA, comme indiqué nodeAffinity dans le graphique Helm
Lorsque vous déployez l'agent de surveillance des nœuds EKS en tant que module complémentaire EKS, vous pouvez personnaliser l'installation NVIDIA DCGM avec les valeurs de configuration suivantes.
| Option de configuration | Description |
|---|---|
|
|
Demande de ressource CPU pour l'agent DCGM. |
|
|
Demande de ressource mémoire pour l'agent DCGM. |
|
|
Limite de ressources du processeur pour l'agent DCGM. |
|
|
Limite de ressources de mémoire pour l'agent DCGM. |
|
|
Tolérances pour la planification de l'agent DCGM sur des nœuds contaminés. |
Vous pouvez utiliser les commandes AWS CLI suivantes pour obtenir des informations utiles sur les versions et le schéma du module complémentaire EKS de l'agent de surveillance des nœuds EKS.
Téléchargez la dernière version du module complémentaire d'agent pour votre version de Kubernetes. 1.35Remplacez-le par votre version de Kubernetes.
aws eks describe-addon-versions \ --addon-name eks-node-monitoring-agent \ --kubernetes-version 1.35 \ --query='addons[].addonVersions[].addonVersion'
Obtenez le schéma des modules complémentaires d'agent pris en charge dans les modules complémentaires EKS. v1.5.1-eksbuild.1Remplacez-le par la version de votre agent.
aws eks describe-addon-configuration \ --addon-name eks-node-monitoring-agent \ --addon-version v1.5.1-eksbuild.1