低端硬件RAID与软件RAID [关闭]


16

我想在旧电脑上建立一个低端6TB RAID 1存档。

MB: Intel d2500hn 64bit
CPU: Intel Atom D2500
RAM: 4GB DDR3 533 MHz
PSU: Chinese 500W
NO GPU
1x Ethernet 1Gbps
2x SATA2 ports
1x PCI port
4x USB 2.0

我想在Linux上构建RAID1存档(我想是CentOS 7,然后我将安装我需要的所有东西,我认为是ownCloud或类似的东西),并在我的本地局域网中使用它。

10-20美元的RAID PCI控制器还是软件RAID更好?

如果软件突击比较好,我应该在CentOS上选择哪个?将系统放在外部USB上并在连接器上使用2个磁盘是更好的选择还是将系统放在一个磁盘中然后创建RAID?

如果我要使用3磁盘RAID 5,应该选择硬件RAID PCI还是简单的PCI SATA连接器?


11
请不要执行R5,这很危险
Chopper3

1
这个问题以前没有回答过吗?例如serverfault.com/questions/214/raid-software-vs-hardware
Tommiie

3
这是一个关于意见的问题,您会发现很多人都拥护软件,而很多人都拥护硬件。我认为这取决于。Linux软件RAID已建立良好,并一遍又一遍地证明了其价值,但它产生的开销非常小(这可以忽略不计,尤其是在RAID 1中)。如果您由于URE而重视数据,则不应使用RAID 5,请参见youtube.com/watch?v=A2OxG2UjiV4经验法则是,如果您使用RAID 1并可以在廉价的硬件RAID和软件RAID之间进行选择,请购买软件。
布罗科

3
@Tom我认为这些答案已经使用了大约9年,HW / SW-RAID问题已经改变了很多。OP:以您为例,我已将软件RAID1中的磁盘(包括CentOS安装)镜像了。
Lenniey

2
人们总是声称硬件RAID可以节省CPU使用率。但是复制数据所需的CPU使用率几乎为零。我无法想象CPU使用率是软件RAID中的一个问题。
usr

Answers:


40

10到20美元的“硬件” RAID卡只不过是一个不透明的二进制驱动程序blob,它运行纯软件的RAID实现。远离它。

一张200美元的RAID卡提供适当的硬件支持(即:RoC运行另一个更好的不透明二进制blob,并且不运行在主主机CPU上)。我建议也不要使用这些卡,这是因为它们缺少回写缓存,因此与软件RAID实施相比没有任何实质性的好处。

值得购买300/400 $ RAID卡,该卡具有受功耗保护的写回缓存,但不适合基于Atom的小型PC / NAS。

简而言之:我强烈建议您使用Linux软件RAID。值得认真考虑的另一种选择是镜像ZFS设置,但是具有Atom CPU和仅4 GB RAM的应用程序不能期望高性能。

有关其他信息,请阅读此处


谢谢,我将使用mdadm,您是否建议将系统放在外部USB和两个用作内存的磁盘上,还是应该先安装系统,然后创建添加磁盘的RAID?谢谢
伊戈尔·Z

@IgorZ。我不清楚您要如何连接驱动器。从您的帖子看来,您似乎只有2个SATA端口,因此我将操作系统安装在USB HDD或闪存驱动器上(如果要使用USB闪存路由,请务必购买具有不错的4k随机写入性能的Pendrive)。
shodanshok

鹏?SoC将是片上系统,即“小型计算机”,但是RoC是什么?
ilkkachu

POC。概念证明?
BaronSamedi1958 '18 -10-04

1
的RoC装置ř援助ö Ñ Ç臀部。基本上,这是一个营销术语,用于标识运行RAID相关操作系统且具有硬件卸载功能的嵌入式系统,以进行奇偶校验计算。
shodanshok

11

转到ZFS。说真的 与硬件RAID相比,它要好得多,并且原因很简单:它使用可变大小的条带,因此等同于RAID10级别的奇偶RAID模式(Z1和Z2,RAID5和RAID6)仍具有非常高的成本效益。+您可以使用运行在专用的PCIe通道组上的闪存(ZIL,L2ARC等)。

https://storagemojo.com/2006/08/15/zfs-performance-versus-hardware-raid/

ZoL在Linux上有ZFS。

https://zfsonlinux.org/


3
我在这里通常会全心全意地同意,但是他只有4GiB的RAM,所以ZFS可能无法达到最佳性能……
Josh

1
+1。无论如何,与镜像+条带化相比,ZRAID的IOPS 是众所周知的:基本上,每个顶级vdev都具有单个磁盘的IOPS性能。在这里
shodanshok

上次查看时,ZFS每1 TB RAID需要1 GB RAM,因此OP没有足够的RAM。改变了吗?
标记

