我正在考虑构build一个24个1TB磁盘NAS盒,但是我不确定最佳的驱动器configuration是什么。 我正在使用槟榔ARC-1280ML-2G控制器,并挂上所有24个驱动器。
由于我们存储在其上的数据types,我希望将它们全部安装为一个卷。 我们的一个疯狂的想法是configuration6个4磁盘RAID 5卷,然后在这6个卷上执行软件RAID 5。 这意味着任何一卷可能会死在我们身上,我们仍然不会丢失数据。
我应该注意到,这是一个研发项目,我们有一个即将到来的应用程序,我们将需要几十TB的存储空间,以便快速和高可用性。 但是对于最初的研发阶段,我们可以接受一些风险。
什么是这种configuration的最佳解决scheme? 使用24个1TB磁盘,很可能会有多个磁盘同时出现故障(或在第一次故障后重build磁盘的时间内),所以我很难find一个好的解决scheme。
已经有一个你想要的RAID级别了; 它被称为RAID 10。
专业级和消费级驱动器的平均无故障时间近年来增加了一个数量级,不可纠正的错误率保持相对稳定。 据估计,这个速率为10 ^ 14位,所以对于消费类SATA驱动器来说,每读取12 TB的数据就有一个位。
所以,对于你的24Tb硬盘的每次扫描,统计上你至less会遇到2个单比特错误。 这些错误中的每一个都会触发RAID5重build,更糟糕的是,在重build期间,第二个错误会导致双重错误。
这正是我日常的工作,build立Linux存储服务器。
哇,RAID5 RAID5? 想讨论性能问题? 你会有吨 。 你把这些挂起来的主机将有小猫计算奇偶校验,把这个奇偶校验写入3个驱动器,然后计算这个奇偶校验的奇偶校验,并把它写到这个集合的第4个驱动器。 哇!
让我们谈谈RAID10。 这本质上是RAID 1,但是把你的驱动器分成两半,然后镜像。 这是容错,你可以失去2驱动器,仍然是罚款,再加上性能优秀。
如果你不需要太多疯狂的空间,但是你已经有了一个24TB的arrays,没有什么比这更好的了,但是它绝对是必须的,那么你可以考虑RAID60。 它基本上是使用镜像驱动器组的RAID6。 你会损失大约一半的驱动器,性能会很差,但你几乎可以保证数据将在那里。
真的,我会用RAID10。 它performance良好,工作正常。 我第二个Evan的观点是,你可能不应该从这么多的磁盘中制作出巨大的RAID集,因为正如他所说,像fsck和chkdsk这样的东西将永远占用,但更重要的是在我的脑海里,因为读取错误的统计可能性随着单个磁盘的大小而变化。 我build议每套7-10个磁盘。 你可以用这个数量的主轴创build3个非常大小合适的RAID卷。
无论你select哪一个,都要记住把一些磁盘留在热备份中,这样你就可以立即开始重build,而不是让arrays等着你去replace它们。 一旦磁盘死亡,时钟开始滴滴答答的另一个去。
为什么不是RAID 1 + 0? 这一切都在控制器级别处理…
我知道你说“研发”,但你也说“高度可用”。 我会质疑DIY解决scheme的“节省”,而不是购买现成的SAN设备来做到这一点。 当您的DIY解决scheme出现问题时,您将陷入没有人联系寻求帮助的难以置信的地位。 什么宕机成本你每小时? 在宕机时间内,您可以很快耗尽一些中型SAN设备的成本,而忽略与数据丢失相关的费用。
不pipe你对底层磁盘做什么,我都不会创build一个大的文件系统。
文件系统损坏是一个真正的可能性(RAID控制器问题,OS错误等)。 在一个很大的卷中,文件系统检查将会持续下去。 我强烈build议使用多个可以逻辑组合的卷,将其显示为单个文件系统(通过各种方法 – 您没有提到操作系统,所以我不能给你具体的想法)。 如果你有一些文件系统损坏,你将失去一部分逻辑卷,但你仍然会“上”。
举个例子:在Windows环境下,在一个20TB的NTFS卷上运行CHKDSK文件将会变得很慢 。 在这种环境下,我会创build多个较小的NTFS卷,并将它们逻辑地与DFS一起组合到一个名称空间中。
wazoox,答案是好的,我没有代表给他更多加分,但我会补充以下内容。
RAID 6或者每10张光盘至less有2个现场校验盘,最多16个,也就是说,如果你可以花费一天的时间,RAID性能将会受到你的RAID重build的影响。 如果你不能忍受退化,那么它将不得不被镜像条纹。
如果你正在使用Linux路由,我要么使用硬件RAID卡(使用电池备份),要么在光盘盒中安装RAID控制器。 我同意xfs是Linux上select的文件系统,但是请注意,如果您需要运行xfs_check,xfs上大约50TB的文件系统会占用超过16GB的RAM。
我会认真考虑一个好的NAS设备,比如NetApp,因为它们的长期工作量要less很多,这取决于你的存储pipe理员的时间对公司来说有多大的价值。
让nfs / samba运行良好是一个黑暗的艺术,你打算使用10GB的ether还是1GB / sec的聚合? (不要拿Broadcomm卡特别是10GB的卡)。
LVM2是不容易的,但不要使用快照,因为它不是很快。
记住这个备份需要一些时间。
testing系统在投入生产之前可能会失败的原因,并写下你和同事可以在出错的地方find文档的位置。
这取决于你的读/写比率。 我们使用很多HP MSA70外置式25磁盘SAS驱动器机箱,并且始终将它们创build为单个RAID6arrays,因为我们的读写比率为99%:1%,所以我们不在乎R6在写入时最慢还是相当快的,只是不如其他人好)。 这样我们就有23个磁盘的数据可用,对我们来说具有非常好的性能,随机读取和整体读取带宽的好处,可以承受两个磁盘故障。
作为一个粗略的指导,RAID5arrays在一个arrays中不应该有超过14个磁盘,而RAID6应该可以支持多达54个磁盘 – 显然arrays越大,读写性能和较慢的重build将需要,但它可以是一个很好的权衡。
我会添加两个备用磁盘启动。
对于随机读取或大量连续读取和写入,RAID 5或6是可以的。 如果您将要使用RAID 10进行大量小型写入,因为RAID 5+在小型写入时需要4倍的命中。
如果打算打开写入caching,请记住使用电池备份。