GNU/Linux >> Linux の 問題 >  >> Linux

kipmi0 IPMI カーネル ヘルパー 99% / 100% 高い CPU 使用率 (ただし、負荷平均は低い)

CentOS 7 または Red Hat Enterprise Linux (RHEL) 7 では、「kipmi0」と呼ばれるプロセスが、異常に高い割合の CPU 処理能力を使用していることを示す場合があります。 99.7%、99.8%、99.9%、または 100% でさえ、kipmi0 プロセスが 0.0% のメモリを使用しており、実際には負荷平均を増加させず、1 または 2 に近い低い値でホバリングし続けます (サーバーが過負荷でない場合)。時に読み込みます)。

「top」コマンドを実行すると、問題のある kipmi0 を表示できます。 kipmi0 プロセスは、サーバーの稼働時間全体にわたって 100% のままです。

システムを再起動すると、kipmi0 が一瞬消えてしまうことがありますが、すぐに 100% の CPU 使用率で元に戻ります。さらに悪いことに、kipmi0 プロセスを強制終了して終了することはできず、プロセスは実行を続けて停止します。

IBM サポートによると、Linux で kipmi0 プロセスが CPU 使用率の増加を示す場合があります。 BMC (ベースボード管理コントローラー) や IMM (統合管理コントローラー) などの IPMI (Intelligent Platform Management Interface) デバイスがビジー状態または応答しない場合、使用率は最大 100% まで増加する可能性があります。

提案された解決策は、驚くべきことに、何の措置も講じないことです。 kipmiN カーネル ヘルパー スレッドは低い優先度で実行されるため、実際のシステム パフォーマンスには影響しないため、修正は不要であり、CPU 使用率の増加は無視する必要があります。その他の回避策には、IPMI デバイスを使用している場合は BMC をリセットするか、システムを再起動する (問題は解決されません)、または IPMI デバイスを使用していない場合は IPMI サービスを停止します (使用されていない場合は IPMI サービスを開始することさえできません)。 .

Red Hat Enterprise Linux (RHEL) / CentOS 6 および Red Hat Enterprise Linux / CentOS 7 では、Linux IPMI ipmi_si ドライバーとそれに関連するハンドルおよびモジュールがデフォルトでカーネルに組み込まれています。 RedHat は、この kipmi0 が高い CPU 負荷を生成している理由を説明しています:

<ブロック引用>

kipmi0 は、IPMI インターフェイスの処理に関与するカーネル ヘルパー プロセス/スレッドです。 IPMI 内には、インターフェイスの標準クラスがいくつかあります。 KCS (Keyboard Control Style) や SMIC (System Management Interface Chip) などの一部のクラスは、割り込み要求 (IRQ) を使用して変更を通知しないため、コマンド結果を取得するためにポーリングが必要です。 kipmiN カーネル ヘルパー スレッドがこのポーリングを実行します。したがって、IPMI 操作の進行中にこれらのスレッドがかなりの CPU 時間を消費するのは正常なことです。

この場合、ドライバーとハードウェア/ファームウェア間の相互作用に問題があり、ドライバーは操作がまだ進行中であると認識し、システムが再起動されるまで高い CPU 負荷が継続します。

kipmiN ヘルパー スレッドの問題を解決するには、/etc/sysconfig/lm_sensors で ipmi-si と ipmisensors をコメント アウトするなど、多くの回避策があります。サーバーで IPMI サービスが不要であることが確実な場合、またはコンピューターに IPMI デバイスがインストールされていない場合は、IPMI のカーネル サービスを無効にすることができます。

IPMI のカーネル サービスを完全に無効にするには、modprobe ユーティリティで IPMI 関連モジュールをブラックリストに登録して、システムが IPMI カーネル モジュールを使用しないようにします。これを行うには、blacklist.conf を編集します /etc/modprobe.d/ で ディレクトリに次の行をルートとして追加します:

blacklist ipmi_si
blacklist ipmi_ssif
blacklist ipmi_devintf
blacklist ipmi_msghandler

上記のリストには、起動時に開始されるほとんどの主要な IPMI モジュールが含まれていますが、それらのすべてがシステムによって開始されるわけではありません。それらのいずれかがシステムに存在しない場合、その行は除外できます。


Linux
  1. WindowsServerでの高いCPU使用率のトラブルシューティング

  2. Linux での CPU 使用率の観点から、OS 負荷平均と実行キュー/ブロック キューを理解する

  3. CPU使用率を取得する方法

  1. Linux free はメモリ使用量が高いことを示していますが、top はそうではありません

  2. 非常に高い CPU 使用率で実行されている Jenkins

  3. 高システム CPU 負荷 (%sys)、システム ロック

  1. Linux で top によって報告される CPU 使用率が 100% を超えるのはなぜですか?

  2. CPU 使用率の高い apache プロセスが実際に行っていることを調べますか?

  3. CPU 使用率は高いが負荷平均は低い