40TB服务器配置的完整性检查


21

我已经有40年的计算经验,但是我从来不需要像这样构建服务器,因此这可能是一个n00b问题。

我有一个客户将提供超高清音乐文件供下载。在这种情况下,这意味着FLAC压缩的24 / 192Khz =〜10GB /专辑。(不,我不想讨论产品的理想性,仅是服务器配置。)目录将是大约3,000张专辑,包括超高清晰度和低清晰度版本(我猜是针对iPod的), 35-40TB左右的主要数据。

由于这是一种非常专业的产品,因此市场规模相对较小(请考虑:人们在音频系统上花费20,000美元以上的人),这意味着服务器大部分时间将处于100%空闲(或接近)的状态。我有一个看起来不错的ColocationAmerica托管服务,连接速度为1Gbps,带宽为20美元/ TB,所以现在我只需要搭建一个盒子来运送货物。

数据访问用例是一次写入/多次读取,因此我正在考虑仅对驱动器对使用软件RAID 1。这将使我(我认为)可以为故障驱动器动态配置备用驱动器,从而能够在某些系统管理员注意到系统上的红灯之前开始第二个驱动器的重建(它们可以自由交换)。如果不需要的话,我可以让大多数驱动器进入睡眠/旋转状态,那就太好了,这对于大多数驱动器来说都是大多数时间。

我不需要太多的计算能力-这只是将繁杂的对象推到管道中-因此,只要CPU /主板能够支持如此数量的驱动器,它就可以算是适中的。

我目前正在考虑以下配置:

Chasis: Supermicro CSE-847E26-RJBOD1
Drives: 30 4TB SAS drives (Seagate ST4000NM0023 ?)
MB: SUPERMICRO MBD-X10SAE-O w/ 8GB
CPU: Xeon E3-1220V3 3.1GHz LGA 1150 80W Quad-Core Server

那么,我是朝正确的方向前进,还是这是解决问题的完全n00b /恐龙方式?

更新以澄清两点:

  1. 我没有ZFS的经验,因为我拥有的最后一个Sun产品早在80年代末。我将做一点RTFMing,看看是否感觉正确。
  2. 我真的不需要文件系统做任何壮观的事情,因为文件名将是简单的UUID,并且对象将在驱动器之间保持平衡(有点像大型缓存系统)。因此,我真的以为这些是40个独立的文件系统,这使RAID 1听起来不错(但是我在这里承认无知)。
  3. 因为我们目前的期望是我们不可能一次下载超过几十个文件,而且在大多数情况下,只有一个人在下载任何给定的文件,所以我不知道我们是否需要大量的内存用于缓冲区。也许8GB有点轻,但我认为128GB除了消耗能量外没有其他用途。
  4. 这里没有提到2台单独的机器:它们当前的网上商店,以及一个几乎完全脱钩的Download Master,可以处理所有身份验证,新产品接收管理,策略执行(毕竟这 RIAA的游乐场),临时URL的创建(可能还有)如果流量超出了我们的预期,则将下载转移到这些野兽中的一种以上),使用情况跟踪和报告生成。这意味着台机器几乎可以在Quaaludes上使用沙鼠来建造。

ZFS?好处在哪里?

好的,我正在遍历多个ZFS指南,常见问题解答等。请原谅我听起来很愚蠢,但是我真的想了解使用ZFS而不是N RAID1对的旧概念的好处。在这个“ 最佳实践”页面(从2006年开始)上,他们甚至建议不要使用48台设备的ZFS,而是24台2设备的镜像-听起来像我在说的那样。其他页面提到为交付1(一个)ZFS块而必须访问的设备数。另外,请记住,每个对象10GB,磁盘利用率80%,每个4TB驱动器总共存储320个文件。对于任何给定的驱动器故障,我使用N个RAID 1进行重建的时间是从一台设备向另一台设备写入4TB数据。ZFS如何使它变得更好?

我承认自己是恐龙,但是磁盘便宜,RAID 1,我了解,我的文件管理需求微不足道,Linux(我的首选OS)上的ZFS仍然还很年轻。也许我太保守了,但是当我看着生产系统时,我就是这样。

我确实感谢大家的宝贵意见,使我对此有所考虑。我仍然没有完全下定决心,我可能不得不回来再问一些n00b问题。


6
对于这样的存储量,我什至不会考虑使用少于128 gb的内存。另外,强烈考虑使用zfs文件系统。
EEAA 2014年

3
RAID1中的磁盘对听起来很糟糕。就个人而言,我会挑选出一个存储服务器/机架,将其装满近线SAS驱动器,然后将其全部放入RAID 10或6中,再添加一两个热备用磁盘,然后每天将其命名。
HopelessN00b 2014年

3
@etherfish-RAM不需要用于计算目的,但绝对是文件系统缓存所必需的。仅8GB的性能就太可怕了。如果使用ZFS,则更是如此,这实际上是我会认真考虑的唯一fs。ZFS需要大量 RAM才能正常运行。幸运的是RAM相对便宜。
EEAA 2014年

1
性能将足以使1Gbps饱和。只有在必须从缓冲区高速缓存中删除的磁盘中重新读取块,并且由于很少或根本没有临时性的预期,文件系统的性能才会受到影响,因此,在128GB之前,就已经达到了额外RAM返回收益递减的地步。给定基于扩展的文件系统和大文件,即使文件系统元数据也将占用不多的RAM。他甚至希望使用情况稀疏,以使驱动器能够降速运行。73年代。
etherfish 2014年

