V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
anzu
V2EX  ›  NAS

群晖与威联通因 btrfs 打起来了!

  •  
  •   anzu · 2020-11-03 10:11:03 +08:00 · 17379 次点击
    这是一个创建于 1242 天前的主题,其中的信息可能已经有所发展或是发生改变。
    群晖力陈 btrfs 种种优点
    https://www.synology.cn/zh-cn/dsm/Btrfs

    威联通痛批 btrfs 种种缺点
    https://www.qnap.com.cn/solution/qnap-ext4/zh-cn/

    群晖使用 btrfs 保护企业数据,而威联通使用 zfs 保护企业数据
    https://enterprise-nas.qnap.com/zh-cn/

    有趣的是,群晖并没有针对性地指出 zfs 的缺点
    究竟 zfs 与 btrfs 孰优孰劣?群晖与威联通孰高孰低?各位怎么看?
    73 条回复    2023-08-19 12:17:10 +08:00
    GM
        1
    GM  
       2020-11-03 10:16:24 +08:00   ❤️ 1
    ZFS 什么都好,就是太费内存了。
    czhu
        2
    czhu  
       2020-11-03 10:17:37 +08:00
    自己使用的是 FreeNAS 的 ZFS

    之前了解的是 ZFS 比 BTRFS 更加成熟 但是对硬件要求更高 (吃内存)
    去年看到说 BTRFS 还有几个关键 bug 没修复 有砖家说关键应用不可信 家用可能无所谓吧
    另外 ZFS 扩容不方便 不知道 qnap 是否有解决方案
    kerro1990
        3
    kerro1990  
       2020-11-03 10:23:28 +08:00
    BTRFS 还可以吧
    Keyes
        4
    Keyes  
       2020-11-03 10:28:00 +08:00
    说真的这种基础组件,还是比较信任*BSD 的那一套

    但这东西争起来就像 PHP 世最一样

    LZ 银币拿好
    wzhpro
        5
    wzhpro  
       2020-11-03 10:28:50 +08:00
    @GM 内存便宜
    MicroBotter
        6
    MicroBotter  
       2020-11-03 10:33:35 +08:00   ❤️ 1
    Fedora33 的默认格式最近换成 Brtfs 了。
    GM
        7
    GM  
       2020-11-03 10:33:50 +08:00
    @wzhpro 内存是便宜,但是主板能插的内存条是有限的!一般来说,自己 DIY NAS 的主板最多只能插 4 条,16*4 也就 64G 🤣
    momocraft
        8
    momocraft  
       2020-11-03 10:51:01 +08:00   ❤️ 1
    这批 btrfs 的文章简直... 黑都不会黑

    fs 自带快照叫 “致灾性的空间管理”,ext4 只能 block 级快照却 “有效对抗勒索软件的攻击”,不知道这样的宣传口径又如何评价自家的 zfs 快照

    如果宣传反映企业品质,只能说堪忧
    tankren
        9
    tankren  
       2020-11-03 11:01:20 +08:00
    @GM #7 那也可以满足 64T 存储了啊 而且 1T 对 1G 是推荐值
    12101111
        10
    12101111  
       2020-11-03 12:13:18 +08:00
    我多次见过 btrfs 用户出现丢失数据的情况,从来没有见过 ZFS 丢失数据的情况.
    ZFS 除了 ARC 导致的双重内存占用之外完全好过 btrfs
    optional
        11
    optional  
       2020-11-03 12:17:05 +08:00 via iPhone   ❤️ 1
    zfs 威联通几个型号有 ecc 的?
    crazycen
        12
    crazycen  
       2020-11-03 12:22:31 +08:00
    看了文章,QNAP 用的是 ext4 呀!!!
    mortal
        13
    mortal  
       2020-11-03 12:34:17 +08:00   ❤️ 1
    这也不叫互相掐架吧。

    个人经历,不具普遍性:之前有一次在 SSD 上重装系统( openSUSE KDE ),用了 BTRFS,结果没用几天竟然挂了。没觉得哪里好,重装还是选回了 EXT4 。
    mrzx
        14
    mrzx  
       2020-11-03 12:48:18 +08:00
    zfs 缺点就是吃内存,内存推荐 ecc.其他什么都略微胜 btrfs 一筹

    zfs 也更成熟,现在都发展到 zfs2.0 了.pve 虚拟化都采用了 zfs
    如果说数据安全性,明显 zfs 比 btrfs 好,大规模商业应用选用 zfs 的也远比 btrfs

    说实话,群晖仅仅是易用性做的好,面向小型企业和家庭用户还行。。。。。大型规模应用这玩意就是找死。。。
    matrix67
        15
    matrix67  
       2020-11-03 12:50:01 +08:00
    rsync.net 从 2001 年开始运营,搞备份应该算是比较有经验了吧。从 2012 年夏天他们开始用的就是 zfs 。
    https://www.rsync.net/resources/faq.html
    mrzx
        16
    mrzx  
       2020-11-03 12:50:46 +08:00
    在补充一点,zfs 的内存要求多变态?大概是 1TB 存储空间就要 1G 物理内存。。当然,这是开启了“重复数据删除”特性下必须要达到的内存容量。如果不开,可以适当稍微减少一些内存。
    wanguorui123
        17
    wanguorui123  
       2020-11-03 13:10:02 +08:00
    威联通 QuTS 采用 ZFS 了
    laminux29
        18
    laminux29  
       2020-11-03 13:10:20 +08:00
    1.任何文件系统都有自己的优势与劣势。

    2.如果预算低到只能上群晖或威联通了,建议还是走稳妥成熟的文件系统为好。当然,如果觉得数据不值钱,冒险尝试新特性也行,但你要清楚,这种策略是拿风险来换取自己开心。
    Osk
        19
    Osk  
       2020-11-03 13:40:27 +08:00 via Android
    zfs 没进内核主线 (?) 有点闹心,不过我用 btrfs + mirror (raid1)。

    现在已经换成存储空间 + ReFS 了,Linux 再见。
    sadan9
        20
    sadan9  
       2020-11-03 13:45:52 +08:00
    @Osk 存储空间+ReFS 是大坑……参考我之前的帖子……
    https://v2ex.com/t/415587
    INDEX386
        21
    INDEX386  
       2020-11-03 14:00:47 +08:00
    没记错最早使用 BTRFS 的厂商是 NETGEAR.....威联通仅在他的 QTS HREO 和 QES 系统中使用 BTRFS 文件系统,普通的 QTS 还是使用的是 EXT4 啊
    shutongxinq
        22
    shutongxinq  
       2020-11-03 14:07:23 +08:00 via Android
    Btrfs 就是了 linux 社区对许可证不兼容的 zfs 的回应。btrfs 的特性很强,比 zfs 多很多功能,可惜初始阶段代码写得过快,设计有些欠缺。现在成屎山了,RAID 5, 6 现在还有 write hole 以外好几个严重的 bug 。
    shenlanAZ
        23
    shenlanAZ  
       2020-11-03 14:07:28 +08:00
    @sadan9 #20

    NTFS 遇到错误也会直接删数据的...

    我现在也还是被迫 ReFS,重要的数据可以通过百度盘客户端继续备份。
    ryd994
        24
    ryd994  
       2020-11-03 14:08:24 +08:00 via Android
    zfs 是稳定不假
    但是 zfs on Linux 可不一定
    zfs 最好还是上 FreeBSD 原生
    ryd994
        25
    ryd994  
       2020-11-03 14:12:45 +08:00 via Android
    @mrzx 取决于工作内容
    如果是连续读写且负载不大的话(比如家用 nas 就是)那 8G 完全足够
    我 8G 内存,6*8TB,也完全没问题。瓶颈是网络。FreeBSD 内部测试 500MB/s 以上。也就是说要卡 IO 的话你得上 60Gbps 内网。而且 500MB/s 其实差不多是硬盘的极限了
    min
        26
    min  
       2020-11-03 14:15:00 +08:00
    zfs dedup 关掉的情况下对内存的消耗也不太高
    nas 这种还是用成熟的方案吧
    yanqiyu
        27
    yanqiyu  
       2020-11-03 14:17:54 +08:00   ❤️ 1
    常用 btrfs 有一段时间了,再加上有段时间折腾超频电脑意外死机次数不少,这时候 btrfs 鲁棒性还是不错,没遇到过死机重启导致的文件系统问题。但是对于少数个例遇到文件系统炸了其实也有可能,尤其是前些年到处听说 btrfs 会炸但是现在感觉好些了。

    至于 QNAP 文章中提到 btrfs 导致性能下降(对比 ext4 ),拿一个没有 cow 没有 checksum 的文件系统和一个 cow+checksum 进行对比是当然的结果,但是取决于是否愿意用这些性能换取 cow 和校验的收益。

    至于无法区分快照存储区以及数据存储区? btrfs 下大家都是子卷,本来就是一回事...也就没有什么快照或数据存储区的东西了。追踪子卷 Exclusive 占用在 btrfs 下只需要 btrfs fi du -s 即可

    然后 QNAP 觉得 btrfs 的快照不如 ext4+块级快照就有点令人摸不着头脑,我猜他可能指的是 btrfs 的快照作为子卷假设可读写然后也会被勒索软件橄榄?那确实是个问题,只读快照或者一开始就规划子卷结构把让快照的子卷不被挂载就没问题了。

    但是 btrfs 现在确实并非完美,具体已知问题可见: https://btrfs.wiki.kernel.org/index.php/Status 看着自己的使用场景决定要不要用吧
    12101111
        28
    12101111  
       2020-11-03 14:20:38 +08:00   ❤️ 1
    @ryd994 zfs on freebsd 和 zfs on linux 合并成 OpenZFS 2.0 了,代码基础是 zfs on linux 的, FreeBSD 13 已经采纳 OpenZFS 2.0 了, 推动方就是 FreeNAS(现在名称为 TrueNas core)的开发商 ixSystems

    ZFS 进不进主线并不妨碍人们用他, 就像 Nvidia 连源码都不开发,照样有一群人用, 要是 btrfs 的代码质量稍那么好一点,就不会有人再写一个 bcachefs
    mrzx
        29
    mrzx  
       2020-11-03 14:22:17 +08:00
    @ryd994 这个是的,目前在 zfs2.0 里已经所有改善了。。我家里的 nas 跑的就是 freebsd+zfs
    ipixeloldc
        30
    ipixeloldc  
       2020-11-03 14:30:21 +08:00 via iPhone
    @ryd994 然而 FreeBSD 用的就是 ZFS on Linux 他们的东西...
    mrzx
        31
    mrzx  
       2020-11-03 14:33:46 +08:00
    @ryd994 我妈家里装修时,我弄的是超六类和单模单根双芯光纤混用,一个房间有 6 根网线和 3 根光仟,有专门的 12U 机柜放配线架和光仟托架、理线架。nas 都是万兆单模网卡,10G 的 sfp 模块(我们尾纤都是 lc),且为了提高随机 4k 读取,我混用了 ssd 读和写各一块硬盘。家里的电脑只有固态硬盘,更大容量硬盘由 nas 的 iscsi 协议提供。。。
    且瓶颈不在于千兆网络,至少千兆网络能提供的连续读写能达到 100M 字节每秒以上(这个差不多接近机械硬盘连续读写速度的极限了),主要是随机 4K 读写性能。这个提升才是最重要的。我家用 iscsi 这种方式增加硬盘已经用了 4 年多了。

    老妈那里都是千兆接入桌面,nas 万兆接入。我家里则是台式机万兆接入,nas 20G 链路聚合( lacp 协议)。
    无论是老妈家里,还是我家里装修弱电时,都是我亲自带着装修公司做的,装修公司找了弱电师傅,除了提供一个光仟熔接机之外,没起到任何作用。

    现在家里的交换机用的都是 MikroTik CRS328-24P-4S+RM,4 口万兆+24 口千兆 poe,以前都是找做系统工程中淘汰下来的华为交换机用的,可是设备老化厉害,风扇噪音大。早淘汰了。
    ipixeloldc
        32
    ipixeloldc  
       2020-11-03 14:36:37 +08:00 via iPhone
    @ipixeloldc 哦,好吧,我错了,这事从 18 年弄到现在,原来还没搞好啊…我的锅
    kokutou
        33
    kokutou  
       2020-11-03 14:39:05 +08:00
    买个群晖, 再买个威联通
    一个用 btrfs, 一个用 zfs
    相互做同步
    是不是就能万无一失了
    reus
        34
    reus  
       2020-11-03 14:43:36 +08:00
    @ryd994 FreeBSD 现在也用 OpenZFS,而 OpenZFS 就是原先的 zfs on linux 。何况,原生 zfs 在 Solaris,也不在 FreeBSD 。
    hjc4869
        35
    hjc4869  
       2020-11-03 14:45:56 +08:00 via Android
    @sadan9 你 ReFS 底下是 RAID 卡做的 raid1 还是存储空间做的 mirror ?
    reus
        36
    reus  
       2020-11-03 14:50:27 +08:00
    除了 zfs 和 btrfs,还有一个 bcachefs 在开发,打算合并进主线。另外 redhat 也有个 stratis,基于 xfs 的,很不成熟。
    btrfs 还是可以的,至于 raid5/6 之类,官方 wiki 上都写了 unstable: https://btrfs.wiki.kernel.org/index.php/Status 别用这些不 OK 的特性就是了。
    zfs 一样会有事故,搜 zfs data loss / corrupt 也有不少结果
    何况,硬盘本身就会坏,重要的数据是需要额外备份的,本地文件系统足够稳定就行
    hjc4869
        37
    hjc4869  
       2020-11-03 14:50:42 +08:00 via Android
    如果一定要杠,那 zfs 除了 Oracle 家的官方实现,其它的都是山寨版灵车。
    liuxu
        38
    liuxu  
       2020-11-03 14:52:53 +08:00
    @hjc4869 灵车好,飘逸
    Tyuans
        39
    Tyuans  
       2020-11-03 16:01:04 +08:00
    这些都不关心,哪家 exfat32 套件能免费我站谁,微软都不收授权费快两年了。
    Tyuans
        40
    Tyuans  
       2020-11-03 16:01:30 +08:00
    @Tyuans #39 exfat
    Osk
        41
    Osk  
       2020-11-03 17:03:01 +08:00 via Android   ❤️ 1
    @sadan9 惊现楼主,楼主当年这个帖子让我对 refs 印象很深刻🤣
    不过这是 feature /doge/
    yklaxds
        42
    yklaxds  
       2020-11-03 17:41:02 +08:00 via Android
    推荐 FreeBSD
    jim9606
        43
    jim9606  
       2020-11-03 18:26:31 +08:00
    如果 btrfs 没 bug,我也不会去用 ZFS 。
    至少 zfs 的商业运用经验比 btrfs 多得多,而且现在 openzfs 的代码已经是 linux 与 freebsd 共用 codebase 了,而且维护活跃,至少在可靠性上不会比 freebsd 上的实现差。docker 到现在也没有 btrfs 的 storage driver 。
    Sharuru
        44
    Sharuru  
       2020-11-03 18:36:08 +08:00
    zfs, btrfs 都用过……反正就那样,跑着也挺顺。
    目前没碰到过任何故障。

    反正重要文件是有多重备份的。
    Jirajine
        45
    Jirajine  
       2020-11-03 18:41:54 +08:00 via Android
    sockpuppet9527
        46
    sockpuppet9527  
       2020-11-03 19:26:38 +08:00
    如果一定要杠,你可以发现 e2fsprogs 这玩意写的和缝合怪没什么区别。
    (狗头保命
    ricardo
        47
    ricardo  
       2020-11-03 19:33:33 +08:00
    自己搭 archlinux + btrfs(原生 RAID1) nas+router 一体,用了有半年了,感觉还不错。
    ooxxcc
        48
    ooxxcc  
       2020-11-03 23:00:15 +08:00
    zfs 的灵活性还是比 btrfs 差一些

    zfs 文件系统有几块盘、raid 级别是怎样的,都是创建时设定好的

    而我的 btrfs 从 14 年用到现在,从两盘位慢慢扩展到六盘位,经过了 single->raid1->raid5->raid10->raid6->raid10 一系列转换,没重建过分区,也没出过大问题
    bclerdx
        49
    bclerdx  
       2020-11-03 23:16:27 +08:00
    @ooxxcc 那么是群辉好呢?还是威联通好呢?
    coolcfan
        50
    coolcfan  
       2020-11-03 23:28:24 +08:00
    以前在工作用的笔记本上用过 Btrfs……具体记不清了,但是有遇到过一些奇怪的问题

    所以后来就就没有再用了
    ooxxcc
        51
    ooxxcc  
       2020-11-03 23:33:19 +08:00
    @bclerdx 我都不用
    henvm
        52
    henvm  
       2020-11-03 23:37:02 +08:00 via Android
    群晖夸安全 btrfs 安全
    威联通批评 btrfs 性能
    喷点都不一样。鱼和熊掌不可兼得
    sadan9
        53
    sadan9  
       2020-11-04 00:12:33 +08:00
    @hjc4869 存储空间的奇偶校验空间(类似 raid5 )
    ladypxy
        54
    ladypxy  
       2020-11-04 06:29:38 +08:00 via iPhone
    BTRFS 这种死掉的格式没啥讨论的价值啊
    shutongxinq
        55
    shutongxinq  
       2020-11-04 06:43:57 +08:00 via iPhone
    @jim9606 linux 和 bsd 的代码合并之后,开发速度至少是以前的两倍。去年一年的新特性已经相当于 2015-2018 的新特性数量了。

    准确说是,之前 openzfs 挂在 bsd 下面,开发人员严重不足,贡献者寥寥。现在恢复正常了。
    shutongxinq
        56
    shutongxinq  
       2020-11-04 06:49:40 +08:00 via iPhone
    @ooxxcc btrfs 主要就是 raid5,6 没有搞好。如果有公司能够集中 5 个高手用一年时间把 btrfs 的 raid5,6 理顺就好了。write hole 都暂时不用修复(毕竟实际遇到的可能性低),只要基本的重建之类的运行没有 bug,没有大的性能问题就好了。

    至于 bcachefs,功能比 btrfs 还要霸道,把分层存储加进来了。搞 bcache 的老哥在搞,感觉靠谱,可惜老哥至少搞了 5 年了,而且老哥每次试图合并进主线都要被 linus 怼出翔...
    cheng6563
        57
    cheng6563  
       2020-11-04 08:21:40 +08:00 via Android
    我司测试环境的 MySQL,每天晚上把数据库模板 cp 一份出来测试用。为了快速复制用了 btrfs,然后过了几周文件系统就炸了。操作系统是最新版的大便,机器也没关机过
    zh5e
        58
    zh5e  
       2020-11-04 09:01:45 +08:00
    平时主要用群晖 918,威联通 453bmini 异地做备份 - -
    dddddd
        59
    dddddd  
       2020-11-04 10:27:02 +08:00
    btrfs,zfs 都不用,老夫就用 ext4,不为别的,就为群晖挂了能方便的抢救出数据
    ooxxcc
        60
    ooxxcc  
       2020-11-04 10:58:05 +08:00 via iPhone
    @shutongxinq 试过几次 btrfs raid5/6/50,有很严重的性能问题

    无论是读写还是 scrub 都慢的不行,最后还是回退到了 raid10

    总之 btrfs 留住我的是灵活性,且 raid10 在性能和可靠性上都还可以,就是浪费空间…
    gearfox
        61
    gearfox  
       2020-11-04 16:19:26 +08:00
    还不如两家都换 zfs
    nuk
        62
    nuk  
       2020-11-05 02:01:13 +08:00
    btrfs 生产环境用的比较少吧,可能没啥毛病,但是天然就不信任
    唯一用 btrfs 的大厂 facebook,自己都不太相信 btrfs:
    The good, the bad, and the unresolved
    Bacik concluded with a summary of what has worked well and what has not. He told the story of tracking down a bug where Btrfs kept reporting checksum errors when working with a specific RAID controller. Experience has led him to assume that such things are Btrfs bugs, but this time it turned out that the RAID controller was writing some random data to the middle of the disk on every reboot. This problem had been happening for years, silently corrupting filesystems; Btrfs flagged it almost immediately. That is when he started to think that, perhaps, it's time to start trusting Btrfs a bit more.
    geniussoft
        63
    geniussoft  
       2020-11-06 00:12:05 +08:00
    一大堆用黑群晖的,有几个人用黑威联通?

    没事不好好完善一下自己半成品的垃圾,就知道成天瞎黑。

    “致灾性的空间管理”,那你威联通为啥也用“致灾性的空间管理”的 zfs ?
    “效能低下”,文件系统自带文件纠错信息,能不用处理器和 IO ?

    反正我曾经在你们威联通的官网上,跳转下载了雷电 3 网卡的固件升级程序。

    网卡立刻就 GG 了。

    然后找你们的技术支持,毫无歉意,表示都是我不应该升级,都是我的责任,自己自费寄修。

    呵呵。

    不过还是感谢你们,让我能买到更便宜的群晖。
    liukangxu
        64
    liukangxu  
       2020-11-07 16:42:28 +08:00
    @sadan9 存储空间的奇偶校验空间性能如何?
    Eleutherios
        65
    Eleutherios  
       2020-11-09 11:26:18 +08:00 via iPhone
    个人体验 ZFS 比 BTRFS 好,但是前者成本好高啊啊啊啊
    changyou
        66
    changyou  
       2020-12-10 18:24:26 +08:00
    铁威马
    wsxy162
        67
    wsxy162  
       2021-10-07 20:03:28 +08:00
    QNAP 不用 BTRFS 却用 ZFS,然后不对比 ZFS 和 Ext4 了,这算自己打自己脸吧。
    cdh1075
        68
    cdh1075  
       2022-02-26 19:54:04 +08:00
    最好的是 zfs on bsd ,这点不用有争议,如果只是单纯弄一个储存服务器肯定不用犹豫,直接上这个组合。
    但 nas 不仅仅是传统的储存服务器,还要有共享、转码、离线下载之类的功能,这些功能用 bsd 有点不太方便,要用 linux ,然后争议就出来了。
    zfs on linux 和 btrfs on linux 哪个好呢?
    关于 btrfs ,红帽已经给出了响亮的评价,在 rhel 6 和 7 官方支持了两个版本之后,从 8 开始,不再官方支持 btrfs ,转而开始搞 stratis ,以往不再官方支持的,基本都是老旧或可替代的东西,少有处在青壮年期的独苗,结合 btrfs bug 满天飞的特点,很显然红帽认为,即使在红帽工程师的技术支持下,btrfs 也没法有效保证客户的数据安全,强如红帽都觉得很无力的东西,群晖又能做成啥样?
    反观隔壁 zfs on linux ,除了过于庞大可能损失性能,整体是很稳定的
    所以,选 zfs
    RainFlying
        69
    RainFlying  
       2022-06-15 10:03:32 +08:00
    @mrzx 我用的服务器,不限制 ARC 内存,不管你存储空间多大,最后肯定会用掉一半左右的内存。存储总共 70T 左右,ZFS 用掉 505G 的内存,后来限制到了 20G 。
    ungrown
        70
    ungrown  
       2022-12-13 16:43:24 +08:00
    @RainFlying #69 ARC 不用限的,其它程序需要更多内存的时候,ARC 会自己缩的。
    RainFlying
        71
    RainFlying  
       2023-03-16 08:32:22 +08:00 via iPhone
    @ungrown 这是理论,实际上,如果 ARC 用掉 1T 内存,可用只有 100G 的时候,我要申请 500G 或者 1T 内存的时候直接报错,ARC 压根来不及释放。
    ungrown
        72
    ungrown  
       2023-03-16 09:13:24 +08:00
    @RainFlying #71 这不能算是 ARC 的问题,这是硬件限制。而且被限制的也不是 ARC ,而是其他的应用程序。
    来不及腾出空间的话,那肯定是场地太小的问题,是提供场地的一方的失职,而不该怪到原先就在场地上的人或者新来的人头上。
    就算没有 ARC ,空间不够终究还是不够,难道不是一样地报错吗?
    swap 就是用来防这事的,为什么不开?
    tomato1111
        73
    tomato1111  
       223 天前
    我还以为威联通用上 ZFS 了呢。。。ssh 上 nas 一看,用的是 EXT4 啊! 那你扯什么 zfs 的优点啊?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2692 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 53ms · UTC 15:29 · PVG 23:29 · LAX 08:29 · JFK 11:29
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.