V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
KanVivii
V2EX  ›  Linux

关于 NVME 硬盘 Linux RAID, ZFS 以及其他阵列方式

  •  
  •   KanVivii · 2023-02-10 20:27:53 +08:00 · 3160 次点击
    这是一个创建于 412 天前的主题,其中的信息可能已经有所发展或是发生改变。

    手头有 6 块 2T NVME P4510 。最初想的是做 software RAID 5 ,但是看了小胖的视频后 Level1Techs,又考虑换到 ZFS 。 因为后期有计划再增加 6-8 块相同的 2T NVME ,ZFS 对扩容的支持不是太好,要一次性增加多块儿硬盘,单次花费比较大

    不考虑硬 RAID ,阵列卡太贵了不太划算

    想请教下大家对 Linux software RAID, ZFS 之外 还有什么好的多盘支持的方案

    21 条回复    2023-06-09 21:10:03 +08:00
    Remember
        1
    Remember  
       2023-02-10 20:41:53 +08:00
    btrfs
    SaltyKitkat
        2
    SaltyKitkat  
       2023-02-10 22:22:34 +08:00
    btrfs 的 raid5/6 目前不大能用
    ltkun
        3
    ltkun  
       2023-02-10 23:56:01 +08:00 via Android
    哪种 raid 能直接增加硬盘数量? zfs 应该已经可以算得上最灵活的 raid 方式了吧
    fisherwei
        4
    fisherwei  
       2023-02-11 00:21:46 +08:00
    @ltkun
    搜索一下 LSI 在线扩容
    esee
        5
    esee  
       2023-02-11 00:22:42 +08:00
    上 unraid 呗..单独盘校验,扩容贼方便,就是性能不会有那么强
    fisherwei
        6
    fisherwei  
       2023-02-11 00:26:56 +08:00
    由于 nvme 的写入速度太快了,如果用 ZFS 依靠 cpu 做 XOR 的话,压力可能会非常大,甚至成为瓶颈,建议搞个模拟环境做个 benchmark 。
    sNullp
        7
    sNullp  
       2023-02-11 00:37:39 +08:00 via iPhone
    zfs 已经支持在线扩容了。虽然不完美但别的方案也不完美。
    shalingye
        8
    shalingye  
       2023-02-11 01:38:26 +08:00 via Android
    考虑下 VHD ?通过父子继承实现类似阵列的功能,这个我是打算做个管理软件的,还没来得及搞
    KanVivii
        9
    KanVivii  
    OP
       2023-02-11 02:42:29 +08:00
    @sNullp 刚看到 ZFS 3.0 扩容会方便好多了

    @fisherwei CPU 压力的话还好 两颗 7542 不太担心

    @ltkun RAID5 倒是可以增加 但是数据重新校验也是很耗时 挺麻烦


    谢谢大家
    mxT52CRuqR6o5
        10
    mxT52CRuqR6o5  
       2023-02-11 03:48:29 +08:00
    unraid 是我见过最灵活的,不过缺点是不能在线扩缩容
    wengych
        11
    wengych  
       2023-02-11 10:39:29 +08:00
    unraid 容易 boom
    vibbow
        12
    vibbow  
       2023-02-11 10:57:00 +08:00
    mdadm raid 5 + xfs 路过
    roswellian
        13
    roswellian  
       2023-02-11 11:48:24 +08:00
    ZFS 永远的神
    xyjincan
        14
    xyjincan  
       2023-02-11 13:10:26 +08:00
    ZFS 可以添加硬盘,前期 6 块,后期加 6 块没有问题,完美兼容,原理类似,一块磁盘,分区分小点,后面再扩展分区,你用虚拟机试试这个
    documentzhangx66
        15
    documentzhangx66  
       2023-02-12 12:13:41 +08:00
    1.raid 别用 btrfs ,很多人都说有 bug 。

    2.Linux raid ,最稳的方式,还是 raid 卡。当然,用了这玩意,远程热备还是要做的,毕竟 raid 卡也有坏掉的时候。
    documentzhangx66
        16
    documentzhangx66  
       2023-02-12 12:14:23 +08:00
    zfs 不建议用,内存占用太大了,这系统是很多年前设计的,从现在角度来看,连 btrfs 都不如。
    justaname
        17
    justaname  
       2023-02-12 15:13:00 +08:00
    家用环境 raid 卡绝对不可能比软 raid 稳,上 BBU 都可能出问题,硬卡 RAID5/6 的回写缓存是一个大坑。为了基本的写入性能总得开回写缓存吧,一旦因为各种原因 RAID 盘掉线(家用环境没有 2 冗余电源,没有 SAS 冗余链路,甚至硬盘都不一定是正规企业盘),缓存里的数据就丢了,要是缓存里的数据恰好是 superblock 或者 metadata ,嘿嘿那就有得折腾了,阵列卡可不知道自己缓存里是啥玩意儿。
    BBU 理论上可以应对这种情况,但实际上并不一定,我就遇到过损坏文件系统的情况。硬盘掉线了但是阵列卡没有掉线,然后所有硬盘都变成 UBad ,可以用 LSI 的命令强行让所有盘上线,问题是我缓存里的 superblock 丢了呀,最后一点办法都没有,还好有备份。ZFS 这种软阵列基本上不太可能出现这种情况,所有修改基于 transaction ,掉电也可以回溯,反正所有缓存都是 ZFS 自己管理的,ZFS 自己不出问题那就没问题。硬阵列就算上面的文件系统是有日志,因为回写缓存的存在,文件系统并不能保证关键数据真的落盘了,要安全除非把回写缓存关了,不然多余 1 张盘被踢的话就只能自求多福了,鬼知道回写缓存里的内容啥时候给你丢了。
    当然硬阵列也有相对 ZFS ,MDADM 的性能优势,尤其是随机读写。因为 ZFS recordsize 和 padding 的存在,要是追求随机读写性能设置很小的 recordsize 的话 ZFS 的空间利用率会非常烂,搞不好还不如直接用 mirror 了。
    至于 btrfs ,吃过两次亏之后我是不会在大容量存储上使用 btrfs 了,只能用脆弱形容
    KanVivii
        18
    KanVivii  
    OP
       2023-02-15 14:24:15 +08:00
    @justaname

    非常感谢这么详细的讲解 raid 和 zfs 我都尝试跑一阵子 丢点电影在上面试一下
    看看后面的效果

    因为机器会丢在机房里面跑 所以有些方案可以尝试
    0x663
        19
    0x663  
       315 天前
    @KanVivii 最后采用的什么方式
    KanVivii
        20
    KanVivii  
    OP
       314 天前
    @liushaokang

    其实一直在尝试,目前就 LVM 做个池子,然后定期拷贝全部文件到另外的存储池

    NVME Soft RAID 性能下降还是蛮严重的,过几天 RAID 卡到了试一下效果

    ZFS 因为吃内存而且不咋熟悉所以没有再考虑
    mightyang
        21
    mightyang  
       293 天前
    之前用 zfs ,图便宜,买的小克思的机箱,持续写入个 100G 的时候某个端口会掉,排查了好久,除了主板机箱外,都换过,最后才确定是背板问题,nnd ,让客服发了个新的背板过来,两个端口会掉。然后特效写缓存,直接给写废了。重启机子,导入 zfs 池失败,github 方法都试过了,没办法,数据不要了。直接换个好点的机箱 + raid 卡弄弄了,再也不敢买杂牌的机箱了,也不敢用 zfs 了,极端情况下,都是弱鸡。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1246 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 17:59 · PVG 01:59 · LAX 10:59 · JFK 13:59
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.