GNU/Linux >> LINUX-Kenntnisse >  >> Linux

kipmi0 IPMI Kernel Helper 99 % / 100 % Hohe CPU-Auslastung (aber niedriger Lastdurchschnitt)

In CentOS 7 oder Red Hat Enterprise Linux (RHEL) 7 kann ein Prozess namens „kipmi0“ anzeigen, dass er einen ungewöhnlich hohen Prozentsatz der CPU-Rechenleistung nutzt, z. 99,7 %, 99,8 %, 99,9 % oder sogar 100 %, obwohl der kipmi0-Prozess 0,0 % Speicher verwendet und den Lastdurchschnitt nicht wirklich erhöht, der weiterhin auf einem niedrigen Wert nahe 1 oder 2 schwebt (vorausgesetzt, der Server ist nicht unter Last Ladezeit).

Das problematische kipmi0 kann durch Ausführen des Befehls „top“ angezeigt werden. Der kipmi0-Prozess bleibt für die gesamte Lebensdauer des Servers bei 100 %.

Manchmal kann ein Systemneustart dazu führen, dass kipmi0 für einen kurzen Moment verschwindet, aber bald erwacht es mit 100% CPU-Auslastung wieder zum Leben. Um die Sache noch schlimmer zu machen, kann der kipmi0-Prozess nicht beendet und beendet werden, wobei der Prozess weiterläuft und bleibt.

Laut IBM Support kann der Prozess kipmi0 unter Linux eine erhöhte CPU-Auslastung aufweisen. Die Auslastung kann auf bis zu 100 % ansteigen, wenn das IPMI-Gerät (Intelligent Platform Management Interface), z. B. ein BMC (Baseboard Management Controller) oder IMM (Integrated Management Controller), ausgelastet ist oder nicht reagiert.

Die vorgeschlagene Lösung wird überraschenderweise nicht umgesetzt. Kein Fix erforderlich und eine erhöhte CPU-Auslastung sollten ignoriert werden, da dies keine Auswirkungen auf die tatsächliche Systemleistung hat, da kipmiN-Kernel-Hilfsthreads mit niedriger Priorität ausgeführt werden. Andere Problemumgehungen umfassen das Zurücksetzen des BMC oder das Neustarten des Systems, wenn ein IPMI-Gerät verwendet wird (was das Problem nicht löst), oder das Stoppen des IPMI-Dienstes, wenn kein IPMI-Gerät verwendet wird (wobei der IPMI-Dienst nicht einmal gestartet werden sollte, wenn es nicht verwendet wird). .

Red Hat Enterprise Linux (RHEL) / CentOS 6 und Red Hat Enterprise Linux / CentOS 7 haben standardmäßig Linux IPMI ipmi_si-Treiber und die zugehörigen Handles und Module in den Kernel integriert. RedHat erklärt, warum dieses kipmi0 eine hohe CPU-Last erzeugt:

kipmi0 ist ein Kernel-Hilfsprozess/Thread, der an der Handhabung von IPMI-Schnittstellen beteiligt ist. Innerhalb von IPMI gibt es mehrere Standardklassen von Schnittstellen. Einige dieser Klassen, wie KCS (Keyboard Control Style) und SMIC (System Management Interface Chip), verwenden keine Interrupt-Anforderungen (IRQs), um Änderungen zu signalisieren, und erfordern daher eine Abfrage, um Befehlsergebnisse zu erhalten. Die Kernel-Hilfsthreads von kipmiN führen diese Abfrage durch. Daher ist es normal, dass diese Threads viel CPU-Zeit verbrauchen, während ein IPMI-Vorgang ausgeführt wird.

In diesem Fall liegt ein Problem in der Interaktion zwischen dem Treiber und der Hardware/Firmware vor, das den Treiber glauben lässt, dass noch ein Vorgang ausgeführt wird, wodurch die hohe CPU-Last anhält, bis das System neu gestartet wird.

Um das Problem zu lösen, dass kipmiN-Hilfsthreads auftreten, gibt es zahlreiche Problemumgehungen, z. B. das Auskommentieren von ipmi-si und ipmisensors in /etc/sysconfig/lm_sensors. Wenn Sie sicher sind, dass der IPMI-Dienst auf dem Server nicht erforderlich ist oder keine IPMI-Geräte auf dem Computer installiert sind, können Sie den Kernel-Dienst für IPMI deaktivieren.

Um den Kernel-Dienst für IPMI vollständig zu deaktivieren, können wir die IPMI-bezogenen Module im Dienstprogramm modprobe auf die schwarze Liste setzen, um zu verhindern, dass das System IPMI-Kernel-Module verwendet. Bearbeiten Sie dazu die blacklist.conf in /etc/modprobe.d/ Verzeichnis und fügen Sie die folgende Zeile als root hinzu:

blacklist ipmi_si
blacklist ipmi_ssif
blacklist ipmi_devintf
blacklist ipmi_msghandler

Die obige Liste enthält die meisten wichtigen IPMI-Module, die beim Booten gestartet werden, aber nicht alle werden vom System gestartet. Wenn einer von ihnen nicht auf dem System vorhanden ist, kann die Zeile ausgeschlossen werden.


Linux
  1. Beheben Sie eine hohe CPU-Auslastung auf Windows Server

  2. Verständnis der durchschnittlichen Betriebssystemlast und der Ausführungswarteschlange/Blockierten Warteschlange in Bezug auf die CPU-Auslastung in Linux

  3. Linux free zeigt eine hohe Speicherauslastung, top jedoch nicht

  4. Jenkins läuft mit sehr hoher CPU-Auslastung

  5. Serverlast hoch, CPU im Leerlauf. NFS die Ursache?

So erstellen Sie 100% CPU-Last auf einem Linux-System

Hohe CPU-Auslastung beim Spielen von Flash?

Was ist Load Average in Linux?

Hohe System-CPU-Last (%sys), Systemsperren

So finden Sie heraus, welcher Prozess eine hohe CPU-Auslastung verursacht

Oben steht, dass die CPU zu 100 % verwendet wird, aber 50 % der Kerne im Leerlauf sind?