CentOS 6.4があり、kipmi0
99.8%cpuおよび0.0%メモリとして表示され、負荷平均は1.00です。これを修正するにはどうすればよいですか?
lshw
してdmidecode
に見て私の次のエリアになります。
CentOS 6.4があり、kipmi0
99.8%cpuおよび0.0%メモリとして表示され、負荷平均は1.00です。これを修正するにはどうすればよいですか?
lshw
してdmidecode
に見て私の次のエリアになります。
回答:
他のシステムはこのシステムと同一ですか?あなたは彼らがそうであると決定しなければならないでしょう。それらの間で根本的に異なるものがなければなりません。ファームウェア?同じRPMバージョンですか?
lshw
、などのツールを使用dmidecode
して、dmesg
ログを見て、何が違うのか、何が根本原因なのかを知ることができます。
この問題が発生していないシステムと実行中のシステムのいずれかでこのコマンドを実行することにより、インストールされたRPMの良好なベースラインを取得し、パッケージリストを比較して、すべて同じバージョンであることを確認します。
# machine #1
$ rpm -aq | sort -rn > machine1_rpms.txt
# machine #2
$ rpm -aq | sort -rn > machine2_rpms.txt
次に、同じマシンでファイルを取得し、2つのファイルのsdiffを実行します。
sdiff machine1_rpms.txt machine2_rpms.txt
IBMのWebサイトには、この問題に関する「Kipmi0 LinuxでのCPU使用率の増加を表示する」というタイトルの技術情報がありました。この問題によると、本質的に問題を無視できます。
問題の説明
kipmi0プロセスは、LinuxでのCPU使用率の増加を示す場合があります。BMC(Baseboard Management Controller)やIMM(Integrated Management Controller)などのIPMI(Intelligent Platform Management Interface)デバイスがビジーまたは応答しない場合、使用率は最大100%増加する場合があります。
修正する
修正は必要ありません。CPU使用率の増加は、実際のシステムパフォーマンスに影響を与えないため、無視する必要があります。
回避策
IPMIデバイスを使用していない場合は、次のコマンドを発行してIPMIサービスを停止します。
サービスipmi停止
私は誰かのブログでこの投稿を見つけました。この問題はあなたのものと同じように聞こえました。この問題は、lm_sensors
パッケージの一部としてロードされていた2つのカーネルモジュールの問題に起因していました。
これらは2つのカーネルモジュールです。
回避策
次のコマンドを使用して、これらを手動で削除できます。
rmmod ipmi_msghandler
rmmod ipmi_si
この修正を永続的にするには、lm_sensors
設定ファイルの1つでこれらの特定のカーネルモジュールの読み込みを無効にする必要があります。
# /etc/sysconfig/lm_sensors
# MODULE_0=ipmi-si
# MODULE_1=ipmisensors
# MODULE_2=coretemp
lm_sensors
これらの変更を行った後、再起動します。
/etc/init.d/lm_sensors
sdiff machine1_rpms.txt machine2_rpms.txt | grep "|"
た。2つの.txtファイルのすべての違いを引き出します。他の方法もありますが、それは1つの方法です。
IPMIドキュメントによると:
このスレッドは、インターフェイスのパフォーマンスに応じて多くのCPUを使用できます。これは多くのCPUを浪費し、アイドルCPUの検出と余分な電力の使用に関してさまざまな問題を引き起こす可能性があります。これを避けるために、kipmid_max_busy_usは、ティックのためにスリープする前にkipmidがスピンする最大時間をマイクロ秒単位で設定します。この値は、パフォーマンスとCPUの浪費のバランスを設定し、ニーズに合わせて調整する必要があります。いつか、自動調整が追加されるかもしれませんが、それは簡単なことではなく、自動調整さえもユーザーの希望するパフォーマンスに調整する必要があります。
そのため、このコマンドを実行してkipmid_max_busy_usパラメーターを設定できます。
echo 100 > /sys/module/ipmi_si/parameters/kipmid_max_busy_us
このシステムでは、このパラメーターを設定した後、kipmi0のCPUが15%に減少しました。
これを試すことができます。
変更を永続的にするには、ipmi_siカーネルモジュールのオプションを構成します。
でファイルを作成します/etc/modprobe.d/
。つまり/etc/modprobe.d/ipmi.conf
、次の内容を追加します
。ipmi_siカーネルモジュールがカーネルにロードされるたびに、パラメーターが自動的に正しく設定されるようになります。
# Prevent kipmi0 from consuming 100% CPU
options ipmi_si kipmid_max_busy_us=100
ipmi_si.force_kipmid=0
カーネルパラメーターとして追加することにより、Kipmi0をCentOS 6で完全に無効にできます。
GRUBブート画面で、ブートするカーネルを強調表示してテストし、「a」を押してパラメーターを変更し、追加します ipmi_si.force_kipmid=0
ipmi_si.force_kipmid=0
の関連するカーネル行に追加して永続的にします/boot/grub/grub.conf
注:ipmi_siが別のカーネルモジュールとしてあるディストリビューションでは、modprobe.d confファイルを使用する方が適切です。CentOSでは、ipmi_siはカーネルイメージに組み込まれているため、modprobeの設定は機能しません。
この問題には次のことが役立ちます。
ipmitool bmc info
これによりIPMIが起動し、コアの100%の使用が停止するようです。
また、次の情報も役に立ちました。
echo 100 > /sys/module/ipmi_si/parameters/kipmid_max_busy_us
また、過去に私はいくつかのサーバーで100%のCPU使用率を次の方法で解決できました。
ipmitool lan print
そして
ipmitool bmc reset cold
しかし、私の最も最近の経験では、上記のオプションは、ちょうど引き起こすipmitool
非応答性であるとに私を引き起こして、そこに座ってCtrl+ Cそれを。
これが誰かの助けになることを願っています。
echo 1 > /sys/module/ipmi_si/parameters/kipmid_max_busy_us
か?