[分享] 低成本打造小型创业公司用大容量 NAS

2016-05-21 03:52:39 +08:00
 msg7086

前言

公司投资钱烧完了,拿不出多少钱来花。

开发部门想要用 NAS 和 SAN 来测试项目中用到的 NFS 和 iSCSI 挂载功能,大约 10 个开发&测试人员,每个人要 1T-2T 左右的 LUN 各 1-3 个,于是来问怎么搞最省钱。

现有原材料

办公楼一幢,服务器机房一间,内有空调、机架、服务器和电池若干。

闲置 DDR3 ECC 内存若干,客户返品的二手 4TB 企业级硬盘若干,各种电脑配件若干。

清理灰尘用的空气罐 2 个,螺丝刀等工具各类。

目标

组建 30-50TB 可用空间的 NAS 一台,可导出 NFS 和 iSCSI ,比较稳定,比较容易维护。

当然最重要的,性价比尽可能高,开支尽可能小。能耗也不能太高,因为电费很昂贵。

选型

做企业级 NAS ,首选使用 ZFS 文件系统,非常可靠维护也不麻烦。

Ubuntu 16.04 正式由官方提供 ZFS 支持,因此操作系统就直接用大家都熟悉的 Ubuntu 了。

考虑到现有 4TB 硬盘若干,直接上 12 盘热插拔箱子比较划算,总容量也正好合适。

ZFS RAID Z3 阵列, 12 盘里 9 盘数据 3 盘校验,总共 36TB 可用空间。

另配一块 SSD 用来做系统盘、 ZIL 和读缓冲。

硬件方面,在市场上搜寻合适的 12 盘服务器,结果找到了 DELL C2100 系列。

DELL C2100

2U 机架, 12x 3.5 inch 热插拔 & SAS Expander 背板, 750W 电源。

2x1366 平台, 18x DDR3 ECC 内存槽, 2x PCI-E x8 扩展槽。

基本能够满足要求,而且最重要的是,价格便宜。

采购

联系了一家销量比较高的卖家,带 2 块 L5630 CPU , 12 个硬盘笼,双电源,加上运费,报价总共 $180 。

接背板所用的 HBA 卡则是随便买了块 Dell H310 ,然后回来自己刷了 IT 固件。报价 $70 左右。

SSD 随便去隔壁电脑城买了个 Sandisk 的 240G ,$65 。

安装

由于服务器是二手退役货,灰比较多,所以拿到手以后先整个用空气罐吹了一遍。

然后硬盘笼全部拆下来扔进水槽里冲洗一遍,用手甩干擦干后再放在一边慢慢风干。

散热器全部拆下以后,把干枯分叉(?)的硅脂都刮干净,然后重新上了硅脂后再装好。

(散热器上有些鳍片略有碰撞变形,最后自己拿尖嘴钳慢慢掰正。)

内存插了些 8G 的库存货。

(由于开机后发现中间槽的内存无法识别,所以最后插了 8x8G = 64G 。)

PCI-E 上插了一片 10GbE 和一片 HBA ,然后把 HBA 接到 SAS Expander 上。

最后装上 13 块硬盘,盖上盖子就大功告成了。

配置

装上 Ubuntu ,然后直接就认出了 12 片 4TB 。

一口气全部加入 zpool ,然后再加上两个 SSD 分区作 logs 和 cache ,即可。

NFS 太简单就不说了。

iSCSI 是用的 Linux-IO Target , targetcli 稍微配置一下就行了,很方便。

现在已经连续运行两周了,并没出什么问题,应该就可以扔在那不用管了。

费用

采购费用除去闲置配件外总共花费 $315 ,算是目标达成了,老大表示很爽。

耗电的话大约是 2-3Amps ,约 300W ,一年电费开销大约在 $400 左右。

(其中硬盘大约用了 140W ,剩下的主要是 CPU 和冗余电源的开销。)

闲置配件成本

4TB 企业级全新售价大约 $175/片, 12 片总共 $2100 。

10GbE 二手售价大约 $150/片。

内存 64G 二手售价大约 $130 。

