技术积累
日进一寸

omv中启用zfs后的一点感想

zfs,叫人又爱又恨。

优点自不用说,我就说说缺点。

1、需要ECC内存。

绝大部分人的nas设备都是普通内存,没有ecc校验机制,虽然也能用zfs,但是出现文件系统错误的概率高出来不是一点半点。

虽然有人说,没有ecc也没关系,但实际上,你仔细看下zfs的文件校验机制会发现,每当 ZFS 遇到错误时(不管是在清理时还是按需访问文件时),都会在内部记录该错误,以便您可以快速查看池中所有已知错误的概述。

仔细阅读这个描述就能发现,如果错误发生在校验过程中,这个错误也会被记录用于纠正文件错误(其实是正确的,但是校验错了),而这个校验过程发生在内存中,内存没有校验机制的结果就是内存级的错误导致zfs校验错误,从而进一步导致目标文件被错误的纠正,从而导致文件错误。

我不确定这个描述你看懂了没,如果没看懂就多看几次,总之结论就是,对zfs来说,ecc内存是必需的,否则会面临巨大的数据风险,尤其是文件读写量非常大的场景。

2、需要大量的内存

因为zfs会缓存大量文件在内存中,所以一般来说,zfs需要的内存是非常大的。同时这也是为什么zfs需要ecc内存,因为zfs太依赖内存了。

3、操作不是那么简单。

对于技术从业者来说,几条zfs命令不是什么难事,但是对于普通用户来说,如果nas的web界面无法提供足够多的zfs操作选项,当zfs发生异常需要修复或者替换硬盘时,那麻烦可就有点大了。

当然,这些对于有合适的设备的用户来说并不是很大的问题。问题在于很多人认为在普通硬件设备上也可以安全的使用zfs,这势必会带来很大的风险。

另,有不少人引用b站的一个所谓实测ecc内存对zfs影响的视频,简直是可笑。

首先,每个人使用zfs的环境不一致,配置不一样,内存型号不一样,硬盘不一样,你用一套硬件来验证一个结论,微软都不敢这么搞。

这个视频简直是可笑之极,也能被拿来证明zfs不需要ecc?!

内存的原理是什么,为什么linux服务器可以运行几年不关机,前提是什么?是ecc内存。

赞(0)
未经允许不得转载:DongVPS » omv中启用zfs后的一点感想
分享到: 更多 (0)

评论 1

  1. #1

    那我主板不支持ecc,unraid到底应该用zfs不

    匿名2个月前 (09-10)回复