为什么大多数的 NAS 系统没有采用 Snapraid + MergerFS 的磁盘序列方案?

2 月 12 日
 marcosteam
现在的 NAS 系统磁盘序列方案,群晖有 SDR ,极空间有 ZDR ,Unraid 有类似的 Array ,只有 OpenMediaVault 有 Snapraid+MergerFS (还需要自己手动安装插件,非原生支持)。

按理来说 Snapraid+MergerFS 这种 [带一定冗余的,硬盘损坏对整个系统损失较小的磁盘序列] 是非常契合将 NAS 用作媒体中心的用户啊,因为就是放点随时能重新下的片,完全不用管数据可用性,只是想把一堆硬盘结合起来获取最大的硬盘可用空间。为什么很多 NAS 系统都完全不考虑呢?难道还有什么隐藏的风险吗?
2438 次点击
所在节点    NAS
20 条回复
cpstar
2 月 12 日
这个“完全不用管数据可用性,只是想把一堆硬盘结合起来获取最大的硬盘可用空间”听起来很像 RAID-0
aloxaf
2 月 12 日
@cpstar 还是不一样的,raid0 坏一块就全挂了,这个方案只会丢失一块硬盘的数据。
marcosteam
2 月 12 日
@cpstar #1 但是 RAID0 损一块盘整个阵列全炸,Snapraid 只炸坏的盘,还有一定的冗余可以确保有一定的自修复能力,再不济也可以 snapraid check 看看坏了哪些文件针对性的去还原
WizardLeo
2 月 12 日
比性能,mergerfs 读写会卡 io ,unraid 的 array 也有基本一样的问题。ZDR 就是单纯单盘,简单粗暴。
比空间,zdr 这种重要数据复制一份的做法比起牺牲一块最大的盘做奇偶校验可以节约更多空间。
比可恢复性,坏一块盘 ZDR 会丢不重要的数据,两块盘起会丢重要数据。snapraid 坏一块盘不丢数据,两块盘起会一次性损失两块盘的数据。
所以结论就得出来了:
因为家用 nas 盘位少、重要数据少,对于 4 盘位塞满 4t 的典型家用 nas 用例来说,个人重要数据至少要 2t 以上 snapraid 才划算(绝大部分人 500g-1t 就顶天了,算上手机 pc 备份也很难用到 2t)。
考虑到 ZDR 这样的设计可以给重要数据存更多份而 snapraid 做更多盘校验空间利用率会血崩,不使用 snapraid 挺合理的。
q000q000
2 月 13 日
🐶 所以我选 Unraid
ruidoBlanco
2 月 13 日
unraid 其实就是类似 mergerfs+snapraid 的方式啊。
thetbw
2 月 13 日
我就在用,不过这种方案好像做不到“高可用”,也就是热切换,我试过每改一下配置都要重启服务,然后其他正在使用 smb 连接的服务就挂了。
dmanbu
2 月 13 日
我不要那么多花里胡哨的功能,我只要稳定。raid6+热备盘在长时间的运行中符合我就要求就够了
btrfs 崩了我两次 volume ,都被我抛弃了,还是 ext4 稳
takanashisakura
2 月 13 日
试过,最后选了 zfs
windyboy
2 月 13 日
面对 ZFS 这么成熟的软件系统,这么多人选择视而不见
dilidilid
2 月 13 日
snapraid 不具备实时性,同步之前的数据会丢,这可能导致大量客诉。mergerfs 的 creation strategy 其实挺复杂的,如果用最简单的均匀分布,会导致一张盘损坏均匀的丢掉 1/N 的数据,对大部分人来说和全丢差别也没那么大。。。考虑到大部分 NAS 出货都是 2 盘/4 盘,如果真的非常在意恢复可靠性做 RAID1 或者 RAID10 就好了。

实际上我 DIY 下来觉得最省事的还是 ZFS ,自带加密、压缩、卷管理、快照,不管是单盘还是 RAIDZ 都非常可靠
DAMNCRAB
2 月 13 日
借题问一下 Snapraid + MergerFS 的 ssd 缓存方案怎么做
busier
2 月 13 日
越是底层的东西 就越不能说换就换
ruidoBlanco
2 月 13 日
@DAMNCRAB 我没有弄过 mergerfs ,但是自己撸,ssd cache 方案无非是 bcache 或者 lvmcache ,bcache 让我头疼过,所以我自己要弄就 lvmcache ,那么就是 lvm 里面对单盘做 cache ,然后再交给 mergerfs 。

复杂度不值得,还是 unraid 好了。
yukinotech
2 月 13 日
@dmanbu 请教一下 raid6 具体是什么方案呢,软件 raid 还是硬件 raid 呢?
dmanbu
2 月 13 日
@yukinotech NAS 系统自带软 raid 呗,反正我是不会花钱买阵列卡的。毕竟阵列卡也会坏,坏了该担心的不一定是钱的问题,而且同款还买不买得到的问题
YsHaNg
2 月 13 日
@DAMNCRAB 自己撸 要么用 unraid 还有插件可以扩展缓存池功能
YsHaNg
2 月 13 日
@windyboy 没进内核 mergerfs 这样的还图一个随时拆盘插任意 linux 读
laminux29
2 月 13 日
OpenZFS 有个巨大的问题,就是压缩与去重这两个功能,要不就关闭,一旦启用,这两个功能,只有实时的,没有离线的。如果你不介意这个问题,用 OpenZFS 其实是最好的选择,因为它有带校验的 raid 5 + 无限热备盘 + 自动定期全局数据校验。

另外,如果你有带硬盘指示灯的专业级 raid 盘,此时用 Windows Server 会更好,因为它的高级存储池功能,相当于没有缺陷的 OpenZFS ,它的去重并不是强实时的,这点特性特别好。只是 Windows Server 的管理维护做的太差了,需要依赖专业硬件的指示灯来对磁盘进行标记,从而进行磁盘的卸载与替换操作。
fairytale
2 月 14 日
慢是主要原因,没其次有成熟快照方案。除了 unraid 这个独苗,其他没这么干的。想玩的话,omv 自己搭就是了(适用于多个容量参差不齐的杂盘混搭,甚至可以网盘混搭/doge )

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1192560

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX