升级了NAS机器

Posted on December 18, 2020

上次折腾NAS, 最后搞了8个8T的盘阵列。但是,我愈发的不满意 C3558 的性能。准备替换掉它。但是又觉得C3558花费巨大,没用回本实在不甘心。

最近几个月,zfs 频繁出现 checkcum error。但是诡异的是,总是 sda sdb sdc sdd 这4个盘出现。

感觉主板出了问题。或者是机箱的背板出了问题。不论哪个出了问题,都到了让C3558退休的时候了。

既然要退休,就要想好继任者。继任者在 MIPS (龙芯) ARM64(鲲鹏) 和 x86 里。有缺点都特别明显。

龙芯

  • 优点
    • 从 bios 到 内核 到 userland 整个都是开源的。方便折腾。
    • bios 可以通过串口访问。取消了 IPMI 的依赖依然可以不接显示器键盘进行配置
    • 低功耗 当然,缺点也很大。第一个缺点就是性价比太低。然后性能也跑不满万兆网络。说不定还不如 C3558 呢。

鲲鹏

  • 优点
    • arm 架构在 linux 里的支持度不亚于 x86. 比 mips 好太多。
    • 性能足够,能跑满万兆
    • 进行嵌入式开发的时候可以直接为开发板编译软件,不用在 pc 上配置交叉编译环境。
    • bios 依然可以通过串口访问。无需依赖 IPMI

除了性价比太低,么有特别的缺点

x86 的选择就大了,最终我在3个方案里选择。

  • 方案1 intel E3 神U + ECC 内存 + SAS HBA + 万兆网卡 + 4U 8盘 380mm深度机箱。

这个是翼王使用的配置。缺点是他是牙膏厂的东西。吃了C3558的亏后不想用牙膏厂的东西,而且14nm的能耗比也差。

  • 方案2 嵌入式epyc itx 主板 + ECC 内存 + 万兆网卡 + 2U 8盘 450mm深度机箱。

嵌入式epyc有很多 sata 口,所有只要再加一条万兆网卡就可以了,因此可以使用小板,这样就能使用2U的小机箱了, 机柜能更简洁。缺点是嵌入式 epyc 的主板价格不厚道不说,还不好买。需要等美国进货。

  • 方案3 amd ryzen cpu + A系列小主板 + ECC 内存 + SAS 卡 + 万兆网卡 + pcie 1分2拆分延长线 + 2U 8盘 450mm深度机箱

这个方案使用的是 ryzen 系列的 cpu,毕竟 7nm 的 cpu,能耗比是所有方案里最好的。但是这个方案的缺点就是 PC 平台 没有 ipmi。需要调整 bios 或者 内核启动出错的时候,必须依靠显示器。而且 ryzen 并没有核显,需要拔掉 pcie 设备插 上显卡。。。 非常的折腾。但是 pc 平台最大的优势就是性价比突出。正好赶上5600X 上市了,于是没犹豫多少就买了 5600X 和 微星的 A520ITX 主板。

itx 只有一条pcie x16, 怎么接 sas hba 和 万兆网卡呢?答案是 pcie 拆分。 然后就是烧了好近千大洋,买了多种无 PLX 的 pcie 拆分卡,最后才找到了一个能完美工作的拆分卡。有 PLX 的卡第一缺点钱是贵,第二缺点是卡上的 PLX 本身是发热大户。第三缺点是 PLX 也增加了pcie 的延迟。第四缺点是我 5600X 本身是支持 pcie 拆分的,干嘛不用白不用? 最终能用的拆分卡如下

A520 主板有很多,选微星的一个很重要原因是微星主板上有串口。虽然不是IO挡板提供的,但是主板上有一个 10pin 的 COM header 插座。淘宝上能很容易的买到 ISP转db9 的转接线+pci挡板。而备选的华擎A520则没有 COM 的针脚。这两个主板都是在官网明确说明支持ECC内存的。虽然 ryzen 支持ECC内存,但是也需要主板bios的配合。所有其他牌子没说明支持ECC的就pass了。

有了串口,虽然pc的 bios 本身不能输出到串口,但是 grub 和 内核能啊!至少可以通过串口操作 grub ,就能编译内核失败的时候在 grub 里换内核。内核能操作串口,就能在需要进入 emergency shell 的时候恢复系统。只是 bios 设置无法调整了。所有插上显卡,配置好参数后,就别再折腾了。

最后,是机箱。受限于我的机柜,只能使用500mm深度以内的机箱。那种650mm深的正经服务器机箱就不能用了。 一开始 C3558 使用的是 3U 8盘的机箱。这种机箱最大的问题是硬盘散热不足。机箱背面的排气风扇,排出机箱热气的同时,是直接将硬盘下方的进风口的冷空气吸入。硬盘本身的积热没有解决。

所有我考虑再三,买了2U 的机箱。这种机箱,风扇直接在硬盘后面抽,冷空气要想进入机箱,必须首先经过盘位。从硬盘盒的前方开孔进入盘位,流过硬盘后再被硬盘和主板之间的4个 8cm 风扇抽入主板区域。在这个区域为 cpu 散热后,通过机箱后部的风扇和电源风扇排出。

这种可以看到,主板只能放 itx 的。但是 pci 挡板位却不止一个(itx只有一个 pcie),显然是要 itx + pcie 拆分卡。(^_^)

终于,采购齐全,把机器装起来了。

且慢,为啥我折腾了那么久,花了好几千,只是提升了一下cpu的性能?好像容量也没有增加啊!之前C3558没有使用 sas hba 卡,现在都上了 sas hba 卡了,怎么着也得弄个 sas 背板吧?

没错,可是带 sas 背板的,都是 650mm 深的大机箱啊!用不了用不了。

等等,经我耐心的搜索,还真给我找到了。

这个机箱只有 480mm 深,内部依然紧凑,只能使用 itx 主板。但是 pci 挡板位却不止一个(itx只有一个 pcie),显然是要 itx + pcie 拆分卡。(^_^)。

虽然能上 ATX 电源,但是小空间下放 atx 电源,内部气流容易不畅,so我买了 SFX 电源+ SFX转ATX传接挡板。

最后,在 jd 突然看到 999 的 2T ssd 。。。。。 还有最后一个 光威Pro NVMe 500G 。。。。

就这样,花了万把块钱,升级了 NAS。 最终的成品图片如下

Comments