Activez la réparation automatique des nœuds et étudiez les problèmes de santé des nœuds - Amazon EKS

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.

Vous souhaitez contribuer à ce guide de l'utilisateur ? Faites défiler cette page vers le bas et sélectionnez Modifier cette page sur GitHub. Vos contributions contribueront à améliorer notre guide de l'utilisateur pour tous.

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.

Activez la réparation automatique des nœuds et étudiez les problèmes de santé des nœuds

L'état de santé du nœud fait référence à l'état opérationnel et à la capacité d'un nœud à exécuter efficacement les charges de travail. Un nœud sain maintient la connectivité attendue, dispose de ressources suffisantes et peut exécuter des Pods avec succès sans interruption. Pour plus d'informations sur l'obtention de détails sur vos nœuds, reportez-vous aux Afficher l'état de santé de vos nœuds sections etRécupérez les journaux d'un nœud géré à l'aide de kubectl et S3.

Pour aider à maintenir des nœuds sains, Amazon EKS propose l'agent de surveillance des nœuds et la réparation automatique des nœuds.

Agent de surveillance des nœuds

L'agent de surveillance des nœuds lit automatiquement les journaux des nœuds pour détecter certains problèmes de santé. Il analyse les journaux des nœuds pour détecter les défaillances et affiche diverses informations d'état sur les nœuds de travail. Un code dédié NodeCondition est appliqué sur les nœuds de travail pour chaque catégorie de problèmes détectés, tels que les problèmes de stockage et de réseau. Les descriptions des problèmes de santé détectés sont disponibles dans le tableau de bord d'observabilité. Pour de plus amples informations, veuillez consulter Problèmes de santé des nœuds.

L'agent de surveillance des nœuds est inclus en tant que fonctionnalité pour tous les clusters Amazon EKS Auto Mode. Pour les autres types de clusters, vous pouvez ajouter l'agent de surveillance en tant que EKS module complémentaire Amazon. Pour de plus amples informations, veuillez consulter Création d'un EKS module complémentaire Amazon.

Réparation automatique de nœuds

La réparation automatique des nœuds est une fonctionnalité supplémentaire qui surveille en permanence l'état des nœuds, réagit automatiquement aux problèmes détectés et remplace les nœuds lorsque cela est possible. Cela permet une disponibilité globale du cluster avec une intervention manuelle minimale. Si un contrôle de santé échoue, le nœud est automatiquement bouclé afin qu'aucun nouveau pod ne soit programmé sur le nœud.

À elle seule, la réparation automatique des nœuds peut réagir à l'Readyétat des objets du nœud kubelet et de tout objet supprimé manuellement. Lorsqu'elle est associée à l'agent de surveillance des nœuds, la réparation automatique des nœuds peut réagir à un plus grand nombre de conditions qui ne seraient pas détectées autrement. Ces conditions supplémentaires incluent KernelReadyNetworkingReady, etStorageReady.

Cette restauration automatique des nœuds résout automatiquement les problèmes intermittents liés aux nœuds, tels que les échecs de connexion au cluster, l'absence de réponse des kubelets et l'augmentation du nombre d'erreurs liées aux accélérateurs (appareils). La fiabilité améliorée permet de réduire les temps d'arrêt des applications et d'améliorer le fonctionnement des clusters. La réparation automatique du nœud ne peut pas gérer certains problèmes signalésDiskPressure, tels queMemoryPressure, etPIDPressure. Amazon EKS attend 10 minutes avant d'agir sur le AcceleratedHardwareReadyNodeConditions, et 30 minutes pour toutes les autres conditions.

Les groupes de nœuds gérés désactiveront également automatiquement les réparations de nœuds pour des raisons de sécurité dans deux scénarios. Toutes les opérations de réparation déjà en cours se poursuivront dans les deux situations.

  • Si un changement de zone pour votre cluster a été déclenché par le biais de l'Application Recovery Controller (ARC), toutes les opérations de réparation ultérieures sont interrompues.

  • Si votre groupe de nœuds compte plus de cinq nœuds et que plus de 20 % des nœuds de votre groupe de nœuds sont en mauvais état, les opérations de réparation sont interrompues.

Vous pouvez activer la réparation automatique des nœuds lors de la création ou de la modification d'un groupe de nœuds géré.

Problèmes de santé des nœuds

Les tableaux suivants décrivent les problèmes de santé des nœuds qui peuvent être détectés par l'agent de surveillance des nœuds. Il existe deux types de problèmes :

  • Condition : problème de terminal qui justifie une action corrective telle que le remplacement ou le redémarrage d'une instance. Lorsque la réparation automatique est activée, Amazon effectue EKS une action de réparation, soit en remplaçant le nœud, soit en redémarrant. Pour de plus amples informations, veuillez consulter Conditions du nœud.

  • Événement : problème temporaire ou configuration de nœud sous-optimale. Aucune action de réparation auto n'aura lieu. Pour de plus amples informations, veuillez consulter Événements liés aux nœuds.

