我的搭建NAS之路---上篇

一边痛苦地折腾,一边享受搞机的乐趣

Posted on 2021-01-09 in NAS

为什么会开始DIY NAS?

这一些要从一个叫 司波图 的B站UP主开始说起。
百无聊赖的一天,看着B站首页推荐的我无意中看到他关于NAS的视频介绍,从此就有了自己一个搭建NAS的想法;
DIY NAS正好满足了以下几个痛点:

  • 为自己闲置的一批电脑硬件寻找再就业的出路。
  • 一摸一样的数据经常需要在笔记本、台式机之间流转,经常同一个软件安装包下载好几次。
  • 顺带学学linux,平时自己写的代码可以在自己的机器上跑跑。
  • 可以在朋友面前装逼。

基于以上几个痛点,我就开始了自己的折腾之路,我万万没想到的是,这玩意一旦折腾起来,一点也不比搞机(主要是装机和玩手机)省钱。

开始前,清点了一下自己的家底。

任何事情都是从认识自己开始的,做人如是,搞机亦然:

经过10多年的积累,手里的家底如下:

  • CPU : I5-4570 * 1 , 奔腾G3260 * 1 均为LGA1150接口
  • 主板:B85-ITX * 1 ,H81-MATX * 1 都不是什么名牌
  • 内存:DDR3 的一堆,8G\4G; 1333\1600; 均有,管够
  • 硬盘:1Tb的3.5寸机械硬盘*2,小于500G的机械盘若干,SSD没有。
  • 其他:闲置显卡1060一张、几个不足500W无牌破烂电源,一些亮机卡。

以上就是手上剩余的一些可以用来折腾的硬件了,准备给这些破烂来个咸鱼翻生,变废为宝是我最初的想法。

ver0.1 Beta版本

魔方

初始版本往往是最好的版本,这句话现在的我看来真的可谓是世界真理。

我先来说硬件构成:

  • CPU :I5-4570
  • 内存:8G * 1
  • 主板:H81-MATX
  • 硬盘:东芝2.5寸机械盘120G * 1、西部数据3.5寸机械盘500G * 1
  • 其他:一个无显卡输出的电源,先马中塔机箱。

选择这样硬件组合的原因十分简单,CPU+主板+内存的组合是之前留下的,我只是把硬盘和机箱装上而已,就得到了最原始的硬件版本,不知道是因为机缘巧合还是命中注定,这个硬件已经十分接近我现在使用的阶段性终结版了。

这个组合运作十分良好,因为是老系统直接继承下来的硬件组合,所以安装OMV系统也十分顺利,这个NAS很快就投入了使用,为我服务了大约1.x-2个月。

最开始我就把我手上一个有坏道的移动硬盘的数据全部转移到NAS里面,然后就是一些以前洪荒时代下载下来的电影、动漫剧集,并享受了一番只要在家,不同设备都可以访问同一份资源的爽快体验。

但是天有不测之风云——-我的第一次翻车就到来了

因为500G的机械硬盘已经服役多年,加上NAS的7*24小时折腾,这块伤痕累累的硬盘就在我回老家的一个周末,突然猝死在了工作岗位上,带上我多年前的珍藏和一些高中回忆,永远地离开了我。

经过本次事故,我得到了以下几个经验:

  • NAS系统支持磁盘阵列不是因为好看,真的很有用。
  • I5+8G的组合对于普通的NAS系统来说,性能明显过剩,属于徒增功耗。
  • NAS的主要热量、噪音来源是硬盘,不是CPU。

跌倒之后就要爬起来,这样才能走得更远。

ver0.5 首次迭代版本

node 304

基于上次的教训,我对硬件做了重新调整,并且希望对把NAS打造成一个我学习Linux的硬件平台,平时还可以跑跑Python什么的,于是就有了这个版本:

  • CPU:奔腾G3260
  • 内存:DDR3 1333 2G * 1
  • 主板:B85-ITX
  • 硬盘:3.5寸机械盘 * (2+1)[2个从现有主机上拆的,1个新买的]
  • 显卡:华硕1060 * 1
  • 另外新购了一些东西:宏碁NVME固态128G、爱国者320W电源、分型工艺NODE304机箱

