非 ECC 内存与 ZFS:一个愚蠢的想法?

非 ECC 内存与 ZFS:一个愚蠢的想法?

我有一台新服务器,计划将微不足道的 2 GB 内存升级到最大 16 GB。(理论上 8 GB 是极限,但经验表明 16 GB 是可行的。) 一些指南建议ECC内存不是那么重要,但我不太确定我是否相信这一点。

我已经安装了自由网络存储并计划在新硬盘到货后立即添加 ZFS 卷。为基于 ZFS 的 NAS 节省并购买非 ECC 内存是否愚蠢?如果有必要,我会咬紧牙关,但如果只是出于偏执,那么我可能会跳过它。

ZFS 或 FeeeNAS 有什么原因吗具体来说是否需要 ECC 内存,或者在使用非 ECC 内存的系统上运行时是否会受到影响?

答案1

我认为,当存储在 ZFS 卷上的数据很重要时,使用非 ECC RAM 运行 FreeNAS 是一个愚蠢的想法,就像将其作为虚拟化客户端运行一样。

FreeNAS 开发人员之一 Joshua Paetzel 就此主题写了一篇很好的文章:http://www.freenas.org/whats-new/2015/02/a-complete-guide-to-freenas-hardware-design-part-i-purpose-and-best-practices.html

总结

ZFS 可以做到其他文件系统做不到的事情:它会对您的数据进行校验,对 ZFS 使用的元数据进行校验,并对校验和进行校验。如果您的数据在写入之前在内存中损坏,ZFS 会很乐意写入(并进行校验)损坏的数据。此外,ZFS 没有预安装一致性检查器或可以修复文件系统损坏的工具。[...] 如果非 ECC 内存模块出现故障,可能会对您的 ZFS 池造成无法修复的损坏,从而导致存储完全丢失。

答案2

ZFS 仅保护您对磁盘数据的投资。如果服务器要投入生产,那么您希望尽可能长的正常运行时间,ECC 可帮助实现这一点,因为它允许服务器容忍故障内存中的 ONE BIT 错误。这可以让您有时间安排和更换故障内存,而无需惊慌失措。

答案3

ECC RAM 是个好东西,但让我们看看上下文……

对于您的预期用途,ProLiant Microserver 是一款不错的小型低影响服务器。它缺少一些通常与生产质量系统相关的属性(只有四个驱动器托架、单个电源、较弱的 CPU)。所以,我认为您会比没有纠错 RAM 的影响更快地遇到与这些缺陷相关的问题。您阅读的指南是正确的……ECC RAM 在该特定系统中并不那么重要……

但对于更高端的生产质量系统来说,情况并非如此。

我要补充一点:微服务器是配备 ECC RAM。你为什么不使用它?

相关内容