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

我有一个新的服务器,并计划升级微小的2 GB的内存最高16 GB。 (理论上8GB是有限制的,但实际上16GB已经显示出来了。) 一些指导build议ECC内存不是那么重要,但我不确定我是否相信这一点。

我已经安装了FreeNAS,并计划在我的新硬盘驱动器到来时立即添加ZFS卷。 对于基于ZFS的NAS来说,吝啬一点,并获得非ECC内存是不是愚蠢? 如果有必要的话,我会咬死子弹,但如果只是偏执狂,那么我可能会跳过它。

是否有任何原因ZFS或FeeeNAS 明确要求ECC内存,或者在使用非ECC内存的系统上运行时尤其受到影响?

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

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 。

TL; DR

ZFS没有任何其他文件系统可以为您提供:检查数据,校验和,ZFS使用的元数据,以及校验和。 如果你的数据在写入之前在内存中被破坏了,ZFS会高兴地写入(和校验和)损坏的数据。 此外,ZFS没有预安装一致性检查器或工具,可以修复文件系统损坏。 […]如果非ECC内存模块出现故障,可能会对您的ZFS池造成不可挽回的损失,从而导致完全丢失存储。

ZFS仅保护您对磁盘上数据的投资。 如果服务器要投入生产,那么你需要尽可能高的正常运行时间,并且ECC可以通过允许服务器在发生内存故障时容忍一个BIT错误来帮助实现。 这可以给你时间来安排和更换失败的记忆,而不会惊慌。

ECC RAM是一件好事,但让我们看看上下文…

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

高端生产质量体系并不适用。

我会补充一点:Microserver是用ECC RAM来指定的 。 你为什么不使用它?