Unterstützung für die Verbesserung dieser Seite beitragen
Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Um zu diesem Benutzerhandbuch beizutragen, wählen Sie den GitHub Link Diese Seite bearbeiten auf, der sich im rechten Bereich jeder Seite befindet.
Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Erkennen Sie Probleme mit dem Knotenüberwachungsagenten von EKS
In diesem Thema werden die vom EKS-Node-Monitoring-Agenten erkannten Knotenzustandsprobleme beschrieben, wie diese Probleme als Knotenbedingungen oder -ereignisse zum Vorschein kommen und wie der Node Monitoring Agent konfiguriert wird.
Der EKS-Knotenüberwachungsagent kann mit oder ohne automatische EKS-Knotenreparatur verwendet werden. Weitere Informationen zur automatischen EKS-Knotenreparatur finden Sie unterAutomatisches Reparieren von Knoten in EKS-Clustern.
Der Quellcode für den EKS-Node-Monitoring-Agenten ist am GitHub im eks-node-monitoring-agentaws/-Repository
Probleme mit dem Zustand des Knotens
In den folgenden Tabellen werden Knotenintegritätsprobleme beschrieben, die vom Knoten-Überwachungsagenten erkannt werden können. Es gibt zwei Arten von Problemen:
-
Zustand – Ein schwerwiegendes Problem, das eine Behebungsmaßnahme wie den Austausch einer Instance oder einen Neustart erfordert. Wenn die automatische Reparatur aktiviert ist, führt Amazon EKS eine Reparaturmaßnahme durch, entweder einen Knotenaustausch oder einen Neustart. Weitere Informationen finden Sie unter Knotenzustände.
-
Ereignis – Ein vorübergehendes Problem oder eine suboptimale Knotenkonfiguration. Es erfolgt keine automatische Reparatur. Weitere Informationen finden Sie unter Knotenereignisse.
AcceleratedHardware Probleme mit dem Zustand des Knotens
Der Überwachungszustand ist AcceleratedHardwareReady für Probleme in der folgenden Tabelle mit dem Schweregrad „Zustand“. Die Ereignisse und Bedingungen in der folgenden Tabelle beziehen sich auf Probleme mit dem Zustand von Knoten im Zusammenhang mit NVIDIA und Neuron.
| Name | Schweregrad | Description | Aktion reparieren |
|---|---|---|---|
|
DCGMDiagnosticFehlschlag |
Bedingung |
Ein Testfall aus der Test-Suite für die aktive DCGM-Diagnose ist fehlgeschlagen. |
Keine |
|
DCGMError |
Bedingung |
Die Verbindung zum DCGM-Hostprozess wurde unterbrochen oder konnte nicht hergestellt werden. |
Keine |
|
DCGMFieldFehler [Code] |
Veranstaltung |
DCGM hat anhand einer Feld-ID eine Verschlechterung der GPU festgestellt. |
Keine |
|
DCGMHealthCode [Kode] |
Veranstaltung |
Ein DCGM-Gesundheitscheck schlug ohne schwerwiegenden Fehler fehl. |
Keine |
|
DCGMHealthKode [Kodierung] |
Bedingung |
Ein DCGM-Gesundheitscheck ist auf fatale Weise fehlgeschlagen. |
Keine |
|
Neuron DMAError |
Bedingung |
Bei einer DMA-Engine ist ein nicht behebbarer Fehler aufgetreten. |
Ersetzen |
|
Neuronenfehler HBMUncorrectable |
Bedingung |
Bei einem HBM ist ein nicht korrigierbarer Fehler aufgetreten und es wurden falsche Ergebnisse ausgegeben. |
Ersetzen |
|
Neuronenfehler NCUncorrectable |
Bedingung |
Ein nicht korrigierbarer Neuron Core-Speicherfehler wurde erkannt. |
Ersetzen |
|
Neuronenfehler SRAMUncorrectable |
Bedingung |
Ein On-Chip-SRAM hat einen Paritätsfehler festgestellt und unkorrekte Ergebnisse erzeugt. |
Ersetzen |
|
NvidiaDeviceCountMismatch |
Veranstaltung |
Die Anzahl der durch NVML GPUs sichtbaren Geräte stimmt nicht mit der Anzahl der NVIDIA-Geräte im Dateisystem überein. |
Keine |
|
NvidiaDoubleBitError |
Bedingung |
Der GPU-Treiber hat einen doppelten Bit-Fehler erzeugt. |
Ersetzen |
|
Nvidia NCCLError |
Veranstaltung |
In der NVIDIA-Bibliothek für kollektive Kommunikation ( |
Keine |
|
Nvidia-Fehler NVLink |
Bedingung |
NVLink Fehler wurden vom GPU-Treiber gemeldet. |
Ersetzen |
|
PCIeNvidia-Fehler |
Veranstaltung |
PCIe Wiederholungen wurden ausgelöst, um Übertragungsfehler zu beheben. |
Keine |
|
NvidiaPageRetirement |
Veranstaltung |
Der GPU-Treiber hat eine Speicherseite zur Außerbetriebnahme markiert. Dies kann auftreten, wenn ein einzelner Doppel-Bit-Fehler oder zwei Einzel-Bit-Fehler an derselben Adresse auftreten. |
Keine |
|
NvidiaPowerError |
Veranstaltung |
Der Stromverbrauch von hat die zulässigen GPUs Grenzwerte überschritten. |
Keine |
|
NvidiaThermalError |
Veranstaltung |
Thermischer Status hat die GPUs zulässigen Grenzwerte überschritten. |
Keine |
|
NVIDIAxID [Code] -Fehler |
Bedingung |
Ein kritischer GPU-Fehler ist aufgetreten. |
Ersetzen oder neu starten |
|
NvidiaXID[Code]Warning |
Veranstaltung |
Ein unkritischer GPU-Fehler ist aufgetreten. |
Keine |
NVIDIA XID-Fehlercodes
Der Node Monitoring Agent erkennt NVIDIA XID-Fehler anhand von GPU-Kernelprotokollen. XID-Fehler lassen sich in zwei Kategorien einteilen:
-
Bekannte XID-Codes — Kritische Fehler, die eine Knotenbedingung (
AcceleratedHardwareReady=False) festlegen und bei Aktivierung eine auto Reparatur auslösen. Das Format des Ursachencodes lautetNvidiaXID[Code]Error. Die bekannten XID-Codes, die der EKS-Knotenüberwachungsagent erkennt, stellen möglicherweise nicht die vollständige Liste der NVIDIA-XID-Codes dar, für die Reparaturmaßnahmen erforderlich sind. -
Unbekannte XID-Codes — Nur als Kubernetes-Ereignisse protokolliert. Diese lösen keine Autoreparatur aus. Das Format des Ursachencodes ist
NvidiaXID[Code]Warning. Um unbekannte XID-Fehler zu untersuchen, überprüfen Sie Ihre Kernelprotokolle mitdmesg | grep -i nvrm.
Weitere Informationen zu XID-Fehlern finden Sie unter XID-Fehler
In der folgenden Tabelle sind die bekannten XID-Codes, ihre Bedeutung und die Standardaktion zur Knotenreparatur, falls diese aktiviert ist, aufgeführt.
| XID-Code | Description | Aktion reparieren |
|---|---|---|
|
13 |
Grafik-Engine-Ausnahme — Ein GPU-Grafik-Engine-Fehler ist aufgetreten, der in der Regel durch Software- oder Treiberfehler verursacht wird. |
Starten Sie neu |
|
31 |
Fehler bei der GPU-Speicherseite — Eine Anwendung hat versucht, auf GPU-Speicher zuzugreifen, der weder zugeordnet noch zugänglich ist. |
Starten Sie neu |
|
48 |
Double-Bit-ECC-Fehler — Im GPU-Speicher ist ein nicht behebbarer Doppelbitfehler aufgetreten, der auf eine mögliche Hardwareverschlechterung hindeutet. |
Starten Sie neu |
|
63 |
Ereignis zur Neuzuweisung des GPU-Speichers — Der GPU-Treiber hat aufgrund festgestellter Fehler einen Teil des GPU-Speichers neu zugeordnet. Dies ist oft wiederherstellbar. |
Starten Sie neu |
|
64 |
Fehler bei der Neuzuweisung des GPU-Speichers — Die GPU konnte defekten Speicher nicht neu zuordnen, was auf Hardwareprobleme hindeutet. |
Starten Sie neu |
|
74 |
NVLink Fehler — Bei der NVLink Hochgeschwindigkeitsverbindung zwischen GPUs ist ein Fehler aufgetreten. |
Ersetzen |
|
79 |
GPU ist vom Bus gefallen — Auf die GPU kann nicht mehr zugegriffen werden PCIe, was in der Regel auf einen Hardware- oder Stromausfall hindeutet. |
Ersetzen |
|
94 |
Fehler im eingeschlossenen Speicher — Es ist ein Speicherfehler aufgetreten, der jedoch eingedämmt wurde und sich nicht auf andere Anwendungen auswirkte. |
Starten Sie neu |
|
95 |
Fehler bei fehlendem Speicher — Es ist ein Speicherfehler aufgetreten, der sich möglicherweise auf andere Anwendungen oder den Systemspeicher ausgewirkt hat. |
Starten Sie neu |
|
119 |
GSP RPC Timeout — Bei der Kommunikation mit dem GPU-Systemprozessor wurde das Zeitlimit überschritten, möglicherweise aufgrund von Firmware-Problemen. |
Ersetzen |
|
120 |
GSP-Fehler — Im GPU-Systemprozessor ist ein Fehler aufgetreten. |
Ersetzen |
|
121 |
C2C-Fehler — Bei der chip-to-chip Verbindung (die bei Multi-Die verwendet wird) ist ein Fehler aufgetreten. GPUs |
Ersetzen |
|
140 |
Nicht wiederhergestellter ECC-Fehler — Ein ECC-Fehler ist der Beschränkung entgangen und hat möglicherweise Daten beschädigt. |
Ersetzen |
Führen Sie den folgenden Befehl aus, um die aktuellen Knotenbedingungen in Bezug auf den GPU-Zustand anzuzeigen.
kubectl get nodes -o custom-columns='NAME:.metadata.name,ACCELERATOR_READY:.status.conditions[?(@.type=="AcceleratedHardwareReady")].status,REASON:.status.conditions[?(@.type=="AcceleratedHardwareReady")].reason'
Führen Sie einen der folgenden Befehle aus, um XID-bezogene Ereignisse auf Ihrem Cluster anzuzeigen.
kubectl get events | grep -i "NvidiaXID"
ContainerRuntime Probleme mit dem Zustand des Knotens
Der Überwachungszustand ist ContainerRuntimeReady für Probleme in der folgenden Tabelle mit dem Schweregrad „Zustand“.
| Name | Schweregrad | Description | Aktion reparieren |
|---|---|---|---|
|
ContainerRuntimeFailed |
Veranstaltung |
Die Container-Laufzeit konnte keinen Container erstellen. Dies hängt wahrscheinlich mit einem der gemeldeten Probleme zusammen, wenn es wiederholt auftritt. |
Keine |
|
DeprecatedContainerdConfiguration |
Veranstaltung |
Ein Container-Image, das die veraltete Image-Manifest-Version 2, Schema 1 verwendet, wurde kürzlich auf den Knoten übertragen. |
Keine |
|
KubeletFailed |
Veranstaltung |
Der kubelet ist in einen fehlerhaften Zustand übergegangen. |
Keine |
|
LivenessProbeFailures |
Veranstaltung |
Es wurde ein Fehler bei der Aktivitätsprüfung erkannt, der bei wiederholtem Auftreten möglicherweise auf Probleme mit dem Anwendungscode oder unzureichende Timeout-Werte hinweist. |
Keine |
|
PodStuckTerminating |
Bedingung |
Ein Pod ist oder war über einen längeren Zeitraum hinweg blockiert. Dies kann auf CRI-Fehler zurückzuführen sein, die den Fortschritt des Pod-Status verhindern. |
Ersetzen |
|
ReadinessProbeFailures |
Veranstaltung |
Es wurde ein Fehler bei der Bereitschaftsprüfung erkannt, der bei wiederholtem Auftreten möglicherweise auf Probleme mit dem Anwendungscode oder unzureichende Timeout-Werte hinweist. |
Keine |
|
[Name] RepeatedRestart |
Veranstaltung |
Eine Systemd-Einheit wird häufig neu gestartet. |
Keine |
|
ServiceFailedToStart |
Veranstaltung |
Eine systemd-Einheit konnte nicht gestartet werden |
Keine |
Integritätsprobleme des Kernelknotens
Der Überwachungszustand ist KernelReady für Probleme in der folgenden Tabelle mit dem Schweregrad „Zustand“.
| Name | Schweregrad | Description | Aktion reparieren |
|---|---|---|---|
|
AppBlocked |
Veranstaltung |
Die Aufgabe wurde für einen längeren Zeitraum aus der Planung ausgeschlossen, was in der Regel darauf zurückzuführen ist, dass sie bei der Eingabe oder Ausgabe blockiert wurde. |
Keine |
|
AppCrash |
Veranstaltung |
Eine Anwendung auf dem Knoten ist abgestürzt. |
Keine |
|
ApproachingKernelPidMax |
Veranstaltung |
Die Anzahl der Prozesse nähert sich der maximalen Anzahl PIDs , die gemäß der aktuellen |
Keine |
|
ApproachingMaxOpenFiles |
Veranstaltung |
Die Anzahl der geöffneten Dateien nähert sich der maximalen Anzahl möglicher geöffneter Dateien gemäß den aktuellen Kernel-Einstellungen. Danach wird das Öffnen neuer Dateien fehlschlagen |
Keine |
|
ConntrackExceededKernel |
Veranstaltung |
Die Verbindungsverfolgung hat das Maximum für den Kernel überschritten, und es konnten keine neuen Verbindungen hergestellt werden, was zu Paketverlusten führen kann. |
Keine |
|
ExcessiveZombieProcesses |
Veranstaltung |
Es sammeln sich zahlreiche Prozesse, die nicht vollständig wiederhergestellt werden können. Dies weist auf Anwendungsprobleme hin und kann dazu führen, dass die Grenzen der Systemprozesse erreicht werden. |
Keine |
|
ForkFailedOutOfPIDs |
Bedingung |
Ein Fork- oder Exec-Aufruf ist fehlgeschlagen, weil das System keinen Prozess IDs - oder Speicherzugriff mehr hatte. Dies kann durch Zombie-Prozesse oder physische Speichererschöpfung verursacht werden. |
Ersetzen |
|
KernelBug |
Veranstaltung |
Ein Kernel-Fehler wurde vom Linux-Kernel selbst erkannt und gemeldet. Dieser kann jedoch manchmal durch Knoten mit hoher CPU- oder Speicherauslastung verursacht werden, was zu einer verzögerten Ereignisverarbeitung führt. |
Keine |
|
LargeEnvironment |
Veranstaltung |
Die Anzahl der Umgebungsvariablen für diesen Prozess ist größer als erwartet, was möglicherweise auf viele Dienste zurückzuführen ist, deren Wert auf true |
Keine |
|
RapidCron |
Veranstaltung |
Ein Cron-Auftrag wird auf diesem Knoten schneller als alle fünf Minuten ausgeführt. Dies kann die Leistung beeinträchtigen, wenn der Auftrag erhebliche Ressourcen verbraucht. |
Keine |
|
SoftLockup |
Veranstaltung |
Die CPU ist für eine bestimmte Zeit blockiert. |
Keine |
Probleme mit der Integrität von Netzwerkknoten
Der Überwachungszustand ist NetworkingReady für Probleme in der folgenden Tabelle mit dem Schweregrad „Zustand“.
| Name | Schweregrad | Description | Aktion reparieren |
|---|---|---|---|
|
BandwidthInExceeded |
Veranstaltung |
Pakete wurden in die Warteschlange gestellt oder verworfen, da die eingehende Gesamtbandbreite das Maximum für die Instance überschritten hat. |
Keine |
|
BandwidthOutExceeded |
Veranstaltung |
Pakete wurden in die Warteschlange gestellt oder verworfen, da die ausgehende Gesamtbandbreite das Maximum für die Instance überschritten hat. |
Keine |
|
ConntrackExceeded |
Veranstaltung |
Die Verbindungsverfolgung hat das Maximum für die Instance überschritten und es konnten keine neuen Verbindungen hergestellt werden, was zu Paketverlusten führen kann. |
Keine |
|
EFAErrorMetrik |
Veranstaltung |
Die EFA-Treiberkennzahlen zeigen, dass es eine Schnittstelle mit Leistungseinbußen gibt. |
Keine |
|
IPAMDInconsistentStatus |
Veranstaltung |
Der Status des IPAMD-Checkpoints auf der Festplatte spiegelt nicht die Laufzeit IPs in der Container-Laufzeit wider. |
Keine |
|
IPAMDNoIPs |
Veranstaltung |
IPAMD hat keine IP-Adressen mehr. |
Keine |
|
IPAMDNotBereit |
Bedingung |
IPAMD kann keine Verbindung zum API-Server herstellen. |
Ersetzen |
|
IPAMDNotLäuft |
Bedingung |
Es wurde festgestellt, dass der Amazon VPC CNI-Prozess nicht läuft. |
Ersetzen |
|
IPAMDRepeatedlyStarten Sie neu |
Veranstaltung |
Es sind mehrere Neustarts des IPAMD-Services aufgetreten. |
Keine |
|
InterfaceNotRunning |
Bedingung |
Diese Schnittstelle scheint nicht zu funktionieren oder es liegen Netzwerkprobleme vor. |
Ersetzen |
|
InterfaceNotUp |
Bedingung |
Diese Schnittstelle scheint derzeit nicht verfügbar zu sein oder es liegen Netzwerkprobleme vor. |
Ersetzen |
|
KubeProxyNotReady |
Veranstaltung |
Kube-proxy konnte die Ressourcen nicht überwachen oder auflisten. |
Keine |
|
LinkLocalExceeded |
Veranstaltung |
Pakete wurden verworfen, da die PPS des Datenverkehrs zu lokalen Proxy- Services das Maximum der Netzwerkschnittstelle überschritten hat. |
Keine |
|
MACAddressPolicyMisconfigured |
Veranstaltung |
Die Verbindungskonfiguration systemd-networkd hat den falschen Wert. |
Keine |
|
MissingDefaultRoutes |
Veranstaltung |
Es fehlen Standard- Weiterleitungsregeln. |
Keine |
|
Fehlt IPRoutes |
Veranstaltung |
Es fehlen Routen für Pod IPs. |
Keine |
|
Es fehlt IPRules |
Veranstaltung |
Es fehlen Regeln für Pod IPs. |
Keine |
|
MissingLoopbackInterface |
Bedingung |
Die Loopback-Schnittstelle fehlt in dieser Instance, was zu einem Ausfall von Services führt, die von der lokalen Konnektivität abhängig sind. |
Ersetzen |
|
NetworkSysctl |
Veranstaltung |
Die |
Keine |
|
PPSExceeded |
Veranstaltung |
Pakete wurden in die Warteschlange gestellt oder verworfen, da die bidirektionale PPS das Maximum für die Instance überschritten hat. |
Keine |
|
PortConflict |
Veranstaltung |
Wenn ein Pod HostPort verwendet, kann er |
Keine |
|
UnexpectedRejectRule |
Veranstaltung |
Im wurde eine unerwartete |
Keine |
Probleme mit der Integrität von Speicherknoten
Der Überwachungszustand ist StorageReady für Probleme in der folgenden Tabelle mit dem Schweregrad „Zustand“.
| Name | Schweregrad | Description | Aktion reparieren |
|---|---|---|---|
|
EBSInstanceIOPSExceeded |
Veranstaltung |
Die maximale Anzahl an IOPS für die Instanz wurde überschritten. |
Keine |
|
EBSInstanceThroughputExceeded |
Veranstaltung |
Der maximale Durchsatz für die Instanz wurde überschritten. |
Keine |
|
EBSVolumeIOPSExceeded |
Veranstaltung |
Die maximale Anzahl an IOPS für ein bestimmtes EBS-Volume wurde überschritten. |
Keine |
|
EBSVolumeThroughputExceeded |
Veranstaltung |
Der maximale Durchsatz für ein bestimmtes Amazon EBS-Volume wurde überschritten. |
Keine |
|
EtcHostsMountFailed |
Veranstaltung |
Das Mounten des generierten Kubelets ist |
Keine |
|
IODelays |
Veranstaltung |
In einem Prozess wurde eine Eingabe- oder Ausgabeverzögerung festgestellt, die bei übermäßiger Dauer auf eine unzureichende Eingabe-Ausgabe-Bereitstellung hindeuten könnte. |
Keine |
|
KubeletDiskUsageSlow |
Veranstaltung |
Der meldet |
Keine |
|
XFSSmallAverageClusterSize |
Veranstaltung |
Die durchschnittliche XFS-Clustergröße ist klein, was auf eine übermäßige Fragmentierung des freien Speicherplatzes hindeutet. Dies kann die Erstellung von Dateien trotz verfügbarer Inodes oder freiem Speicherplatz verhindern. |
Keine |
Konfigurieren Sie den Node Monitoring Agent
Der EKS-Knotenüberwachungsagent wird als bereitgestellt DaemonSet. Wenn Sie ihn als EKS-Add-On bereitstellen, können Sie die Installation mit den folgenden Konfigurationswerten anpassen. Standardkonfigurationen finden Sie in der Helm-Tabelle
| Konfigurationsoption | Description |
|---|---|
|
|
CPU-Ressourcenanforderung für den Monitoring-Agenten. |
|
|
Speicherressourcenanforderung für den Monitoring-Agenten. |
|
|
CPU-Ressourcenlimit für den Monitoring-Agenten. |
|
|
Speicherressourcenlimit für den Monitoring-Agenten. |
|
|
Toleranzen bei der Planung des Monitoring-Agenten auf fehlerhaften Knoten. |
|
|
Zusätzliche Befehlszeilenargumente, die an den Monitoring-Agenten übergeben werden sollen. |
Anmerkung
Sie können verbosity wie monitoringAgent.additionalArgs bei der EKS-Add-Ons oder der Helm-Installation konfigurierenhostname-override. Derzeit können Sie die Einstellungen probe-address (8002) oder metrics-address (8003) des Node Monitoring Agents nicht über zusätzliche Argumente mit EKS-Add-Ons oder der Helm-Installation anpassen.
Der Node Monitoring Agent umfasst eine NVIDIA DCGM (Data Center GPU Manager) -Serverkomponente (nv-hostengine) zur Überwachung von NVIDIA. GPUs Diese Komponente wird nur auf Knoten ausgeführt, bei denen es sich um NVIDIA-GPU-Instanztypen handelt, wie nodeAffinity im Helm-Diagramm
Wenn Sie den EKS-Node-Monitoring-Agenten als EKS-Add-On bereitstellen, können Sie die NVIDIA DCGM-Installation mit den folgenden Konfigurationswerten anpassen.
| Konfigurationsoption | Description |
|---|---|
|
|
CPU-Ressourcenanforderung für den DCGM-Agenten. |
|
|
Speicherressourcenanforderung für den DCGM-Agenten. |
|
|
CPU-Ressourcenlimit für den DCGM-Agenten. |
|
|
Speicherressourcenlimit für den DCGM-Agenten. |
|
|
Toleranzen bei der Planung des DCGM-Agenten auf fehlerhaften Knoten. |
Sie können die folgenden AWS CLI-Befehle verwenden, um nützliche Informationen zu den Versionen und dem Schema für das EKS-Add-On für den EKS-Knotenüberwachungsagenten zu erhalten.
Holen Sie sich die neueste Agent-Add-On-Version für Ihre Kubernetes-Version. Ersetzen Sie sie 1.35 durch Ihre Kubernetes-Version.
aws eks describe-addon-versions \ --addon-name eks-node-monitoring-agent \ --kubernetes-version 1.35 \ --query='addons[].addonVersions[].addonVersion'
Holen Sie sich das Agent-Add-On-Schema, das in EKS-Add-ons unterstützt wird. v1.5.1-eksbuild.1Ersetzen Sie es durch Ihre Agentenversion.
aws eks describe-addon-configuration \ --addon-name eks-node-monitoring-agent \ --addon-version v1.5.1-eksbuild.1