9709 次点击
所在节点    分享创造
21 条回复
kslr
2016-05-21 04:11:29 +08:00
很棒,电费确实是个麻烦,这旧机器太费电了,我在家里扔的这台,每年电费也差不多 2000 左右,也不知道选这种是对是错
msg7086
2016-05-21 04:17:32 +08:00
@kslr 硬盘本身开销不少。剩下的 200W 的功耗其实也很难省下多少。
家用的话不需要冗余电源和双路 CPU ,可以再省下一些电。
kslr
2016-05-21 04:26:39 +08:00
kslr
2016-05-21 04:28:50 +08:00
@msg7086 恩,我没有挂那么多硬盘,电源可以拆掉一部分但是其他的太折腾了,尽量还是走创造价值这条路
lhbc
2016-05-21 09:18:54 +08:00
FreeNAS 的 zlog 和 cache 必须独立硬盘……
xiamx
2016-05-21 09:58:39 +08:00
从 frontend 到 backend 到 devops 到 IT 都行的 @msg7086
soulteary
2016-05-21 10:00:34 +08:00
@kslr 我觉得这个方案已经很省了,之前心痒过同款 u , ibm m2/3 老机器,实在是只有家用需求,不想听硬盘和风扇集体狂欢,忍住了……


@msg7086 赞实践, cache log 可以试试二手大容量 intel ssd ,读写少的性价比蛮不错。另外,上双路是有其他需求吧,感觉即使 12 盘位,应该也不需要双路 u 支撑吧……
carmark
2016-05-21 10:51:35 +08:00
为什么不直接 opensolaris ?
kslr
2016-05-21 11:57:10 +08:00
@soulteary 看情况,我这台拔掉调试时的显卡后声音很小,和台式机差不多,导致我的静音风扇也没有用上。
msg7086
2016-05-21 12:19:10 +08:00
@soulteary 成本所限。
等以后公司有钱了再买独立 SSD 也不是不行。
另外我们写入也只做开发和测试用,其实 SSD 写入量很少的。
与其买 SLC 还不如直接拿便宜的 SSD 用到报废了再花小钱换。 SSD 是一路暴跌的,没必要提前投资。

双路没太大的需求,然而一块 CPU 大概也就$5 的样子,就算你少要一块最后总价也不会有多少差。
但是插内存的时候就自由很多,有 18 槽可以用,单路的话就只有 9 槽了。
(实际到手坏了一个 channel ,那样的话就只有 6 槽可用了。)
小容量的内存比大容量的便宜太多。

噪音感觉基本能接受。放在机房里很明显被其他服务器声音盖下去的。
2U 的风扇,大概跑在 4000rpm 上,不算太过分。(但是风量偏小倒是真的。)

@carmark 没人会。
这台服务器就我(开发)和一个客服小哥在管,不想多花时间适应了。
Deb 系的 Ubuntu 公司里的开发都熟,谁都有能力去搞,自然是首选 Ubuntu 了。

@xiamx 我基本都是在打酱油……
soulteary
2016-05-21 15:37:05 +08:00
@msg7086 一颗 5$...location 哪里啊,也是, 18 槽就是插基本白送的 2G 都好爽啊, 2U 应该不上显卡还好,但是还是吵,不适合家里吧……
qceytzn
2016-05-21 18:18:40 +08:00
楼主坐标何方?价格都是$?
wbsdty331
2016-05-21 18:38:35 +08:00
可以试试用 ssd 做缓存回写
testisitok
2016-05-21 18:38:38 +08:00
你对你们老大是真爱
phoenixlzx
2016-05-21 18:56:19 +08:00
有纪菊苣真是辛苦了_(:з」∠)_
fcicq
2016-05-21 20:00:04 +08:00
用 ZFS on Linux 的话想调度 IO 的话短时间就不可能了, 幸亏只是用来做个存储问题不大. 跑容器虚拟机数据库就一概不适合.
schezukNewTos
2016-05-21 21:02:51 +08:00
fcicq
2016-05-21 21:51:21 +08:00
@schezukNewTos 随便一个列存存储都不需要文件系统再压缩一次. 靠 ZFS 的压缩算什么本事? 能跑起 ZFS 的机器, 数据库 instance 通常不止一个, 这些进程的 IO 公平性用 cgroups 管理不了, ZFS 调度器看不到 pid, 反过来 linux 的 IO 调度器只能看到 ZFS worker 所以调度都废了.
lutla
2016-05-21 22:39:31 +08:00
md 当年用了 intel320 ,现在想坑点 ssd 回去都不行!
msg7086
2016-05-22 05:09:56 +08:00
@soulteary http://www.ebay.com/itm/311516192731 这种感觉。
插内存要考虑低成本的话还是以 4G 为主,但是 8G 也不贵,$100 = 6x8G 左右。
16G 价格还是很高,如果要插 288G 内存,还是要花不少钱。

@qceytzn 美国。

@wbsdty331 ZIL 就是缓存回写吧。同步写入的数据先进 SSD 然后再刷进盘阵里。

@fcicq 是啊不考虑高 I/O 项目。高 I/O 就上全固态盘阵了,而且也不会做单阵,而会考虑做双 Z2 。

@phoenixlzx 卷菊 prpr ……

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/280177

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX