V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要把任何和邀请码有关的内容发到 NAS 节点。

邀请码相关的内容请使用 /go/in 节点。

如果没有发送到 /go/in,那么会被移动到 /go/pointless 同时账号会被降权。如果持续触发这样的移动,会导致账号被禁用。
zuotun
V2EX  ›  NAS

硬件还是软件 RAID?

  •  
  •   zuotun · 48 天前 · 3177 次点击
    这是一个创建于 48 天前的主题,其中的信息可能已经有所发展或是发生改变。

    虽然还没组,但是查了一圈未来打算用 ZFS 来存储( Linux 真的不推荐吗?)

    目前只知道硬件卡比较挑硬盘,容量和型号还得一样,但是硬件的优势又在哪里呢,卖那么贵总有它的价值吧,比如带电池和缓存。

    虽然不出意外会选择 BSD + ZFS 作为底层。

    第 1 条附言  ·  48 天前
    发现大家的看法相差还挺大的,总结一下:
    个人使用上软,企业不差钱上硬
    软后续维护快照扩容加盘更方便,硬部署时更快使用方便

    核心还是多备份,避免一锅端
    33 条回复    2024-11-06 10:12:37 +08:00
    dalaoshu25
        1
    dalaoshu25  
       48 天前
    作为一个二十几年 Linux 核心软 RAID 用户,表示如果做不到带电池后备的企业级 RAID 卡,那就安心选择 Linux 核心的解决方案。

    BSD ZFS 什么的听听就好。
    billlee
        2
    billlee  
       48 天前
    带电池的阵列卡写入 DRAM 缓存就算持久化了,对写入 IOPS 性能提升明显,适合用来跑数据库。Linux 上跑 ZFS 是可以的啊,truenas scale 已经是基于 debian 了
    ntedshen
        3
    ntedshen  
       48 天前
    这种硬件全部都是商用产品,你什么时候产生了个人有资格和商用产品讲价的错觉?
    企业清退下来的洋垃圾倒是便宜大碗,带电池 dram 的也不是没有,能不能接受那就看你自己了

    以及 raid 只是 raid 而 zfs 是个 fs ,你也可以选择不用 raidz 而在硬件 raid 上构建 zfs ,只是看起来会很奇怪。。。
    kk2syc
        4
    kk2syc  
       48 天前
    什么自动方案方案都没有人肉复制到 n 个硬盘后确认 sha 一致靠谱
    logic2
        5
    logic2  
       48 天前
    @kk2syc 当你在犹豫是不是上 商用方案的时候,就 rsync 一下 sha256 脚本比对一下就行了,大概率就是个人使用场景,直接 rsync 多备份几个地方就行,小姐姐 下载的电影 没必要备份
    bao3
        6
    bao3  
       48 天前
    你要区分一下,raid 是反映磁盘的组合方式,而 ZFS 是磁盘上的文件系统,这是两件事。你组了 raid 后,在它上面跑 extfs ,ntfs ,zfs ,xfs 都可以。
    zfs 的诸多特点是在软件功能上。而且你可以 pve ,同时启用 raid 和 zfs ,很丝滑。目前已经很少有 bsd 的架构了,生态的问题。我用了快 20 年 bsd ,今年了换到了 pve 上
    kokutou
        7
    kokutou  
       48 天前 via Android
    truenas 就可以了,raid5 或者 6 直接用就行了。
    我有个存监控视频的机器,好多块 500g 的旧硬盘,停电很多次,系统,存储都没挂过。
    Mithril
        8
    Mithril  
       48 天前   ❤️ 1
    直接多盘复制就行,RAID 最主要的作用是保证业务延续性,而不是备份。你家里的服务用得上高可用吗?

    至于 ZFS ,你有多大的内存?

    家用最好的办法就是 JBOD ,有需要的文件夹做多盘备份同步就行,其它炸了也不心疼的就无所谓了。
    buxiaozisun
        9
    buxiaozisun  
       48 天前 via Android   ❤️ 3
    cpstar
        10
    cpstar  
       48 天前
    看性能需求和阵列需求,RAID1 这种的,哪个都差不多,但是 RAID5/6 就差别了。

    - 纯软 RAID:也就是 mdadm 这种的,写入性能完全不行;但是由于纯软,稳定性尚可,但可恢复性很高
    - ZFS:性能基本能够追平硬 RAID ,但是牺牲就是 CPU 和内存,特别是内存;至于稳定性尚可吧。
    - RAID 卡,有专门的校验计算芯片,稳定性经过这么多年的发展肯定各种没问题(但前提是钱的投入),而可恢复性就相对较差了。

    另外还有非 RAID 的分布式方案,比如 minio 这种对象存储——但这是文件级别的,块级别的还是 RAID 居多。
    fairytale
        11
    fairytale  
       48 天前 via Android
    unraid ,snapraid
    cnbatch
        12
    cnbatch  
       48 天前
    我一直用 BSD + ZFS ,而不是 RAID 卡,系统是 XigmaNAS ,只用作纯储存,足够稳定可靠。raidz1 ,使用了 5 块盘。

    其中一台 NAS 曾经因为电源供电不足(后来发现是环境温度高、风扇“吸”走大量电力),某块硬盘掉线好几天。解决供电故障后,它自动帮我恢复校验,速度挺快的。最重要的是,恢复期间我还关机清灰,重新开机后它能够继续恢复过程,完全不怕我乱整一通。

    更“好玩”的是,我插拔 SATA 线对调两块硬盘的顺序(进 BIOS 可以看到是对调过了),ZFS 仍然能够正确使用,不受位置顺序的影响,很方便。
    SSang
        13
    SSang  
       48 天前
    不知道你的具体需求,没办法给出具体建议,你是家用还是企业用,需求场景是什么?

    我就按照我的猜测(以及大家上面比较多的讨论)—— “备份需求” 来分享一下我的想法:

    其实我一直是不推荐家用上 raid 的,raid 真挂了,你确定你知道怎么恢复吗? raid1 这种可能还好,有些特殊情况恢复真的很麻烦,不是说你直接把坏的硬盘换下来就能立马解决的(取决于你的硬件和软件)。

    以及上面那位老哥说的很准确 —— **硬盘阵列不是备份**

    ---

    重要数据备份应该遵循标准的 3-2-1 原则( 3 份数据,2 种介质,1 份异地)。

    我更推荐的方案是:( 2 块硬盘互为冷备+1 份云上数据)
    - 两块硬盘定时 rsync 冷备
    - 必要情况下请保持其中一块硬盘处于长期断电状态
    - 上云可以同时满足第二种介质和异地备份需求
    bkmi
        14
    bkmi  
       48 天前 via Android
    软 raid ,换个系统照样读,硬件 raid 坏了你还得找硬件
    我 10 块盘,zfs 组了 5 个 mirror ,曾经坏过一块盘,虽然数据不重要,但是丢了也折腾人
    RightHand
        15
    RightHand  
       48 天前 via Android
    硬 raid 有一点学习成本,基本配置好之后,你就会觉得软 raid 就是玩具
    ladypxy
        16
    ladypxy  
       48 天前
    用 ZFS 比硬件 Raid 强的多的多的多,ZFS 用了 10 多年了,一点问题没有,而且扩容方便。更重要的是,快照机制太方便了。
    min
        17
    min  
       48 天前
    看你配什么级别的硬件 raid 了,不过如果家里存点东西,直接上 truenas 的 zfs 好了
    XinPingQiHe
        18
    XinPingQiHe  
       48 天前
    推荐软件 RAID. 个人使用 ,推荐 pve + zfs + 硬盘指令调整为闲置 2 小时自动休眠,好用而节能。
    公司使用,pve + zfs 。非常好!近十多年 ,先后部署了好多套类似系统,也出现过硬盘故障 更换硬盘 命令让它自动重建,数据运作都很完美。
    alex8
        19
    alex8  
       48 天前
    mdadm_raidX+lvm+vdo, raid 快照/cow 动态调整 透明压缩 去重都有了,还能配个 raid1 的 ssd 做缓存盘;第一个也可以由 raid 卡实现。应该不比 ZFS 弱了把,没用过 ZFS.
    totoro625
        20
    totoro625  
       48 天前
    个人用的 PVE + zfs 4 块 16T 矿盘 raidz2 + ups

    硬件卡这种相当于所有逻辑操作都交给硬件卡了,完全取决与 raid 卡的设置和工作逻辑,完全是一个黑箱
    商用 raid 卡肯定是大规模部署简单易用可靠的(钱是最不重要的,维护才是最重要的)

    BSD + ZFS 不出意外你要选择 TrueNAS CORE 了,毕竟是久经考验的,我也有过这方面考虑,但是出于个人时间精力的考量,不想镶套多层,就直接在 PVE 上建立 ZFS 了

    ZFS 相比于硬件 raid ,多了很对可控的 raid 操作,且比 mdadm 等软 raid 好很多
    MeteorVIP
        21
    MeteorVIP  
       48 天前
    硬 raid0
    现在是软 raid0,没玩过硬 raid,所以我选硬 raid
    hefish
        22
    hefish  
       48 天前
    有一次组了两台 14 块盘的 zfs ,发现用到 60%以上的时候,zfs 会不定期挂起。。。两台都是这样。
    另外一台 也是 14 块盘,7 块一个组了两组 zfs ,一直正常。 不知道 zfs 是不是不能搞太多的盘。。

    后来把 14 块一组 zfs 的换成了硬件 raid6 + btrfs 。
    L4Linux
        23
    L4Linux  
       48 天前
    俺认为开源的软件实现比闭源的固件实现更可靠,易用性也更强。
    zuotun
        24
    zuotun  
    OP
       48 天前
    @dalaoshu25 #1 那我要是不打算用 Linux 呢?

    @ntedshen #2 硬件 RAID 上再构建 raidz 真的有意义吗?

    @bao3 #6 我知道,但貌似还是 BSD 对 ZFS 的支持最好,目前也用了半年多知道 BSD 生态确实不行。

    @Mithril #8 内存倒是便宜,硬盘才是大头

    @SSang #13 真要挂了你估计就能在视频里看到我了

    @hefish #22 挂起之后会自动恢复吗?
    dalaoshu25
        25
    dalaoshu25  
       48 天前
    你也没说自己是什么用途,商用还是自己家里玩玩,我们也只能盲人摸象乱出主意,具体选什么责任还是在你自己,未来的苦主也只能是你自己。
    kenneth104
        26
    kenneth104  
       48 天前
    硬件是最简单省事的
    都用过
    dalaoshu25
        27
    dalaoshu25  
       48 天前
    月经话题,做 RAID 尤其 RAID 5/6 主要是为了高可用,硬件故障情况下依旧可以勉强使用,不影响业务。另外对我自己而言喜欢一个巨大平坦的文件系统存储资料,用文件夹来区分,不喜欢这个盘那个盘的。

    至于备份那是个动作,分软硬两个方面,软的方面是制定合适的备份策略,在线还是离线、增量还是全部、异地还是本地、人工还是自动等等等等。硬的方面才是采用什么介质存放,RAID 阵列可以作为在线和近线设备,离线可以考虑蓝光碟或者 LTO 磁带什么的。
    kk2syc
        28
    kk2syc  
       48 天前   ❤️ 1
    @logic2 啊不是,公司 20 多年的工程数据和财务数据就是这样管理的,刚入职的时候我也大受震撼,每天上班就是接受数据、入库
    logic2
        29
    logic2  
       47 天前
    @kk2syc #28 这种也没什么,又不是数据库 要实时写入,冷数据,rsync 对比 hash 很正常,这样基本上没什么大问题
    hefish
        30
    hefish  
       47 天前
    @zuotun 会的,就是不知道要等多久。。。 对了,我那是 linux zfs , 之前 freebsd 下 也有过 14 块盘整一个 zfs 的情况,没发现挂起的事儿。
    kk2syc
        31
    kk2syc  
       47 天前
    @logic2 想起了上班第三天我就被税务带走喝茶,因为我不知道财务数据在哪个盘哈哈哈,前任住院了联系不上
    durianY
        32
    durianY  
       46 天前
    @XinPingQiHe 想问一下,pve+zfs 要怎么设置休眠
    XinPingQiHe
        33
    XinPingQiHe  
       46 天前
    安装 hdparm ,使用下面的命令即可。XXXX 为你本地查到的 id 。 多个设备多条命令,放到系统自启动脚本里。
    hdparm -B 127 -S 243 /dev/disk/by-id/XXXX
    (很多资料说 zfs 不要休眠,但是个人使用,硬盘大部分时间闲置着,我觉得还是休眠为好,实践证明,经过上述设置后,确实完美休眠。上面参数是 1.5 小时 硬盘闲置,会断电休眠)
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2809 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 08:52 · PVG 16:52 · LAX 00:52 · JFK 03:52
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.