मुझे लिनक्स में ECC त्रुटियों की सूचना कैसे मिलेगी?


23

जब ईसीसी मेमोरी से लैस लिनक्स मशीन मेमोरी विफलता को पहचानती है, तो मुझे कैसे सूचित किया जाए? मुझे सही और अचूक दोनों त्रुटियों में दिलचस्पी है।

  • यदि संदेश dmesg / syslog को लिखा जाता है, तो यह पहले से ही ठीक है, लेकिन मुझे यह जानना अच्छा लगेगा कि क्या देखना है
  • अतिरिक्त डेमॉन स्थापित करना (जैसे हार्ड ड्राइव के लिए स्मार्टमोंटोल) स्वीकार्य है
  • Nagios / Icinga निगरानी एक और रास्ता होगा
  • निगरानी की जाने वाली सभी मशीनों में IPMI नहीं है

हित के सिस्टम में सुपरमाइक्रो बोर्ड (X9SCM-F) है, एक HP N54L माइक्रोसेवर के बारे में मैं सिर्फ जिज्ञासु हूं, लेकिन बहुत परवाह नहीं करता। सभी सिस्टम डेबियन या उबंटू लिनक्स चलाते हैं।


कृपया सर्वर प्रकार और मेक / मॉडल, ओएस वितरण संस्करण और किसी भी अन्य प्रासंगिक हार्डवेयर विवरण का वर्णन करें।
इविविट

2
मुझे यह भी नहीं पता था कि यह बताया गया ...
हाफगैर

mcelogSyslog की निगरानी करते हुए दौड़ना जाने के रास्ते की तरह लगता है।
जेन्स एरैट

जवाबों:


6

लिनक्स कर्नेल का समर्थन करता है त्रुटि का पता लगाने और सुधार ( EDAC ) कुछ चिपसेट की सुविधा है। ECC के साथ समर्थित सिस्टम पर आपके मेमोरी कंट्रोलर की स्थिति sysfs के माध्यम से सुलभ है:

/sys/devices/system/edac/mc

उस स्थान के अंतर्गत निर्देशिका ट्री आपके हार्डवेयर के अनुरूप होना चाहिए, जैसे:

/sys/devices/system/edac/mc/mc0/csrow2/power
/sys/devices/system/edac/mc/mc0/csrow0/power
/sys/devices/system/edac/mc/mc0/dimm2/power
/sys/devices/system/edac/mc/mc0/dimm0/power
/sys/devices/system/edac/mc/mc1/power
...

आपके हार्डवेयर के आधार पर, आपको सही edac ड्राइवर, cf को स्पष्ट रूप से लोड करना पड़ सकता है।

find /lib/modules/$(uname -r) -name '*edac*'

edac-utilsपैकेज एक कमांड लाइन दृश्यपटल और उस डेटा, जैसे पहुँचने के लिए एक पुस्तकालय प्रदान करता है:

edac-util -rfull          
mc0:csrow0:mc#0memory#0:CE:0
mc0:csrow2:mc#0memory#2:CE:0
mc0:noinfo:all:UE:0
mc0:noinfo:all:CE:0
mc1:noinfo:all:UE:0
mc1:noinfo:all:CE:0

आप कुछ प्रकार के क्रोन-जॉब को सेट कर सकते हैं जो समय-समय पर कॉल करते हैं eac-utilऔर परिणामों को आपके मॉनिटरिंग सिस्टम में फीड करते हैं, जहां आप फिर कुछ सूचनाओं को कॉन्फ़िगर कर सकते हैं।

इसके अलावा, रनिंग mcelogआम तौर पर एक अच्छा विचार है। सिस्टम पर निर्भर करता है, लेकिन मशीन की जांच अपवाद ( MCE ) के साथ-साथ अचूक / सुधारात्मक ECC त्रुटियों की सूचना दी जाती है । मेरा मतलब है, अधिक तापमान के कारण सीपीयू थ्रॉटलिंग की संक्षिप्त अवधि भी MCE के रूप में बताई गई है।


9

