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

一个 SSD 硬盘,两个 HDD 硬盘,这三个硬盘想做 RAID,如何做比较优化

  •  
  •   leimbag · 2016-08-22 15:18:29 +08:00 · 15748 次点击
    这是一个创建于 3015 天前的主题,其中的信息可能已经有所发展或是发生改变。

    新人新手,现在手里有一个 120G 的 SSD 硬盘(打算做系统盘), 2 个 4TB 的 HDD 的西数红盘(打算做 nas ),主板是技嘉的 X150 主板,主板支持 raid0 , 1 , 5 , 10.系统打算使用 linux 系统 现在比较迷惑的地方是: 1.在装系统前,开启主板的 raid 功能后,对两个 4T 的 HDD 硬盘做 raid1 ,但对于 120G 的 SSD 硬盘,是否有必要继续和之前的 2 个硬盘做 raid0 ?还是只需要对 HDD 做个 raid1 就算 ok ? 2.在装机系统时分区如何做更为合理一些?

    望各位大侠给点建议。

    61 条回复    2017-07-29 07:46:43 +08:00
    loading
        1
    loading  
       2016-08-22 15:25:15 +08:00 via Android
    ssd 自己玩。
    HDD 组起来。
    jijigui
        2
    jijigui  
       2016-08-22 15:25:41 +08:00
    raid0 的容量是最小硬盘的 2 倍。
    goodbest
        3
    goodbest  
       2016-08-22 15:26:09 +08:00
    SSD mount 到 /

    为了安全的话, 2 个 HDD 组 raid1 , mount 到 /home
    为了容量和速度的话, 2 个 HDD 组 raid0 , mount 到 /home

    raid 5 和 10 你这种不适用...
    各种 raid 的区别自己查。
    loading
        4
    loading  
       2016-08-22 15:28:12 +08:00 via Android
    Hdd 如果可以,一个区就行了。(我没查文件系统支持的最大分区大小……)

    举个例子,你有一个 3.7t 的单文件要存下来……

    分区越少越好,因为快满的时候,所有分区都放不下一个大文件时是很蛋疼的。
    leimbag
        5
    leimbag  
    OP
       2016-08-22 15:30:31 +08:00
    @goodbest raid5 , 10 不打算用,主要是为了安全所以想做 raid1 ,这意思是 ssd 和 HDD 之间不用再做 raid 了是吗?
    leimbag
        6
    leimbag  
    OP
       2016-08-22 15:33:17 +08:00
    @loading 恩,应该不会有太大的文件,求推荐个 linux 的系统。 swap 还有必要单配?
    loading
        7
    loading  
       2016-08-22 15:36:30 +08:00 via Android
    @leimbag ssd 没必要做到 raid 里面,重要数据都放 hdd ,
    如果是为了东西放在 ssd 里面能快,而且数据重要,例如代码。
    可以写个脚本,每晚备份到 hdd 。

    Linux 看你自己吧……是日用还是 nas ?
    loading
        8
    loading  
       2016-08-22 15:38:11 +08:00 via Android
    Swap 看你内存,需要休眠就要配,放到 ssd 就行。
    Swap 不用单独分区了,可以使用文件的,所以,分区时不用考虑。
    loading
        9
    loading  
       2016-08-22 15:39:21 +08:00 via Android
    单独的 boot 分区,个人是十分建议的,使用 ext4 或其他内核内置的文件系统。

    以后你会感谢我的。
    leimbag
        10
    leimbag  
    OP
       2016-08-22 15:43:17 +08:00
    @loading 感谢,日用, nas 也会用,想试试 centos7 。
    是否有必要在 HDD 上建一个 /data 分区
    借鉴 @goodbest 的说法, ssd 挂 /,
    HDD 只分区 /home,/data 是否科学?
    /boot,swap 这两还有必要吗?
    hardware
        11
    hardware  
       2016-08-22 15:45:22 +08:00
    自用完全没必要上 raid 1

    写个脚本定时备份就好,按需按文件夹备份,这样最安全。
    xuhaoyangx
        12
    xuhaoyangx  
       2016-08-22 15:46:13 +08:00
    板载 raid 和低价 raid 卡 想想就好,没电池,写时断点必坏数据。还不如软 raid ,或者 zfs 。

    为了方便家里人操作,用 WindowsServer2012r2 ,存储池,开启分层存储, ssd 加速。
    6 个 2t 一个存储池,存储池一个分区,设定 Parity(类 raid5-6),用两个盘空间做校验(可坏),外加 120G ssd 做分层存储,重点加快写入速度。

    3 个 4t 一个存储池,分两个区,一个 Simple 类似 raid0 ,临时数据;一个 Parity (一个硬盘校验)。
    jerryfu
        13
    jerryfu  
       2016-08-22 15:46:40 +08:00
    @hardware 赞同, raid1 太浪费了。
    xuhaoyangx
        14
    xuhaoyangx  
       2016-08-22 15:46:52 +08:00
    好有一点软的拓展行好-。-
    leimbag
        15
    leimbag  
    OP
       2016-08-22 15:56:12 +08:00
    @loading 哈哈,先行谢过。 boot 划多少合适? boot 放 ssd 就可以了吧? centos7 有个 xfs
    leimbag
        16
    leimbag  
    OP
       2016-08-22 16:06:19 +08:00
    主要是想数据能够安全一些,不用板载的用软 raid ?板载的断电就跪了?只要能保证数据实时性不丢失就行
    pubby
        17
    pubby  
       2016-08-22 16:26:26 +08:00 via Android
    不要主板的 raid ,坏了你还得找同样主板来恢复数据

    装 freebsd 吧,两个机械的做 zfs mirror
    SSD 分两个区,小的做 zfs log 加速写,大的做 zfs cache 缓存读
    cxh116
        18
    cxh116  
       2016-08-22 16:31:08 +08:00   ❤️ 1
    同 @xuhaoyangx 一样,主板自带的 raid 最好不要用,还不如用 zfs 或 btrfs 这样支持软 raid 的.

    准备存重要数据,不管是软 raid,还是主板自带的 raid, 推荐禁用硬盘缓存和阵列缓存,这样断电 像 zfs 和 btrfs 不会存在数据不一致的问题. 当然禁用缓存性能肯定会有损失的.

    raid 1 掉电还好说,有机会能重建成功, raid 0 就当两个硬盘都坏了.



    实在想用阵列,可以买 hp p410 这卡,卡只要 30 元,按照你这需要,估计还有想磁盘速度,然后买缓存.
    缓存买 fbwc 的,不要买 bbwc. bbwc 的电池一般不行. ffwc 缓存加卡一共要 100 的样子,然后还要买一个 mini sas 转 sata 的线.

    这卡是 hp 服务器用的卡,对普通台式机主板兼容不是很好,无法在启动时按 f10 进入阵列卡配置.但可以在进入 windows 系统后,用 hp ssa 这个软件进行配置. 这卡是 100 元以下,唯一支持大于 2TB 的硬盘,亲测支持 4TB .
    阵列配置好后,直接在 linux 就可以使用了.linux 自带 hpsa 支持 hp 410 这卡.但在 linux 下无法通过 hpacucli 工具来管理阵列卡.只能在 win 下管理.

    我的 twiiter 截图:
    https://twitter.com/ciro9527/status/763744078676627459
    https://twitter.com/ciro9527/status/763746343273713664
    leimbag
        19
    leimbag  
    OP
       2016-08-22 16:31:47 +08:00
    @pubby 这么严重?必须同板恢复啊,没怎么接触过 freebsd ,这意思是不用做 raid 了,直接全用 ZFS?
    xuhaoyangx
        20
    xuhaoyangx  
       2016-08-22 16:40:43 +08:00
    @cxh116 老卡还是不太相信。身边好多惨烈的例子。 我现在就是买了个 LSI 600 多的刷 HBA 用。

    @leimbag 建议不要用板载和便宜的 raid 卡,身边例子多,坏了找到同板也有大概率无法恢复数据,最后找的专业的恢复弄的。同版本卡也要注意硬盘连接顺序,硬盘接的顺序不对还是没法正确读出来。
    pubby
        21
    pubby  
       2016-08-22 16:42:13 +08:00
    @leimbag zfs mirror 就相当于软 raid1

    zfs 只是选择之一,能保证数据一致性。其他文件系统不会比 zfs 可靠
    leimbag
        22
    leimbag  
    OP
       2016-08-22 16:46:29 +08:00
    @cxh116 其实关键目的就是保证数据的安全,一开始觉得板载的会靠谱些,结果看大家不是很赞同,如果不用板载 raid ,用哪种方式更好些? 看你说的需要独立买阵列卡,感觉主板支持会出问题,有无更为稳妥的方案?
    leimbag
        23
    leimbag  
    OP
       2016-08-22 16:48:46 +08:00
    @pubby 如果使用 ZFS ,对于分区这块是否就无所谓了? 三块硬盘任意挂载就行?
    leimbag
        24
    leimbag  
    OP
       2016-08-22 16:50:59 +08:00
    @xuhaoyangx 之前悲剧的都是因为断电还是其他原因?有靠谱的 raid 卡推荐吗?感觉一用 raid 会出各种问题啊
    xuhaoyangx
        25
    xuhaoyangx  
       2016-08-22 16:52:05 +08:00
    @leimbag 2000 的你能接受么。。。
    pubby
        26
    pubby  
       2016-08-22 16:54:12 +08:00
    @leimbag 无所谓,一个 pool 里空间共享的

    这是一台数据库

    capacity operations bandwidth
    pool alloc free read write read write
    ------------ ----- ----- ----- ----- ----- -----
    zroot 19.9G 504G 1 53 60.9K 379K
    mirror 19.9G 504G 1 50 60.9K 278K
    gpt/zfs0 - - 0 13 30.5K 280K
    gpt/zfs1 - - 0 13 30.4K 280K
    logs - - - - - -
    gpt/log0 2.09M 7.94G 0 2 0 101K
    cache - - - - - -
    gpt/cache0 169G 16.0E 0 0 0 23.3K
    ------------ ----- ----- ----- ----- ----- -----



    这是一台 nas
    capacity operations bandwidth
    pool alloc free read write read write
    ---------- ----- ----- ----- ----- ----- -----
    ssd 716K 103G 0 0 247 2.24K
    da2p4 716K 103G 0 0 247 2.24K
    ---------- ----- ----- ----- ----- ----- -----
    zroot 468G 1.32T 38 145 3.55M 6.09M
    mirror 468G 1.32T 38 81 3.55M 2.88M
    da0p3 - - 17 36 1.78M 2.88M
    da1p3 - - 17 36 1.77M 2.88M
    logs - - - - - -
    da2p2 4.66M 7.93G 0 64 0 3.21M
    cache - - - - - -
    da2p3 62.9G 1.10G 56 27 3.00M 2.88M
    ---------- ----- ----- ----- ----- ----- -----
    9hills
        27
    9hills  
       2016-08-22 16:58:30 +08:00
    RAID 一般是同型号同大小磁盘做。。你这个差的有点大
    leimbag
        28
    leimbag  
    OP
       2016-08-22 17:06:19 +08:00
    @xuhaoyangx 我哩个去,这么贵,没便宜的啊
    leimbag
        29
    leimbag  
    OP
       2016-08-22 17:07:01 +08:00
    @pubby 你说的一台数据库,一台 nas 是指的两个虚拟机还是什么?
    leimbag
        30
    leimbag  
    OP
       2016-08-22 17:07:54 +08:00
    @9hills 2 个 HDD 一样的,不知你说哪里差的大
    xuhaoyangx
        31
    xuhaoyangx  
       2016-08-22 17:08:17 +08:00
    @leimbag =。=便宜没好货。
    9hills
        32
    9hills  
       2016-08-22 17:08:37 +08:00
    @leimbag 一个 SSD 硬盘,两个 HDD 硬盘,这三个硬盘想做 RAID
    pubby
        33
    pubby  
       2016-08-22 17:16:31 +08:00
    @leimbag 十几台都是物理机
    都是 zfs ,少数 raidz ,其他都是 zfs mirror ,有些加了 ssd 做 log+cache ,有些没有。

    坏过几个盘,都是将磁盘下线然后热插拔替换。也扩容过磁盘( 1T 升 2T )。 都不需要停机。


    不过跑 zfs ,机器内存需要大点。而且存储到 80%以上会开始有性能下降,不建议超过 90%。
    leimbag
        34
    leimbag  
    OP
       2016-08-22 17:31:32 +08:00
    @pubby 存储到 80%以上是说硬盘吗?系统用的是什么?单台机器好整吗
    leimbag
        35
    leimbag  
    OP
       2016-08-22 17:31:58 +08:00
    @xuhaoyangx 擦, 2000 的是什么
    pubby
        36
    pubby  
       2016-08-22 17:35:16 +08:00 via Android
    @leimbag freebsd 啊, 11 快出来了。
    就是不要存满, 80%就差不多了要扩容了
    xuhaoyangx
        37
    xuhaoyangx  
       2016-08-22 17:37:49 +08:00
    @leimbag 机房的朋友推荐,无责任.9361-8i 。公司用的普遍差不多是这个
    leimbag
        38
    leimbag  
    OP
       2016-08-22 17:41:42 +08:00
    @pubby 奥,以为某个 linux 上
    @xuhaoyangx 3 求,去围观一下
    VicYu
        39
    VicYu  
       2016-08-22 18:00:59 +08:00
    再买一块 4t
    120G rst
    3 盘 raid10
    就一个字,爽!
    leimbag
        41
    leimbag  
    OP
       2016-08-22 22:08:25 +08:00
    @VicYu 再买一块? 3 盘?你说的 raid10 是板载的还是软 raid 呢?
    ryd994
        42
    ryd994  
       2016-08-23 00:15:20 +08:00
    如果你用 linux ,可以用 ssd 给两个机械做 cache
    lvm-cache
    msg7086
        43
    msg7086  
       2016-08-23 00:51:05 +08:00
    ZFS , Ubuntu 就可以跑。
    HBA 的话,普通点的 H200 H310 M1015 都行啊, 60-70 刀一张,注意散热。
    公司里的廉价 ZFS 存储, 12 盘 Z3 读写能到 600MB/s 左右。详情可以看看我以前发的帖子。
    lairdnote
        44
    lairdnote  
       2016-08-23 08:48:56 +08:00
    为何不用 bcache 这样的加速呢
    zhouzhe8013
        45
    zhouzhe8013  
       2016-08-23 08:53:28 +08:00
    120G 的盘怎么跟之前两个盘做 raid0?
    就算做了整体可用容量也变成了 120G*2,速度还一边倒..
    直接 120G 装系统,或者多买几个 2T 3T 的盘 raid5 算了
    leimbag
        46
    leimbag  
    OP
       2016-08-23 09:36:08 +08:00
    @msg7086 ZFS 在 centos 上稳定吗?有点倾向用 ZFS 了

    @lairdnote 不好意思,没懂
    @ryd994 系统还是装在 ssd 上?分一部分给 HDD 做 cache ?
    ryd994
        47
    ryd994  
       2016-08-23 09:47:29 +08:00 via Android
    @leimbag 就是用多块硬盘组 sshd 的意思
    VicYu
        48
    VicYu  
       2016-08-23 10:17:00 +08:00
    @leimbag sorry ,我看了一下,我是 60G SSD RST, 3 盘 4T raid 5 ,我突然也意识 10 是 4 个盘,还特意去 bios 看了一下
    leimbag
        49
    leimbag  
    OP
       2016-08-23 10:38:16 +08:00
    @VicYu 客气,你是用的板载的 raid 吗?系统装在 hdd , ssd 只做加速吗?
    VicYu
        50
    VicYu  
       2016-08-23 12:00:36 +08:00
    @leimbag 用的板载 raid ,系统装在 hdd 里,你可以切 32G 出来做加速,剩下的留着自己做 ssd 盘,我是 64G 全加速,无法存储的
    msg7086
        51
    msg7086  
       2016-08-23 22:27:05 +08:00
    @leimbag 不玩 CentOS 。 ZFS 的话依赖 ECC 内存。
    leimbag
        52
    leimbag  
    OP
       2016-08-23 23:16:57 +08:00
    @msg7086 想用 centos 试试,不过如果不做 raid ,直接用 ZFS 不知道该如何做系统,以及如何分区合适了
    leimbag
        53
    leimbag  
    OP
       2016-08-23 23:20:51 +08:00
    @cxh116 大神,如果使用 ZFS ,如果分区会比较科学?系统还要装在 ssd 上吗?
    msg7086
        54
    msg7086  
       2016-08-24 00:37:24 +08:00
    @leimbag ZFS 最好不要和 RAID 放一起。
    现阶段 Linux 上好像只有 Ubuntu 在主推 ZFS ,别家的不清楚状况如何。
    装系统的话我们是装在 SSD 上的……不过理论上 U 盘也可以跑。
    jyf007
        55
    jyf007  
       2016-08-24 07:30:33 +08:00 via Android
    zfs 在 gentoo 是卡在 4.4 分支上了。
    cxh116
        56
    cxh116  
       2016-08-24 09:38:47 +08:00
    @leimbag zfs 的话推荐用 freenas 或 freebsd 来跑,按照 freeenas 的要求,现在最低内存要 8g,推荐 16G.
    bsd 和 linux 的命令还是有点差别的.

    个人推荐你是不用组 raid,也不用 zfs.系统装到 ssd,两个硬盘分别挂到 /data /data2 下,平常主写 /data ,每天定时用 rsync 同步到 /data2 , 这样平常 /data2 处于休眠状态,不像 raid1 两个硬盘写数据都处于负载状态.

    网上是说同一批次的硬盘有可能同时坏.所以你一次主写,一个用来备份(延时批量写).相对来说应该会降低点概率.
    而且因为另外一个硬盘大部分时间处于睡眠状态,相对来说,断电时只有不刚好在 rsync 运行同步的时候.基本不会损失备份盘的数据.
    https://www.zhihu.com/question/20164654/answer/22828661
    leimbag
        57
    leimbag  
    OP
       2016-08-24 14:00:27 +08:00
    @msg7086 看到 http://my.oschina.net/linuxprobe/blog/670366 这个在 centos 用,具体可靠性,我心里也没底,也不知道和 ubuntu 的有没一拼。

    @cxh116 感谢大神的建议,初步设想 ssd 装系统,/data,/data2 分别挂两个 hdd 硬盘,/boot 和 / 独立分区,挂在 ssd 下就行。听说 ssd 寿命短,所以 /var/,/home,/usr 这几个是不是也单独分区,挂载到第一个 hdd 硬盘?不知道这样分区合不合适?或者有更优雅的方案吗?
    msg7086
        58
    msg7086  
       2016-08-24 14:20:49 +08:00
    @leimbag SSD 寿命短的意思是说在家用环境下十到二十年就会开始坏掉。
    zong400
        59
    zong400  
       2016-08-24 15:36:03 +08:00
    2 个 hdd 做 raid0 , ssd 和 raid0 做 raid1
    呵呵
    leimbag
        60
    leimbag  
    OP
       2016-08-24 17:20:09 +08:00
    @msg7086 这样啊,哈哈
    eben
        61
    eben  
       2017-07-29 07:46:43 +08:00
    板载的 Raid 还是算了吧,不建议你组 raid,PC 组 Raid 有什么意义,建议换大点的 SSD,HDD 只作为存储以及频繁读写的应用使用
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2743 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 07:06 · PVG 15:06 · LAX 23:06 · JFK 02:06
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.