我有一台我多年前建造的服务器,它运行起来像个冠军。但在过去的几个月里,它开始变得严重不稳定,没有明显的模式。我一直在调试它并更换零件无济于事。我已经更换了系统中我能想到的几乎所有东西,这可能是用于存储的保存驱动器的原因。
请注意,系统运行的是 CentOS 7.5。
症状是机器会自发地执行硬复位,就好像电源正在循环或突然断电一样。它可以每隔几天发生一次,有时一天发生两次。系统可以是空闲的,也可以是有负载的。没有模式。
除了基本的必需品,我已经删除了所有内容。请注意,我已替换:
主板、CPU、RAM 和 PSU。
如果任何 ram 棒有缺陷,我希望看到已更正/无法更正的 ECC 错误的日志,而我没有。如果是 CPU,我会期待一些更随机的东西,因为可能的内核恐慌有一些日志记录。我怀疑它可能是电源的故障并更换了它。问题仍然存在,所以我尝试更换主板。没变。
系统配置了两个处理器和 16 根相同的内存条,所以我试图卸下一个 CPU 和一半的内存,看看它是否崩溃,然后换另一套。症状没有变化。
我开始移除额外的组件,并达到了最低限度,症状没有变化。
我现在完全不知所措。除了系统中剩下的几个驱动器之外,我已经没有什么可以尝试替换案例本身的保存了。
什么可能导致我的服务器自行重置?我还能测试什么?故障真的来自其中一个驱动器吗?
目前系统规格如下:
基础组件:
- SuperMicro H8DG6-F (主板)
- 1x AMD Opteron 处理器 6328 (CPU)
- 16GB x 8海力士 DDR3 ECC HMT42GR7BMR4C-G7(内存)
贮存:
- 1x三星 SSD 850 PRO 128GB …
我运行的服务器刚刚遇到了我以前从未遇到过的错误。它发出几声哔哔声,重新启动,并卡在启动屏幕(BIOS 显示其徽标并开始列出信息的部分)并出现错误:
节点 0:DRAM 不可纠正的 ECC 错误
节点 1:HT 链接同步错误
硬重置后,系统启动正常,但尚未在 edac-util 上报告任何内容。
我的研究告诉我,即使 ECC 内存和系统处于理想状态,仍然可能出现无法纠正的错误,并且可能会在系统的生命周期中的某个时刻发生;一些报告建议至少一年或更早一次。
该服务器运行带有多个 ECC 模块的 CentOS 6.5。我已经在尝试诊断哪个模块引发了错误,以评估这是错误还是不可避免的结果,例如宇宙射线。
我的研究还表明,当系统像这样停止时,日志无处可写,唯一可靠的方法是将系统连接到另一个系统,并通过串行端口写出日志。
除了通常的 edac-util、memtest、压力测试和预防性更换之外,在解决这个错误时还有什么我应该考虑的吗?
我无法在我搜索的任何 CentOS 日志中找到此崩溃的任何记录,这与我的信念一致,即无法将此错误记录到本地磁盘。该错误仅在自动重启后由 bios 报告给我。是否建议始终将系统日志写入串行以记录这些类型的错误?
使用单个系统可以避免这种故障,还是只能使用昂贵的企业解决方案才能避免?
在这些故障情况下,我可以做些什么来为单个生产服务器提供回退措施;例如,生产服务器本身不会跨越多台机器,但可以存在后备服务器。