重新迭代之后版本,主要是使用了性能更低的CPU以及内存,把够用就好发挥到了极致。相反,把硬盘作为重点升级的对象,因为3个硬盘是组RAID5的最低要求,所以就另外购入了一块硬盘;而电源的升级也是因为要满足多硬盘的供电要求,至于显卡和新机箱的加入,实在系统基本规划完成的时候添加,原因是因为正好手上有闲置的1060显卡,而新购置的电源正好有一个6pin显卡供电,主板也有PECI显卡插槽。机箱完全就是为了配合这个奇葩配置专门配的,分型工艺的机箱也很得我心。

貌似一切都进入了正轨,只是,天又有不测之风云;

就在我安装完系统,数据都导入到NAS,准备再次享受NAS提供的便利的时候,我又刷到了那个男人的视频。

视频里,司波图 介绍了他自己的家庭组网配置,被里面的软路由+NAS+HDPC一体机深深种草的我,马上就有了一个大胆的升级计划:我也要打造一个ALL IN ONE家庭数据中心! 于是,我就准备着下一步的NAS升级版。

ver1.0 直接拉跨的正式版

KODI

经过了前两次的迭代,我以为自己已经对NAS系统手到擒来,只是安装一个虚拟机,并无太大问题。

硬件部分:

  • 总体与ver0.5大同小异,只是把3个1Tby硬盘扩张到4个(又买了一个)。
  • 内存:升级到了DDR3 1600 4G * 1.

这里需要说明一下软件部分:

宿主机安装PVE ,下属两个子系统: 1. LEDE软路由系统,占用1个核心+512m内存 2. OMV系统,占用1个核心+2G内存

那么家庭组网就变成了:

组网

子系统通过PVE提供的虚拟网桥通讯,路由器和光猫以AP模式运行,作为交换机连入NAS一体机(此时已经是一个ALL IN ONE硬件了)。无线设备通过AP直接接入到软路由,同时软路由完成拨号上网。OMV则作为软路由的客户端,接入到互联网。

热恋都是很美好的,只有步入婚姻的殿堂之后,才会看到真实的彼此

系统搭建完毕,就是我的噩梦的开始。

首先是因为搭建过程没有考虑自己的使用习惯,忽视自己的个人需求而遇到的问题;

之前安装在小米路由器的加速器插件无法使用了,因为是AP模式,路由器没有任何高级功能,只作为转发机器;其次就是路由器管理我的智能家具的功能也被削弱,因为直连到LEDE的关系,IP控制都到上去LEDE管理后台,原本小米路由器的后台形同虚设,小米路由器的APP也没有太多作用。

如果说昂贵的路由器沦为AP是差强人意的话,那么接下来的问题就咎由自取的重大失误。

因为一心只关注软件系统的设计,而完全忽视了硬件的支持,满目自信和理所当然的结果就是导致设计中的HDPC无法实现。

原因很简单,奔腾的G3260是不支持英特尔的VT-D硬件直通的;不支持硬件直通,就意味着:安装在虚拟机的OMV,在播放硬盘的视频的时候无法调用CPU的硬件解码,GPU也不能被挂载,视频也无法通过主板的HDMI输出到电视。而放弃虚拟机,就是意味着LEDE软路由必须在别的硬件上实现, 而我家里只有一根网线从光猫到路由器,没有交换机,没有其他网线接口,所以这个设计在最开始的时候就存在致命缺陷,而我知道所有软件安装完毕,在配置虚拟机的时候才发现。

知道自己的无知,破除无知的第一步

因为设计的失败,我只能把这个方案推倒重做。但是做过程序开发的都知道,永远都是重构比维护升级旧系统容易;经过这段时间的折腾,之前闲置的硬件已经被打包成一个新PC在老家服役,这就意味着,我不止是要折腾手上的NAS,还要回老家拆解已经安装好的WIN10-PC,还要设计一个更加合理的硬件方案以满足我的需求,不止是现在的需求,还有以后的需求。

一切又回到了原点,下一篇,我就来说一下后来比较成熟合理的方案和未来的规划;折腾永远不会停止,我会一直前进。