5
只是有关旋转磁盘的说明- 请勿这样做!(单击我以了解原因)加速/减速在传统硬盘驱动器的运动部件上有很多磨损,并且会导致过早失效。您节省的电费将浪费在更换故障磁盘上。
voretaq7 2014年

Answers:


12

根据问题描述,问题不仅仅在于服务器,还在于存储。
您需要像ZFS这样的可靠,健壮的文件系统,该文件系统旨在很好地处理大容量存储,并具有内置的管理功能,以使系统的该端更易于管理。

正如评论中提到的那样,我将使用ZFS作为存储池(可能是在FreeBSD上,因为我最熟悉该操作系统,并且因为它在ZFS方面具有长期可靠的性能记录,这是我的第二选择)再次由于经过良好测试的ZFS支持,操作系统将是Illumos


就提供文件而言,我同意-您不需要太多硬件就可以将数据推出网络端口。CPU / RAM的主要驱动程序将是文件系统(ZFS)的需求。
一般的经验法则是ZFS需要1GB的RAM,再加上它管理的每10TB磁盘空间需要1GB(因此,对于40TB,ZFS需要5GB的RAM)-这种关系不是线性的(有很多关于ZFS的好书/教程/文档,可以帮助您对环境进行评估。
请注意,添加ZFS重复数据删除等功能将需要更多RAM。

显然,对RAM的要求是向上而不是向下,并且不要小气:如果您的数学计算表明您需要5GB的RAM,请不要为服务器加载8GB的内存-逐步增加到16GB。

然后,您可以直接在存储盒上运行服务器(这意味着您需要在该盒上甚至更多的RAM以支持服务器进程),也可以将存储远程安装到“前端”服务器上,实际满足客户要求。
(前者最初更便宜,后者长期可扩展)。


除此建议外,我们的容量规划系列问题已经涵盖了我能给您的最佳建议-基本上是“负载测试,负载测试负载测试 ”。


我认为你的数学不对了。根据您的公式,他需要41G。
EEAA 2014年

@EEAA的确,我的零值是:-)并注意那是最低限度的RAM。ZFS非常乐于使用41G并将其全部与缓存一起使用:-)
voretaq7 2014年

@ voretaq7:感谢您提供的产能计划链接;在阅读了有关ZFS的内容之后,它是我的下一个清单。
彼得·罗威尔

如果您确实使用ZFS,请考虑ixsystems.com的
sciurus

1
@PeterRowell ZFS的主要优点是,它的设计处理多TB规模的文件系统-它是伪造的Sun微系统的坩埚和建成一个21世纪的文件系统为21世纪的数据大小(你在谈论的那种) 。有关ZFS与<某些其他文件系统>的优点/缺点的问题将是另一个单独的问题,这是一个不错的主意,但是我要抛开这个点点滴滴:fsck如果您使用的是ZFS和机器,就没有等待的事情了崩溃。我已经建立了fsckTB的文件系统。太可怕了
voretaq7

2

我将ZFS用于多TB服务器,并且坚如磐石。我最初使用OpenIndiana,现在因为我需要做的事情而迁移到FreeNAS。

我建议使用带SAS扩展器的LSI HBA卡(9211-8i是一个很好的基本卡)(SuperMicro机箱可以与基于LSI芯片组的集成SAS扩展器一起订购)。FreeNAS和FreeBSD支持LSI固件。检查适当的版本(在FreeBSD V9.x上V16是好的)。

鉴于一次写入可以读取系统的许多特性,我将使用ZFS Z2拓扑(避免将RAID-5和Z1与这种大小的驱动器一起使用)。假定您使用的是4TB磁盘,则如果池已满,则大型单个vDev阵列的重建(重新建立)时间将很长。为了避免较长的重建时间,请以6或10为一组排列vDev以创建池(来自FreeNAS文档的建议)。由三个6个驱动器vDev(假定为4TB驱动器)组成的池将具有约48TB的可用容量,并具有良好的容错能力(请记住,由于RAID不能代替备份,您仍需要备份内容:))。

为了加快访问常用文件的速度,您可以为L2ARC放入几个SSD(您的应用程序可能不需要,但对于120GB SSD来说它们非常便宜)。

如前所述,使用大量RAM。考虑到系统中的其他硬件,64GB并不太昂贵。不幸的是,较小的XEON不能使用超过32GB的内存。您可以尝试一下,但是根据ZFS文献,更多的RAM会更好(我使用您提到的XEON,具有32GB内存和24TB容量的Z2阵列,它可以正常工作)。

ZFS的另一个优点是您可以设置定期快照。这样,您可以轻松还原以前的版本,并且快照非常节省空间。此外,您可以将任何快照复制到另一个数据集(本地或远程),并且可以通过SSH进行此操作以确保安全。

我真的很喜欢ZFS系统的可靠性。我也喜欢它是硬件独立的事实!任何可以看到驱动器的系统都可以导入池。硬件突袭不会发生固件依赖性等问题(更好的卡不是问题,但它们比HBA卡更昂贵,并且需要驱动程序等-过去对此一无所知)。

鉴于这篇文章比较老,您可能有解决方案。如果是这样,介意告诉我们您建造了什么?

干杯,

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.