GNU/Linux >> Linux Esercitazione >  >> Linux

kipmi0 IPMI Kernel Helper 99% / 100% di utilizzo elevato della CPU (ma basso carico medio)

In CentOS 7 o Red Hat Enterprise Linux (RHEL) 7, un processo chiamato "kipmi0" potrebbe mostrare che sta utilizzando una percentuale insolitamente alta della potenza di elaborazione della CPU, ad es. 99,7%, 99,8%, 99,9% o addirittura 100%, anche se il processo kipmi0 utilizza lo 0,0% di memoria e in realtà non aumenta il carico medio, che continua a fluttuare a un livello basso vicino a 1 o 2 (a condizione che il server non sia sotto carico caricare in quel momento).

Il problema kipmi0 può essere mostrato eseguendo il comando "top". Il processo kipmi0 rimane al 100% per l'intera durata del tempo di attività del server.

A volte, un riavvio del sistema può far scomparire kipmi0 per un piccolo momento, ma presto tornerà in vita con un utilizzo della CPU del 100%. A peggiorare le cose, il processo kipmi0 non può essere terminato e terminato, dove il processo continua a funzionare e rimane.

Secondo il supporto IBM, il processo kipmi0 potrebbe mostrare un maggiore utilizzo della CPU in Linux. L'utilizzo può aumentare fino al 100% quando il dispositivo IPMI (Intelligent Platform Management Interface), come un BMC (Baseboard Management Controller) o IMM (Integrated Management Controller), è occupato o non risponde.

La risoluzione suggerita è, sorprendentemente, non intraprende alcuna azione. Nessuna correzione richiesta e un maggiore utilizzo della CPU dovrebbero essere ignorati in quanto non hanno alcun impatto sulle prestazioni effettive del sistema poiché i thread helper del kernel kipmiN vengono eseguiti a bassa priorità. Altre soluzioni alternative includono il ripristino del BMC o il riavvio del sistema se si utilizza un dispositivo IPMI (che non risolve il problema) o l'arresto del servizio IPMI se non si utilizza il dispositivo IPMI (in cui il servizio IPMI non dovrebbe nemmeno essere avviato se non è in uso) .

Red Hat Enterprise Linux (RHEL) / CentOS 6 e Red Hat Enterprise Linux / CentOS 7 hanno integrato i driver IPMI Linux ipmi_si e le relative maniglie e moduli nel kernel per impostazione predefinita. RedHat spiega perché questo kipmi0 sta generando un carico elevato della CPU:

kipmi0 è un processo/thread di supporto del kernel coinvolto nella gestione delle interfacce IPMI. All'interno di IPMI esistono diverse classi standard di interfacce. Alcune di queste classi, come KCS (Keyboard Control Style) e SMIC (System Management Interface Chip) non utilizzano le richieste di interruzione (IRQ) per segnalare le modifiche e quindi richiedono il polling per ottenere i risultati dei comandi. I thread helper del kernel kipmiN eseguono questo polling. Pertanto, è normale che questi thread consumino molto tempo della CPU mentre è in corso un'operazione IPMI.

In questo caso, c'è un problema nell'interazione tra il driver e l'hardware/firmware che porta il driver a credere che un'operazione sia ancora in corso, facendo sì che il carico elevato della CPU continui fino al riavvio del sistema.

Per risolvere il problema dei thread dell'helper kipmiN, ci sono molte soluzioni alternative, come commentare ipmi-si e ipmisensors in /etc/sysconfig/lm_sensors. Se sei certo che il servizio IPMI non sia richiesto sul server, o non ci sono dispositivi IPMI installati sul computer, puoi disabilitare il servizio del kernel per IPMI.

Per disabilitare completamente il servizio del kernel per IPMI, possiamo inserire nella blacklist i moduli relativi a IPMI nell'utilità modprobe per impedire al sistema di utilizzare i moduli del kernel IPMI. Per fare ciò, modifica il blacklist.conf in /etc/modprobe.d/ directory e aggiungi la seguente riga come root:

blacklist ipmi_si
blacklist ipmi_ssif
blacklist ipmi_devintf
blacklist ipmi_msghandler

L'elenco sopra include la maggior parte dei principali moduli IPMI avviati all'avvio, ma non tutti vengono avviati dal sistema. Se qualcuno di essi non esiste nel sistema, la linea può essere esclusa.


Linux
  1. Linux:come funziona il carico medio con le moderne CPU?

  2. Linux:cosa sono la memoria alta e la memoria insufficiente su Linux?

  3. Risolvere i problemi di utilizzo elevato della CPU su Windows Server

  4. Linux gratuito mostra un elevato utilizzo della memoria, ma top no

  5. Jenkins in esecuzione con un utilizzo della CPU molto elevato

Come creare il 100% del carico della CPU su un sistema Linux

Utilizzo elevato della CPU durante la riproduzione di Flash?

Che cos'è la media del carico in Linux?

Cosa sono la memoria alta e la memoria bassa su Linux?

Come trovare quale processo sta causando un elevato utilizzo della CPU

Utilizzo elevato della memoria ma nessun processo lo sta utilizzando