搭建个人家用NAS网络存储服务器 [二]

不知不觉距上文 搭建个人家用NAS网络存储服务器 [一] 发布已经快三年了。
第一篇中的主机后来给家人当做桌面机上网炒股打游戏,作为替换我尝试了HP N40L MicroServe (主要是捡到一台非常便宜的N40L) 加FreeNAS系统的组合,主要考量还是FreeNAS提供的ZFS磁盘格式比较吸引人,ZFS Snapshot是超越Mac OSX上时光机的终极快照备份工具。可惜的是N40L只有4个不可热插拔硬盘位,4个盘位跑RaidZ2略显尴尬,外加N40L的集成CPU性能较弱,应付RaidZ2略显吃力,在全负载读写数据下网络数据传输曲线惨不忍睹。加上最近家里宽带套餐换成了Business Class Internet,ISP提供了一个固定IP,于是想装一台新的home server在提供NAS的同时也可以跑一些web服务。于是再一次开始DIY…

这次装机考虑的主要是一机多用即主机上能跑多个虚拟机应付不同的应用,于是虚拟化能力成了选购主板和CPU的首要因素。Intel的VT-x和VT-d是必须的,前者在主流CPU上都有提供,后者是为了PCI device passthrough (Direct I/O)以保证提供NAS服务的虚拟机能直接操纵硬件以提供最佳性能。为了能将服务器仍在角落运转而不用担心死机重启,主板支持IPMI就显得非常重要。至于主板SATA的数量到不是最关键因素,决定上HBA控制卡来保证足够多的SATA/SAS接口。

于是乎有了下面的配置
Supermicro X9SCM-F (只有带F的型号支持IPMI)
Intel Xeon E3-1220 V2 (没有选择V3 Haswell平台主要是从功耗和价格上考虑,V2设计TDP 69w,V3居然要80W)
Kingston DDR3-1333 ECC unbuffered Memory 8Gx2 (主板只支持ECC内存)
LSI 9211-8I HBA 扩展卡
Seasonic 650W 80 Plus Gold (主要遇到打折,65美金实惠价,80+金牌能效比高一些)
OCZ Vertex2 128G SSD (以前机器淘汰下来的,仅作为系统盘够用了)
机箱这次用了Fractal Design Define XL R2,全塔ATX机箱,提供8个3.5寸,4个5.25寸驱动位,这个情况下应该足够了。
磁盘还没有全部到位,基本上准备上WD Red NAS driver红盘。

关于CPU的选择还有个插曲。我中途一度考虑过Xeon E3-1220L V2 这款2012二季度发布的CPU设计TDP只有17w,并且双核四线程带Vt-d简直是家用服务器首选。可惜这款CPU根本不针对零售市场,不管在美国还是中国都很难买到。淘宝上一度出现过一些ES版本的V1版喊价都在1200人民币以上,个别日本代购还喊出了1999人民币的匪夷所思价格。最终还是选择了Xeon E3-1220 V2这款好买又不算太贵的CPU,我买的价格是233美金不含税,如果最终感觉功耗过大可以在BIOS里关掉两个核以降低功耗。

主板的选择余地并不大,考虑到需要IPMI和虚拟KVM支持,基本上只有supermicro,Intel和ASUS这几家,考虑到名气和市场占有率选择Supermicro就不意外了。至于HBA扩展卡而不是硬件RAID卡,主要考虑因素是FreeNAS(或OpenSolaris)跑ZFS需要对硬盘的直接控制,用一款硬件RAID控制卡的话就等于中间额外架了一层,此外纯硬件RAID卡如果要支持RAID 6价格不菲。从性能上讲现代CPU已经严重性能过剩,以前硬件RAID的专用RISC处理器速度快,现在都已经可以完全靠软件Raid来提供同等性能。另外一个不得不考虑的地方就是硬件RAID卡坏了得找一块同厂家同型号的卡来把数据救回来,软件的就比较简单,接哪台机器上都一样用。选择这个型号是因为根据网上的评测,LSA 9211-8i这块卡上用的SAS 2008 芯片系统兼容性比较好。再次不得不说taobao神店多,这卡在淘宝上400-600人民币选择一大堆,在eBay/Amazon上都起码是200+美金,还是祖国好啊。

电源机箱没啥特别的,看到打折外加造型还可以就买了。电源唯一需要注意的就是实际运行中并不需要650w那么大功率,每个硬盘差不多十多w就搞定了,但是开机一瞬点启动电流会比较大,电源不能提供12V下足够电流就容易挂硬盘。我想也没有人会一个个慢慢热插拔硬盘来启动,所以还是选择名牌电源比较靠谱。

下文会讲具体的OS选择和虚拟化技术选择,提前预告下牵涉到了Xen的安装和具体PCI passthrough的配置…. 我想应该不用再等三年了

搭建个人家用NAS网络存储服务器 [一]

