हमारे पास सेंटोस 6.4 है और यह kipmi0
99.8% सीपीयू और 0.0% मेमोरी और लोड औसत 1.00 के रूप में दिखा रहा है। इस पर लगाम लगाने के लिए हमें क्या करना चाहिए?
lshw
और dmidecode
मेरा अगला क्षेत्र होगा।
हमारे पास सेंटोस 6.4 है और यह kipmi0
99.8% सीपीयू और 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
आईबीएम वेबसाइट ने इस मुद्दे के बारे में लिनक्स पर : Kipmi0 मे शो शो बढ़ सीपीयू यूटिलाइजेशन का शीर्षक दिया था । इस समस्या के अनुसार आप समस्या की अनदेखी कर सकते हैं।
मुद्दे का विवरण
Kipmi0 प्रक्रिया लिनक्स में बढ़े हुए सीपीयू उपयोग को दिखा सकती है। IPMI (इंटेलिजेंट प्लेटफ़ॉर्म मैनेजमेंट इंटरफ़ेस) डिवाइस, जैसे BMC (बेसबोर्ड मैनेजमेंट कंट्रोलर) या IMM (इंटीग्रेटेड मैनेजमेंट कंट्रोलर) व्यस्त या गैर-उत्तरदायी होने पर उपयोग 100% तक बढ़ सकता है।
ठीक कर
कोई फिक्स की आवश्यकता नहीं है। आपको बढ़े हुए CPU उपयोग की उपेक्षा करनी चाहिए क्योंकि इसका वास्तविक सिस्टम प्रदर्शन पर कोई प्रभाव नहीं पड़ता है।
काम के आसपास
यदि IPMI डिवाइस का उपयोग नहीं किया जा रहा है, तो निम्न आदेश जारी करके IPMI सेवा बंद करें:
सेवा ipmi रोक
मुझे यह पोस्ट किसी के ब्लॉग पर मिली, जिसका शीर्षक था: kipmi0 समस्या । यह समस्या आपके समरूप लग रही थी। इस समस्या को 2 कर्नेल मॉड्यूल के साथ एक समस्या का पता लगाया गया था जो के भाग के रूप में लोड हो रहे थेlm_sensors
पैकेज के ।
ये 2 कर्नेल मॉड्यूल थे:
काम के आसपास
आप निम्न आदेशों के साथ इन्हें मैन्युअल रूप से हटा सकते हैं:
rmmod ipmi_msghandler
rmmod ipmi_si
इस फिक्स को स्थायी करने के लिए, आपको lm_sensors
विन्यास फाइल में से किसी एक के भीतर इन विशेष कर्नेल मॉड्यूल के लोडिंग को निष्क्रिय करना होगा , उन्हें इस तरह टिप्पणी करके:
# /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 फाइलें। इसे करने के अन्य तरीके हैं लेकिन यह एक तरीका है।
IPMI दस्तावेज़ के अनुसार :
यह थ्रेड इंटरफ़ेस के प्रदर्शन के आधार पर बहुत सारे CPU का उपयोग कर सकता है। यह बहुत सारे CPU को बर्बाद कर सकता है और निष्क्रिय CPU का पता लगाने और अतिरिक्त शक्ति का उपयोग करने के साथ विभिन्न मुद्दों का कारण बन सकता है। इससे बचने के लिए, kipmid_max_busy_us माइक्रोसेकंड में, अधिकतम समय निर्धारित करता है, कि टिकमाइड सोने से पहले टिक जाएगा। यह मान प्रदर्शन और CPU कचरे के बीच संतुलन स्थापित करता है और आपकी आवश्यकताओं के अनुरूप होना चाहिए। हो सकता है, किसी दिन, ऑटो-ट्यूनिंग को जोड़ा जाएगा, लेकिन यह एक साधारण बात नहीं है और यहां तक कि ऑटो-ट्यूनिंग को उपयोगकर्ता के वांछित प्रदर्शन के लिए ट्यून करने की आवश्यकता होगी।
इसलिए, हम kipmid_max_busy_us पैरामीटर सेट करने के लिए इस कमांड को निष्पादित कर सकते हैं:
echo 100 > /sys/module/ipmi_si/parameters/kipmid_max_busy_us
हमारे सिस्टम में, इस पैरामीटर को सेट करने के बाद, kipmi0 का सीपीयू घटकर 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
kipmi0 को पूरी तरह से ipmi_si.force_kipmid=0
कर्नेल पैरामीटर के रूप में जोड़कर 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 config काम नहीं करता है।
मैंने पाया कि इस मुद्दे के साथ निम्नलिखित मदद करता है:
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
?