Linux

評估不可糾正的 ECC 錯誤和回退方法

  • September 25, 2015

我執行的伺服器剛剛遇到了我以前從未遇到過的錯誤。它發出幾聲嗶嗶聲,重新啟動,然後卡在啟動螢幕(BIOS 顯示其徽標並開始列出資訊的部分)並出現錯誤:

Node0:DRAM 不可糾正的 ECC 錯誤

節點 1:HT 連結同步錯誤

硬重置後,系統啟動正常,並且尚未在 edac-util 上報告任何內容。

我的研究告訴我,即使 ECC 記憶體和系統處於理想條件下,仍然可能出現無法糾正的錯誤,並且很可能會在系統生命週期的某個時間點發生;一些報告建議至少每年一次或更早。

伺服器執行帶有多個 ECC 模組的 CentOS 6.5。我已經在嘗試診斷哪個模組引發了錯誤,以評估這是一個故障還是不可避免的事情(如宇宙射線)的結果。

我的研究還表明,當系統像這樣停止時,沒有地方可以寫入日誌,唯一可靠的方法是將系統連接到另一個系統,並通過串列埠寫出日誌。

除了通常的 edac-util、memtest、壓力測試和預防性更換之外,在解決此錯誤時我還應該考慮其他什麼嗎?

我無法在我搜尋的任何 CentOS 日誌中找到任何有關此崩潰的記錄,這與我認為無法將此錯誤記錄到本地磁碟的信念相吻合。該錯誤僅在自動重啟後由 bios 報告給我。是否建議始終將系統日誌寫入串列以記錄這些類型的錯誤?

這種故障是可以使用單個系統避免的,還是只能使用昂貴的企業解決方案才能避免?

在單個生產伺服器的這些故障情況下,我可以做些什麼來提供回退措施;例如,生產伺服器本身不跨越多台機器,但可以存在備用伺服器。

嗯,這不是一個完全集成的系統,如 HP、Dell 或 IBM 伺服器,因此對此類故障的監控和報告不會出現或一致。

在我管理的系統中,磁碟最常出現故障,其次是 RAM、電源、風扇、系統板和 CPU。

記憶可能會失敗……你無能為力。

請參閱:伺服器級硬體是否需要燒錄 RAM?

由於您無法真正防止 ECC 錯誤和 RAM 故障,因此請做好準備。保留備用。物理訪問您的系統並維護您的組件的保修。我絕對不會在環境中引入“預防性替換”。其中一些是您的硬體的功能…您有 IPMI 嗎?有時硬體日誌會在那裡結束。

這是更好的伺服器硬體的增值之一。這是來自 HP ProLiant DL580 G4 伺服器的片段,其中超過了 RAM 上的 ECC 門檻值,然後進展為 DIMM 被禁用……最後伺服器崩潰 (ASR) 並在停用壞 DIMM 的情況下自行重啟。

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

0005 Repaired       20:41  12/06/2008 20:43  12/06/2008 0002
LOG: POST Error: 201-Memory Error Single-bit error occured during memory initialization, Board 1, DIMM 1. Bank containing DIMM(s) has been disabled.

0006 Repaired       21:37  12/06/2008 21:41  12/06/2008 0002
LOG: POST Error: 201-Memory Error Single-bit error occured during memory initialization, Board 1, DIMM 1. Bank containing DIMM(s) has been disabled.

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

如果 DIMM 有無法糾正的錯誤,我建議更換它。如果它只是低比率的可糾正錯誤,您可能可以忍受它,並且在任何情況下對於可糾正的錯誤,都將更難獲得退款。

如果您想查看是否有記錄,請嘗試使用ipmitool sel elist或等效工具訪問 IPMI SEL 記錄。

另一種選擇是設置一個 Linux 崩潰核心來啟動並保存 dmesg,這也可以擷取有關硬體故障的資訊。

第三種選擇是將伺服器的串列控制台記錄到持久的某個地方,它還將包括軟體或硬體類型的伺服器崩潰的線索。

引用自:https://serverfault.com/questions/623945