2
同意 ZFS是归档数据的最佳选择。性能始终取决于条带大小和将写入磁盘的块大小,因此计算起来很复杂,但非常容易优化性能:)此外,ZFS并非为虚拟化或密集型IO设计的工作量。
Strepsils

1
2Mark:这是用于重复数据删除的容量。
BaronSamedi1958 '18 -10-5

3

这是廉价系统上软件的另一个论点。

发生中断,您知道这就是使用raid的原因,但是raid控制器也会中断,ram,处理器,电源以及包括软件在内的所有其他事物也会中断。在大多数故障中,用等效的或更好的零件更换损坏的零件就足够简单了。给100w的电源吹气,抓住150w的电源,然后开始。与大多数组件相似。但是,使用硬件突袭时,此模式现在有三个例外:突袭控制器,硬盘驱动器和母板(如果不是扩展卡,则为其他上游)。

让我们看看突袭卡。大多数突袭卡记录不全,并且不兼容。您不能将公司xyz的卡替换为abc的存储卡,因为它们存储数据的方式有所不同(假设您可以弄清楚是谁制造的卡)。解决方案是拥有一张与生产卡完全相同的备用RAID卡。

硬盘驱动器不像RAID卡那样糟糕,但是RAID卡具有与驱动器的物理连接器,因此您必须使用兼容的驱动器,而较大的驱动器可能会引起问题。订购替换驱动器时需要格外小心。

主板通常比驱动器更难,但比RAID卡要难。在大多数情况下,仅验证兼容的插槽是否可用就足够了,但可启动的突袭可能不会让人头疼。避免此问题的方法是使用外部机柜,但这并不便宜。

所有这些问题都可以通过花钱解决,但是对于便宜的系统来说,这是不希望的。另一方面,软件突击检查可以抵抗大多数(但不是全部)问题,因为它可以使用任何块设备。

在廉价系统上进行软件突袭的一个缺点是引导。据我所知,唯一支持raid的引导程序是grub,它仅支持raid 1,这意味着您的/ boot必须存储在raid 1上,这不是问题,只要您仅使用raid 1即可,而在其他大多数情况。但是,grub本身(尤其是第一阶段引导块)无法存储在团队中。可以通过将备用副本放在其他驱动器上进行管理。


我设置可引导RAID 1的方法是/boot在每个磁盘上创建一个分区,并在每个磁盘上创建一个数据分区/(而不是将整个磁盘专用于该阵列)。只要您在每个驱动器上创建一个单独的引导分区并运行grub-install到每个驱动器,它们都应该是可引导的,并且md应该能够安装降级的阵列。我想它也可以使用RAID 1以外的其他版本。
nstenz

@nstenz,您几乎完全描述了我的设置。数据分区了RAID6和LVM和启动了RAID 1
hildred

1
  1. 正如其他人所说的那样,硬件RAID并没有带来任何不利方面。我偏爱软件RAID的主要原因是它更简单,更可移植(因此更有可能从各种故障情况中成功恢复)。

  2. (正如其他人所说的那样)3磁盘RAID 5是一个非常糟糕的RAID方案-几乎是世界上最糟糕的方案,几乎没有收益。RAID 0和RAID 1之间的折衷有点折中,略好于两者之一,但这是唯一要说的。RAID已发展到更好的方案,例如RAID 6。

  3. 我的建议(硬件):

    • 为该PCI插槽获取一个4端口SATA卡,将您带到总共六个SATA端口-一个用于引导驱动器,五个用于数据驱动器。我看到一个标价为15美元的产品,标榜为硬件RAID,但您可以忽略这些功能,而将其用作普通SATA。

    • 获取用于启动驱动器的小型SSD。我知道仍然有人认为“ SSD太贵了”,但现在已经不复存在了,而且在小型终端上也根本不行,因为120GB的存储空间远远超出了此启动驱动器的需求,您可以购买一个〜25美元。

    • 一个可选的但非常不错的附加功能(如果您的PC机箱具有3个5.25英寸驱动器托架)是一个驱动器托架转换器:您可以将3个5.25英寸(光学)驱动器托架变成5个可热插拔的前装载3.5英寸(HDD)托架,因此您不必拆开机器(甚至关闭机器)即可交换驱动器(搜索“ 3中的背板5”)。

    • 在RAID 6中使用5倍大小的HDD(双冗余,3倍驱动器大小的可用空间)。

  4. 我的建议(软件):在OpenMediaVault中查看OS /文件服务器软件。对于这种用途,这是一个“设备发行版”的完美选择-基于Debian的(实际上是基于BSD的FreeNAS的Linux端口),并且为NAS服务器预先配置了所有功能。它使设置和管理软件RAID(以及LVM,网络共享等)变得非常简单。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.