随着家用宽带的不断提速和高清电影的普及外带单反的家庭占有率越来越搞,仅靠台式机里那几块硬盘越来越不够用了。
简单的计算了一下,家里的台式机上2T的容量(1T+640G+320G)已经接近于80%满,外接一个1.5T的移动硬盘也不是办法。同时还有笔记本上零散的一些数据文件(诸如写的文档),外加数码相机前后拍摄了几个G的照片(尽管我不是Teacher Chan),这些数据如何存放一直都是一个让人不安的话题。考虑再三,决定上一台个人用的NAS(Network attached storage)服务器。

在市场上考察了一番,先是考虑了成品的NAS服务器。比较看得中的有Netgear的ReadyNAS系列,2槽和4槽都比较感兴趣。首先排除的是2槽的机器,因为2槽不足以实现Raid5,并且最大4T的容量也略嫌小了一些。

4槽的机器里还是以Netgear为首选,这一系列产品正处于换代时期,老的NV+ RND4000 4槽服务器是用的600~800mhz的Risc CPU,性能不足以实现诸如Time capsule和DLNA服务,并且传输速率在千兆环境下也只有30余兆。新的ULTRA系列RNDU4000倒是都满足要求,样子也很不错,可惜国内还没有铺货,国外在eBay上是600美金。这东西要运回来可不容易,包装好足有16磅的重量。再考虑到最近海关的丧心病狂,从eBay搞一套回来成本起码在6000以上,太贵了。对于性能不太讲究的话倒是可以考虑上一代的NV+ RND4000,eBay上已经在清仓,全新的机器只要300刀,有路子机场托运一台回来的朋友可以考虑。

Netgear之后考虑了QNAP,但还是觉得价钱不太实惠。这里要提的一点是,对于WD或者Buffalo这样玩票性质的NAS最好不予考虑,他们提供那只能算是带网络服务的外置硬盘。对于数据安全性和扩展性是在是差了点。QNAP这个牌子有所考虑,但我对于它所提供的花里胡哨的Mysql/PHP/Apache服务不感兴趣,我是买NAS的又不是买共享web主机,先把数据安全性做好吧。

一番考量之后,4槽的机器正规渠道最低也要3700,用的还不是X86的CPU,千兆网下性能有瓶颈。一般大厂的机器都要在4500以上,于是萌发了自己动手组装的想法。

自己动手首先想到的是采用ATOM的CPU+主板一体的板子,功耗低而且价钱便宜。可惜INTEL为了保证低端C2D产品线的销量,对NM11芯片组采取了限制,一般都只提供了2个SATA口。即使有像技嘉这样大厂通过外接JMicro的芯片额外提供了2个SATA,也最多不过4口,并且第三方芯片提供的串口稳定性也有待商榷。只有超微Supermicro的一款X7SPA-H服务器用的ATOM主板提供了6个板载SATA(ICH9R)。可惜那块主板在国内的渠道又是个问题,工包也要1500左右,遂放弃。

在找主板的同时机箱倒是很方便的确定好了,联力的一款PC-Q08 ITX小机箱是个不错的选择,支持ITX规格主板,全尺寸ATX电源,并且还能支持6个横置的3.5寸硬盘。这简直就是为了做NAS而设计的。价钱的话淘宝差不多780的样子,不管太贵。当然,如果能接受全尺寸塔式机箱的话那三四百可以买很多提供6个3.5寸槽的机箱了。这里要提的是电源,如果你打算接4个或更多的硬盘,电源最好别考虑那种DC-ATX的小电源(无论内置外置混合置),多个硬盘在启动的时候瞬间电流很大,如果供电不足硬盘寿命大大缩短。我们弄NAS是为了数据存储,不是为了搭个硬盘棺材。全尺寸ATX电源可供选择的就太多了。这里我还是按照传统选了Antec ECO 400w。

机箱确定后,主板也只能买ITX的了。考虑INTEL H55芯片组 + i3 CPU。这样功耗比ATOM约高出30~50w,但性能强很多,万一以后不搞nas了还能做个播放器或压片机之类的。第一考虑的目标还是技嘉,但它只提供4个SATA,有点浪费机箱。最后选择了索泰H55U3,提供6个SATA,还有USB3.0口(极品,将来接外置硬盘拷贝数据太方便了)和WIFI(这个非必需),机器背板自带一个eSata口。我只能说这板子简直就是为了做NAS而设计的,6个串口和机箱配合完美。这块主板也是全固态电容,做工也还可以。WIFI是通过主板上的mini PCIE接口提供的,可以拆卸,将来换个mini PCIE的固态硬盘也不是没可能。同时主板也提供了板载千兆网卡,DVI/HDMI,接口该有的都有了。

CPU没啥好挑的,就INTEL i3 530,双核四线程,做NAS足够了。内存2G也够了(注意,上ZFS的话内存2G是有必要的)硬盘暂时就先上了一块WD的20EARS绿盘,这块硬盘用的4k sector和AFD (Advanced Format Driver)后来给我带来了不少麻烦,下文会提到。

综上所述,最后的配置如下
索泰 H55U3
INTEL i3 530
联力 PC-Q08
OCZ DDR3 1333 2G
WD 20EARS 2T
Antec Eco 400w
不带硬盘的价钱差不多是2900,可以实现6槽最大12T的容量。系统配置会在下文提到。