mcelogमेमोरी कंट्रोलर की निगरानी करेगा और मेमोरी त्रुटि घटनाओं की रिपोर्ट syslog में करेगा, और कुछ कॉन्फ़िगरेशन में खराब मेमोरी पेजों को ऑफलाइन कर सकता है । यह, ज़ाहिर है, मशीन की जांच के अपवादों और अन्य हार्डवेयर त्रुटियों की निगरानी के लिए इसके सामान्य उपयोग के अलावा।

अधिकांश लिनक्स वितरणों में इसे डेमन के रूप में चलाने के लिए एक सेवा है, उदाहरण के लिए EL 6:

chkconfig mcelog on
service mcelog start

अब उबंटू द्वारा समर्थित नहीं है। स्थापना त्रुटियों देता है।
DimiDak


हाँ, थैंक्स मैंने देखा है कि, अगर मैं गलत नहीं हूँ तो यह ubuntu18 के बारे में बात करता है, लेकिन यह Ubuntu 14 पर भी काम नहीं करता है।
14

@DimiDak यह एक अलग मुद्दा है और यहां प्रासंगिक नहीं है। यदि आपको सहायता की आवश्यकता हो तो आप इसके बारे में एक नया प्रश्न पूछ सकते हैं।
माइकल हैम्पटन

सवाल पोस्ट करने वाला आदमी कहता है "सभी सिस्टम डेबियन या उबंटू चलाते हैं" और आपका जवाब इसके लिए काम नहीं करता है। तो यह बहुत प्रासंगिक है ...
DimiDak

6

यह आपके सर्वर हार्डवेयर पर निर्भर करता है। एक व्हाइटबॉक्स या सुपरमाइक्रो सिस्टम इसे डेल, एचपी या आईबीएम की तुलना में अलग तरह से हैंडल करेगा ...

उच्च-अंत सर्वरों के मूल्य-जोड़ सुविधाओं में से एक यह है कि हार्डवेयर / ओएस एकीकरण का एक स्तर है। अच्छे सर्वर रिपोर्ट करेंगे कि आप प्रबंधन एजेंटों और / या आउट-ऑफ-बैंड प्रबंधन समाधान (ILO, DRAC, IPMI) के हिस्से के रूप में क्या देख रहे हैं।

आपको अपने हार्डवेयर प्लेटफ़ॉर्म पर मूल उपकरण का उपयोग करना चाहिए।

Linux और HP प्रबंधन एजेंटों को चलाने वाले HP ProLiant सर्वर के अंश:

Trap-ID=6056
ECC Memory Correctable Errors  detected.

तथा

Trap-ID=6052
Advanced ECC Memory  Engaged

या अधिक गंभीर

Trap-ID=6029
A correctable memory log entry indicates a memory module needs to be
replaced.

या सबसे खराब ... 6 दिनों के लिए एक त्रुटि को अनदेखा करना जब तक कि सर्वर खराब रैम के कारण क्रैश न हो जाए

0004 Repaired       22:21  12/01/2008 22:21  12/01/2008 0001
LOG: Corrected Memory Error threshold exceeded (Slot 1, Memory Module 1)

0007 Repaired       02:58  12/07/2008 02:58  12/07/2008 0001
LOG: POST Error: 201-Memory Error Single-bit error occured during 
memory initialization, 
Board 1, DIMM 1. Bank containing DIMM(s) has been disabled.

0008 Repaired       19:31  12/08/2009 19:31  12/08/2009 0001
LOG: ASR Detected by System ROM

ये लॉग इन थे, साथ ही एसएनएमपी जाल और ईमेल भेजे गए थे।

आम तौर पर, आप कर्नेल रिंग बफर में मशीन जांच अपवाद देखेंगे, ताकि आप mcelog को चेक dmesgया चला सकें । IPMI के बिना सुपरमाइक्रो गियर के साथ मेरे अनुभवों में, वह सब कुछ नहीं पकड़ पाया, और मुझे अभी भी रैम की त्रुटियां दरारें और कारण के माध्यम से फिसल गई थीं। दुर्भाग्य से, इससे सिस्टम परिनियोजन से पहले पुरातन बर्न-इन नीतियों का सामना करना पड़ा

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.