我将构建一个中等规模的集群(20个节点,稍后进行扩展),由于各种原因,使用商品硬件应该可以大大节省成本(甚至允许更短的操作周期/故障)。我担心的是持续的记忆错误。
这里最明显的解决方案是在每个节点上定期运行memtest --但这带来了两个问题:
发布于 2020-02-19 22:59:33
实用?不定期作为正在进行的行动的一部分。在内存中等待停机时间不会检测到短暂的位翻转。并介绍了在检测持久故障方面存在的明显滞后现象。此外,如果您指的是开源memtest86+,就会遇到诸如无UEFI支持和自动报告故障之类的集成挑战。
相反,获取具有足够RAS功能的硬件,即ECC内存。然后是您的服务器可以向您报告内存故障。。
这种错误可能不是很常见。没有ECC的服务器不会立即崩溃和烧毁,这是一个选择。但是,如果您的服务器模型上有非ECC的选择,那么价格溢价往往很小。
发布于 2020-02-20 14:05:08
我现在对问题的第一部分有一个答案。grub发行版包括名为沙鼠的内容。因此,如果Linux在grub中是默认的,我可以要求grub运行memtest一次(之后它将恢复为默认的)。
到目前为止,我对第二部分的唯一选择似乎是在预定的memtest完成之后,寻找一台离线的机器(即不运行Linux)。
发布于 2020-02-20 15:40:24
我可以知道您在运行哪个应用程序吗?持久内存错误是什么意思?
AFAIK很多今天的应用程序在非ECC上运行得很好,大多数崩溃与ECC问题无关,而是内存不足或错误。
而扫描RAM来识别错误是非常低效的。首先,您可以从日志文件中识别潜在的错误,只有当您发现了症状时,才需要运行memtest。
我认为最好先澄清你的逻辑,找出一个更好的解决方案,你认为呢?
https://serverfault.com/questions/1003718
复制相似问题