Problèmes de santé des nœuds du noyau

Nom Sévérité Description

ForkFailedOutOfPID

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.

AppBlocked

Événement

La planification de la tâche a été bloquée pendant une longue période, généralement en raison d'un blocage en entrée ou en sortie.

AppCrash

Événement

Une application sur le nœud est tombée en panne.

ApproachingKernelPidMax

Événement

Le nombre de processus approche le nombre maximum de processus disponibles PIDs selon le paramètre kernel.pid_max actuel, après quoi aucun autre processus ne pourra être lancé.

ApproachingMaxOpenFiles

Événement

Le nombre de fichiers ouverts est proche du nombre maximum de fichiers ouverts possibles compte tenu des paramètres actuels du noyau, après quoi l'ouverture de nouveaux fichiers échouera.

ConntrackExceededKernel

Événement

Le suivi des connexions a dépassé le maximum pour le noyau et de nouvelles connexions n'ont pas pu être établies, ce qui peut entraîner une perte de paquets.

ExcessiveZombieProcesses

Événement

Les processus qui ne peuvent pas être entièrement récupérés s'accumulent en grand nombre, ce qui indique des problèmes d'application et peut conduire à l'atteinte des limites des processus du système.

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 dû à une utilisation excessive de la mémoire CPU ou à un retard dans le traitement des événements sur les nœuds.

LargeEnvironment

Événement

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 enableServiceLinks définis sur true, ce qui peut entraîner des problèmes de performances.

RapidCron

Événement

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.

SoftLockup

Événement

Ils CPU sont bloqués pendant un certain temps.

Problèmes de santé des nœuds du réseau

Nom Sévérité Description

InterfaceNotRunning

Condition

Cette interface ne semble pas fonctionner ou il y a des problèmes de réseau.

InterfaceNotUp

Condition

Cette interface ne semble pas fonctionner ou il y a des problèmes de réseau.

IPAMDNotReady

Condition

IPAMDne parvient pas à se connecter au API serveur.

IPAMDNotRunning

Condition

Le aws-k8s-agent processus n'a pas été détecté comme étant en cours d'exécution.

MissingLoopbackInterface

Condition

L'interface de bouclage est absente de cette instance, ce qui entraîne une défaillance des services en fonction de la connectivité locale.

BandwidthInExceeded

Événement

Des paquets ont été mis en file d'attente ou supprimés car la bande passante agrégée entrante dépassait le maximum pour l'instance.

BandwidthOutExceeded

Événement

Des paquets ont été mis en file d'attente ou supprimés car la bande passante agrégée sortante dépassait le maximum pour l'instance.

ConntrackExceeded

Événement

Le suivi des connexions a dépassé le maximum pour l'instance et aucune nouvelle connexion n'a pu être établie, ce qui peut entraîner une perte de paquets.

IPAMDNoIPs

Événement

IPAM-D n'a plus d'adresses IP.

IPAMDRepeatedlyRestart

Événement

Plusieurs redémarrages du IPAMD service ont eu lieu.

KubeProxyNotReady

Événement

Kube-proxy n'a pas réussi à surveiller ou à répertorier les ressources.

LinkLocalExceeded

Événement

Les paquets ont été abandonnés car le PPS trafic vers les services proxy locaux dépassait le maximum de l'interface réseau.

MissingDefaultRoutes

Événement

Les règles d'itinéraire par défaut sont manquantes.

MissingIPRules, M issingIPRoutes

Événement

Des règles de routage sont absentes de la table IPs de routage pour le pod suivant.

NetworkSysctl

Événement

Les paramètres réseau sysctl de ce nœud sont potentiellement incorrects.

PortConflict

Événement

Si un Pod l'utilisehostPort, il peut écrire des règles iptables qui remplacent les ports déjà connectés de l'hôte, empêchant potentiellement l'accès API du serveur à. kubelet

PPSExceeded

Événement

Des paquets ont été mis en file d'attente ou supprimés car le mode bidirectionnel PPS a dépassé le maximum pour l'instance.

UnexpectedRejectRule

Événement

Une DROP règle inattendue REJECT` a été détectée dans les iptables, bloquant potentiellement le trafic attendu.

Problèmes de santé des nœuds neuronaux

Nom Sévérité Description

N euronDMAError

Condition

Un DMA moteur a rencontré une erreur irrécupérable.

euronHBMUncorrectableErreur N

Condition

An HBM a rencontré une erreur irréparable et a produit des résultats incorrects.

euronNCUncorrectableErreur N

Condition

Une erreur de mémoire non corrigible de Neuron Core a été détectée.

euronSRAMUncorrectableErreur N

Condition

Une puce intégrée SRAM a rencontré une erreur de parité et a produit des résultats incorrects.

NVIDIAproblèmes de santé des nœuds

Si la réparation automatique est activée, les actions de réparation répertoriées démarrent 10 minutes après la détection du problème. Pour plus d'informations sur XID les erreurs, consultez la section Erreurs Xid dans la documentation de NVIDIA GPU déploiement et de gestion. Pour plus d'informations sur les XID messages individuels, voir Comprendre les messages Xid dans la documentation de NVIDIA GPU déploiement et de gestion.

Nom Sévérité Description Action de réparation

NvidiaDoubleBitError

Condition

Une erreur de double bit a été produite par le GPU pilote.

Remplacez

vidiaNVLinkErreur N

Condition

NVLinkdes erreurs ont été signalées par le GPU pilote.

Remplacez

Nvidia XID13Error

Condition

Il existe une exception liée au moteur graphique.

Redémarrer

Nvidia XID31Error

Condition

Des problèmes matériels sont suspectés.

Redémarrer

Nvidia XID48Error

Condition

ECCLes erreurs de double bit sont signalées par le pilote.

Redémarrer

Nvidia XID63Error

Condition

Il y a un retrait de page ou une modification du mappage des lignes.

Redémarrer

Nvidia XID64Error

Condition

La tentative de retrait d'une page ou de remappage d'un nœud échoue.

Redémarrer

Nvidia XID74Error

Condition

Il y a un problème de connexion entre un et un NVSwitch autre GPUNVLink. GPU Cela peut indiquer une défaillance matérielle du lien lui-même ou un problème lié à l'appareil situé à l'extrémité distante du lien.

Remplacez

Nvidia XID79Error

Condition

Le GPU conducteur a tenté d'y accéder GPU via sa connexion PCI Express et a constaté qu'il n'GPUétait pas accessible.

Remplacez

Nvidia XID94Error

Condition

Il y a des erreurs de ECC mémoire.

Redémarrer

Nvidia XID95Error

Condition

Il y a des erreurs de ECC mémoire.

Redémarrer

Nvidia XID119Error

Condition

Le GSP délai de réponse aux RPC demandes provenant d'autres bits du pilote a expiré.

Remplacez

Erreur Nvidia XID12 0

Condition

GSPIl a répondu à temps, mais avec une erreur.

Remplacez

Nvidia XID121Error

Condition

C2C est une interconnexion de puces. Il permet de partager de la mémoire entre CPUs des accélérateurs, etc.

Remplacez

Erreur Nvidia XID14 0

Condition

Le GPU pilote a peut-être observé des erreurs irréparables dans GPU la mémoire, de manière à interrompre la capacité du GPU pilote à marquer les pages pour le déconnexion dynamique des pages ou le remappage des lignes.

Remplacez

NvidiaPageRetirement

Événement

Le GPU chauffeur a marqué une page mémoire pour prendre sa retraite. Cela peut se produire s'il y a une seule erreur sur deux bits ou si deux erreurs sur un seul bit sont rencontrées à la même adresse.

Aucun

Avertissement Nvidia XID [Code]

Événement

Toute occurrence XIDs autre que celles définies dans cette liste entraîne cet événement.

Aucun

Problèmes de santé du nœud d'exécution

Nom Sévérité Description

PodStuckTerminating

Condition

Un pod est ou a été bloqué pendant trop longtemps, ce qui peut être dû à des CRI erreurs empêchant la progression de l'état du pod.

%sRepeatedRestart

Événement

Redémarre n'importe quel service systemd sur le nœud (formaté à l'aide du nom de l'unité indiqué par le titre).

ContainerRuntimeFailed

Événement

Le moteur d'exécution du conteneur n'a pas réussi à créer de conteneur, probablement en raison de problèmes signalés s'ils se produisaient à plusieurs reprises.

KubeletFailed

Événement

Le kubelet est entré dans un état d'échec.

LivenessProbeFailures

Événement

Une défaillance de la sonde de réactivité 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 en cas de survenue répétée.

ReadinessProbeFailures

Événement

Une défaillance de la sonde de disponibilité a été détectée, ce qui peut indiquer des problèmes liés au code de l'application ou des valeurs de délai d'expiration insuffisantes en cas de répétition.

ServiceFailedToStart

Événement

Une unité systemd n'a pas pu démarrer.

Problèmes de santé des nœuds de stockage

Nom Sévérité Description

XFSSmallAverageClusterSize

Condition

La taille XFS moyenne du cluster est petite, ce qui indique une fragmentation excessive de l'espace libre susceptible d'empêcher la création de fichiers malgré les inodes ou l'espace libre disponibles.

EtcHostsMountFailed

Événement

Le montage du kubelet généré /etc/hosts a échoué en raison du remontage des données utilisateur pendant le fonctionnement du kubelet-container/var/lib/kubelet/pods.

IODelays

Événement

Retard d'entrée ou de sortie détecté dans un processus, indiquant potentiellement un approvisionnement en entrées-sorties insuffisant s'il est excessif.

KubeletDiskUsageSlow

Événement

Kubelet signale une utilisation lente du disque lors de la tentative d'accès au système de fichiers, ce qui peut indiquer une insuffisance des entrées-sorties du disque ou des problèmes de système de fichiers.

📝 Modifiez cette page sur GitHub