找回密码
 立即注册
搜索
查看: 8627|回复: 28

[软件] 基于pve+openmediavault搭建nas,替换unraid

[复制链接]
     
发表于 2020-4-7 22:41 | 显示全部楼层 |阅读模式
前几天使用unraid作为主系统把nas搭好了,不过不清楚是不是启动u盘有问题,偶尔会出现无法开机的情况,考虑到unraid只有30天的试用期,加上unraid的底层是slackware这个小众Linux发行版,遇到问题难以排查,而且还是个闭源系统,就转向了开源方案。
首先选定nas系统,采用开源方案,自然就是freenas,openmediavault等等几个nas操作系统了,freenas因为底层是freebsd,而且我用不上zfs,也没有原生的docker,排除掉之后便转向了openmediavault这个nas系统(以下简称OMV)。
从底子上来说,OMV就十分优秀,omv底层采用的是debian10,相比Ubuntu和arch等发行版更加稳定,同时相对于centos等服务器专用发行版,在软件包管理上面更加方便,软件包还很新,更加适合家用。
omv简单来说就是套了一层nas专用gui的debian10,而且对于nas这个方向的功能也增加了一些方便的插件和配套的gui,让你点点鼠标就能实现相当多的功能,例如一键安装docker,采用zfs系统,组建raid池等功能。
仅仅作为一个nas系统,omv已经十分足够了,然而在虚拟化方面,omv仅仅支持virtualbox,比起kvm和esxi等根本不够看,于是我采用了promox ve这个专业、开源的虚拟化系统,在这之上虚拟omv,并运行软路由,黑群晖等其他虚拟机。
简单形容pve的话,就是基于debian的kvm方案。是的,和omv一样,因为debian的开源和稳定性等原因,pve也采取了debian为底层,并在这之上使用kvm和qeum虚拟机实现方案,添加方便的gui和相当多的虚拟机功能例如快照、备份、迁移,开发出了这样一款type型的hypervisor。(VMware workstation、vbox、unraid这样的属于type型hypervisor)。
如此一来,结合pve和omv各自的优点,便形成了这样一个具有强大的虚拟化功能、友好界面、底层稳定的nas系统方案。
安装完pve后,给omv分配了20gb的虚拟硬盘作为安装系统的空间,同时将两块原来在unraid系统里的硬盘“直通”到虚拟机里,挂载后omv直接识别了原来的xfs格式硬盘。
这里我之所以在“直通”这里使用了引号,是因为这里的“直通”是假直通,并不是像显卡,usb,网口那样的“真直通”。硬盘“直通”,准确说应该是映射,虚拟机并没用获取直接控制硬盘的权限,数据的传输依然需要走宿主机,而且虚拟机无法让硬盘休眠、停转、获取smart信息,真正的硬盘“直通”,应该是让虚拟机获取sata控制器,或者直通pcie接口的sata拓展卡,这样虚拟机才能直接控制硬盘,甚至在宿主机运行的时候让硬盘停转。
由于我的pve系统目前还装在一块sata硬盘中,自然是无法把sata控制器直通给虚拟机了,但仅仅是硬盘“直通”就能让虚拟机直接格式化整个硬盘了。
在omv中,我们可以凭借插件来获取类似unraid这样的文件系统。这点b站司波图的视频介绍的很详细,推荐观看。
首先是采用unionfs这个插件,将存储空间合并成一整个存储池,方便管理文件,而无需顾及每个硬盘,例如我将3+4+4的硬盘合并成了一个11t的存储池。同时,为了进行冗余,我使用了snapraid这个目录级别的冗余软件,对存储池进行冗余,即使毁坏一块硬盘,也能保证数据的恢复。
第一次运行snapraid进行同步花了七个小时,由于是增量同步以后的时间就短多了,设置了脚本每天夜里一点开始运行。
关于snapraid,我前两个关于nas和unraid的帖子说的比较多了,而且司波图和网上的文章也说的很详细,有兴趣的可以了解一下这个不同的raid的冗余方案。
除了以上两个插件,omv还有不少其他实用的,例如zfs插件,sftp服务器插件,brogbackup插件,搜索插件,下载插件等等,虽然大部分都能通过命令行或者docker安装使用,但提供了这么多开箱即用的工具也是蛮爽的。
折腾完文件系统,把smb和nfs分享开启,下一部就是docker了,直接网页点几下无脑安装。
omv默认提供的docker管理界面是portainer,这个软件本身也是以一个docker容器形式安装的,也提供了一些例如远程管理docker的高级功能。虽然界面稍微有些复杂,不过比起群晖或者unraid的docker管理界面,portainer对于图形界面和命令行部署的docker容器都“一视同仁”,在一些其他nas系统中,使用图形界面是无法管理命令行创建的容器的,而使用portainer则不痛,你可以用你喜欢的方式管理部署容器和docker镜像,从这点来看,portainer比起其他nas系统的docker管理界面好多了。
考虑到这点,我感觉部署docker容器还是尽量使用命令行,把每个容器的部署信息备份下来,直接复制粘贴运行即可,也省得鼠标点来点去。
以前一直担心使用虚拟机运行nas系统会造成性能大幅下降,但几天使用下来,并没有想象中的不堪,根据官方测试的结果,kvm造成的cpu性能下降只有3%以下,主要是io性能的下降,不过在家用nas这种场景下,这点性能下降也并非无法接受,实在不行还能网卡、硬盘直通,最大限度减少损耗。
在这之后部署黑群晖和软路由略过不提,值得一提的是使用虚拟机运行nas的相当大的一个优点:虚拟机快照
在进行文件系统冗余和备份后,“直通”的数据盘安全性已经很高了,但nas系统也有挂掉的风险,例如设置不当,而且恢复起来虽然没用数据方面的损失,安装插件和docker应用,进行设置也费时费力。
而这时,虚拟机快照功能就起作用了,pve支持在虚拟机进行运行的时候直接把虚拟机的所有设置和系统都备份起来,在虚拟机系统挂掉甚至pve物理机本身挂掉后,只要有备份文件,就能一键恢复,你所要做的是保存好虚拟机的备份文件。
所有内容就差不多这些了,这不是一份教程,仅仅是把我折腾的内容大致叙述了一遍。
使用虚拟机平台运行nas,这样的组合好处是很多的,甚至安全性比起物理机都要高,只要你能够利用好pve的快照功能,每天定时进行备份,保存好系统备份,即便是虚拟机或者物理机平台挂了,也能直接恢复系统和数据,而物理机挂了,也只需要重新安装pve,而pve本身也无需多少的设置。
其次的好处便是更加灵活。由于nas是虚拟机的,因此你可以在任意硬件的pve平台上转移你的系统,而无需在意物理机硬件的变更。同时,整台电脑也因为虚拟化而抽象成了计算机资源,你可以更加游刃有余地分配资源,例如cpu核心、内存、硬盘空间、网络接口、pcie设备、usb接口等等。
要说对于nas最大的不足,应该是硬盘“直通”后无法获取硬盘的底层信息如smart和温度,无法进行休眠和停转等操作,但pve本身内置了smart信息查看程序,你也可以通过hddtemp等软件获取硬盘温度,邮件进行警报等等,无非是麻烦了点。
当然,上面的缺点你也可以通过直通主板sata控制器,pve安装在nvme或m2接口的硬盘里来解决,使用pcie接口的sata拓展卡解决等等。
最后就是性能损耗这个绕不开的问题了,尤其是io性能,家用的话相信大部分人都能接受,而且virtio等半虚拟化技术也能一定程度解决这个问题,只能说无法接受损耗的尽量直通设备以减少损耗,或者上物理机吧。

评分

参与人数 2战斗力 +2 收起 理由
JWJking + 1 好评加鹅
yst234 + 1 好评加鹅

查看全部评分

回复

使用道具 举报

     
发表于 2020-4-8 23:27 来自手机 | 显示全部楼层
我恰恰是pve转到unraid去的。。。主要是正好有三块1t 那就组个校验
pve做直通还是麻烦点 而且不支持我那块asm1061直通它就死机
pve快照是蛮方便的,不过unraid把虚拟机的硬盘img直接拷出来完事了,也不差太多
pve挂了我两个u盘了,不明原因

—— 来自 Xiaomi MIX 2S, Android 9上的 S1Next-鹅版 v2.2.2.1
回复

使用道具 举报

发表于 2020-4-9 00:28 来自手机 | 显示全部楼层
OMV有个PVE内核,装上之后可以用KVM,就不用折腾直通了

—— 来自 Xiaomi MI 9, Android 9上的 S1Next-鹅版 v2.2.2.1
回复

使用道具 举报

发表于 2020-4-9 01:58 | 显示全部楼层
问一下如果把pve换成esxi可以吗……
回复

使用道具 举报

     
 楼主| 发表于 2020-4-9 07:36 来自手机 | 显示全部楼层
seducer0719 发表于 2020-4-9 01:58
问一下如果把pve换成esxi可以吗……

可以
这俩应该差不太多

—— 来自 Xiaomi MIX 2S, Android 10上的 S1Next-鹅版 v2.2.2.1

评分

参与人数 1战斗力 +1 收起 理由
seducer0719 + 1 思路广

查看全部评分

回复

使用道具 举报

     
 楼主| 发表于 2020-4-9 07:43 来自手机 | 显示全部楼层
主舵者 发表于 2020-4-9 00:28
OMV有个PVE内核,装上之后可以用KVM,就不用折腾直通了

—— 来自 Xiaomi MI 9, Android 9上的 S1Next-鹅 ...

这个内核其实没啥卵用
安装后直接能提升的好像是zfs兼容性,不会自动给你配置kvm
而且omv上配置kvm,和在debian上配置kvm过程和结果应该差不多,一般用户我估计很难搞定
而且这样折腾稳定性和性价比太低,还不如用pve折腾直通

—— 来自 Xiaomi MIX 2S, Android 10上的 S1Next-鹅版 v2.2.2.1
回复

使用道具 举报

     
 楼主| 发表于 2020-4-9 07:56 来自手机 | 显示全部楼层
jing86 发表于 2020-4-8 23:27
我恰恰是pve转到unraid去的。。。主要是正好有三块1t 那就组个校验
pve做直通还是麻烦点 而且不支持我那块a ...

我在网上搜到了这块sata扩展卡直通的教程,有成功的案例,应该是直通的操作没有做好,比如iommu分组和宿主机屏蔽pcie设备等
现在想想,我对unraid的不满好像一部分源于我对slackware这个发行版的不满意,内心潜意识就想换成debian,而且unraid和omv+pve功能还差不多,但后两者都是开源免费的

—— 来自 Xiaomi MIX 2S, Android 10上的 S1Next-鹅版 v2.2.2.1
回复

使用道具 举报

     
发表于 2020-4-9 09:32 | 显示全部楼层
lz用omv了,为啥还要装黑群?是为了app么?
我用了快2年黑群了,那些app没啥大用,新鲜一阵就完了。
回复

使用道具 举报

     
 楼主| 发表于 2020-4-9 10:28 来自手机 | 显示全部楼层
本帖最后由 KnightHart 于 2020-4-9 10:36 编辑
暗影翔 发表于 2020-4-9 09:32
lz用omv了,为啥还要装黑群?是为了app么?
我用了快2年黑群了,那些app没啥大用,新鲜一阵就完了。 ...

百度云下载,试了好几个百度云下载器都不行,也懒得为Windows再虚拟一个
还有就是家庭照片管理和展示,试了好几个软件,plex,emby,piwigo,都不如群晖的
别的几个套件倒是没多大用,都有更好的替代方案,只能当玩具了
另外虽然群晖这系统阉割了一堆东西,功能性也不咋地,不过这系统占用倒是真的不多,毕竟群晖的硬件弱,还得在arm设备上运行

—— 来自 Xiaomi MIX 2S, Android 10上的 S1Next-鹅版 v2.2.2.1
回复

使用道具 举报

发表于 2020-4-9 10:53 来自手机 | 显示全部楼层
本帖最后由 主舵者 于 2020-4-9 10:57 编辑
KnightHart 发表于 2020-4-9 07:43
这个内核其实没啥卵用
安装后直接能提升的好像是zfs兼容性,不会自动给你配置kvm
而且omv上配置kvm,和在 ...

我以前在OMV3上配过KVM,确实需要点linux基础。
不过KVM性能也没比现在的VirtualBox6.2好出特别多(15%的差距,不跑重负载应用感受不出来),就无所谓了,GUI万岁

—— 来自 samsung SM-G9880, Android 9上的 S1Next-鹅版 v2.2.2.1
回复

使用道具 举报

发表于 2020-4-9 10:55 | 显示全部楼层
百度云的话可以用Docker-CodeWeavers_CrossOver-VNC
回复

使用道具 举报

     
发表于 2020-4-9 15:33 来自手机 | 显示全部楼层
我把百度云一次性掏空到本地之后就没再用过百度云
回复

使用道具 举报

     
发表于 2020-4-9 15:45 | 显示全部楼层
OMV4到5好像分裂了一次,5开始对树莓派支持变差好多(限于网中网来说),软件几乎没法更新和安装。
回复

使用道具 举报

     
 楼主| 发表于 2020-4-9 16:28 来自手机 | 显示全部楼层
sorayang 发表于 2020-4-9 15:45
OMV4到5好像分裂了一次,5开始对树莓派支持变差好多(限于网中网来说),软件几乎没法更新和安装。 ...

是的,本来之前想在pi上玩玩,愣是没找到镜像
而且omv4的几个插件也不见了,例如virtualbox插件

—— 来自 Xiaomi MIX 2S, Android 10上的 S1Next-鹅版 v2.2.2.1
回复

使用道具 举报

     
发表于 2020-4-9 22:50 来自手机 | 显示全部楼层
暗影翔 发表于 2020-4-9 09:32
lz用omv了,为啥还要装黑群?是为了app么?
我用了快2年黑群了,那些app没啥大用,新鲜一阵就完了。 ...

我也是又装了一个黑群 就为了它的cloud系列套件同步百度云和onedrive用
docker上真没有比群晖的cloud系列好使易用的同步程序
emby和jellyfin倒是基本跟dsvideo也差不多了甚至更强一些



—— 来自 Xiaomi MIX 2S, Android 9上的 S1Next-鹅版 v2.2.2.1
回复

使用道具 举报

     
发表于 2020-4-9 23:31 来自手机 | 显示全部楼层
KnightHart 发表于 2020-4-9 07:43
这个内核其实没啥卵用
安装后直接能提升的好像是zfs兼容性,不会自动给你配置kvm
而且omv上配置kvm,和在 ...

我这边为了扩展和省电拔了显卡 来回折腾太麻烦了
便宜sata卡88se9215的兼容性还是比asm1061好的

我换掉pve也是因为要么pve里能看到硬盘smart信息群晖卡着 要么直通控制器更改启动镜像让群晖看到smart信息 外面看不见  其实下载机折腾文件休眠也没多大意义   有点强迫症

unraid功能上确实死板了些 但是就反而没那么折腾 软路由在虚拟机上  
pve的debian系统如果折腾挂了这恢复的工作量实在是太大反而不敢动

—— 来自 Xiaomi MIX 2S, Android 9上的 S1Next-鹅版 v2.2.2.1
回复

使用道具 举报

     
 楼主| 发表于 2020-4-10 10:05 来自手机 | 显示全部楼层
jing86 发表于 2020-4-9 23:31
我这边为了扩展和省电拔了显卡 来回折腾太麻烦了
便宜sata卡88se9215的兼容性还是比asm1061好的

pve的debian系统的确不敢动,Linux的软件依赖关系太严重,指不定安装个啥东西就出毛病了
所以我现在只是简单配置了下pve内置的邮件发送功能,配合自带的smart检测器,自己额外安装了个hddtemp小工具,手写bash进行邮件预警
说到底,我们也没有动不动查看smart和温度的需求,只是希望能够及时发现问题,这样邮件预警差不多就足够了
不过只要你把虚拟机快照备份好,本身pve是不需要什么配置的,宿主机系统挂了就挂了
另外cloudsync的大杀器我觉得是百度云同步,其他的功能使用rclone+restic都能实现,只是没有gui有些麻烦


—— 来自 Xiaomi MIX 2S, Android 10上的 S1Next-鹅版 v2.2.2.1
回复

使用道具 举报

发表于 2020-4-10 17:39 来自手机 | 显示全部楼层
pve + omv 也没解决 休眠 和 smart 的问题呀 能说说 没用 esxi 或者 直接 linux kvm 的考虑吗
回复

使用道具 举报

     
发表于 2020-4-10 22:25 | 显示全部楼层
KnightHart 发表于 2020-4-9 10:28
百度云下载,试了好几个百度云下载器都不行,也懒得为Windows再虚拟一个
还有就是家庭照片管理和展示,试 ...

我对照片展示功能也没啥需求了,自己用,家里父母根本就不用。
我现在对群晖反感的主要是特制的文件系统,外加脑残我选的btrfs,恢复起来比较麻烦,其实重建一下虚拟系统就好了,我也备份了。但是倒腾资料还只能用群晖,否则挂载到其他系统下群晖认不得了。
另外群晖本身的套件少了点,还是不如完整版的linux系统。
我打算装个debian+lxqt桌面,再装omv,把百度云和驴子都挂到上面,就不用开win虚拟机了。百度云有官方linux版。
回复

使用道具 举报

     
发表于 2020-4-10 22:26 | 显示全部楼层
jing86 发表于 2020-4-9 22:50
我也是又装了一个黑群 就为了它的cloud系列套件同步百度云和onedrive用
docker上真没有比群晖的cloud系列 ...

主要是我不需要同步程序,都是本地备份,工作资料除了最近居家办公,否则都是单位内网,也不可能随便导出同步。
回复

使用道具 举报

     
发表于 2020-8-7 16:24 | 显示全部楼层
没想到通过搜索引擎, 在s1看到正好在做的事情的文章,  
之前搭建物理黑群晖,很简单的成功后, 正在一步一步踩坑安装虚拟机加群晖加软路由。

由于 主要采用闲置配件, 没有按照大神的保姆级教程采购硬件,  所以需要踩的坑不少。 正在研究中
回复

使用道具 举报

     
发表于 2020-8-7 16:43 来自手机 | 显示全部楼层
本帖最后由 爱吃豆包 于 2020-8-7 16:44 编辑

说错,unraid底层是kvm,其实也是虚拟机
回复

使用道具 举报

     
 楼主| 发表于 2020-8-7 17:38 | 显示全部楼层
爱吃豆包 发表于 2020-8-7 16:43
说错,unraid底层是kvm,其实也是虚拟机

unraid基于slackware这个发行版,用的虚拟化技术是KVM
无论是I型还是Ⅱ型的虚拟机底层都需要安装一个宿主机系统
没有无中生有这种东西
回复

使用道具 举报

     
发表于 2020-8-7 17:44 | 显示全部楼层
暗影翔 发表于 2020-4-10 22:25
我对照片展示功能也没啥需求了,自己用,家里父母根本就不用。
我现在对群晖反感的主要是特制的文件系统 ...

linux的百度云从上个月开始基本不能用了,下载速度基本为0
回复

使用道具 举报

     
发表于 2020-8-7 20:28 | 显示全部楼层
KnightHart 发表于 2020-8-7 17:38
unraid基于slackware这个发行版,用的虚拟化技术是KVM
无论是I型还是Ⅱ型的虚拟机底层都需要安装一个宿主 ...

我在的QQ群的有人说PVE虚拟机不能查看smrat,是因为没有直通sata控制器?
回复

使用道具 举报

     
发表于 2020-8-7 20:53 | 显示全部楼层
neotaburiss 发表于 2020-8-7 17:44
linux的百度云从上个月开始基本不能用了,下载速度基本为0

是的,用了一两次然后发现就完全无法用了,还是要开windows虚拟机啊。辣鸡艳红。
回复

使用道具 举报

     
 楼主| 发表于 2020-8-8 07:50 来自手机 | 显示全部楼层
爱吃豆包 发表于 2020-8-7 20:28
我在的QQ群的有人说PVE虚拟机不能查看smrat,是因为没有直通sata控制器?


不过真的需要虚拟机查看smart吗
pve本身就能查看smart

—— 来自 Xiaomi MIX 2S, Android 10上的 S1Next-鹅版 v2.2.2.1
回复

使用道具 举报

     
发表于 2020-8-8 09:07 来自手机 | 显示全部楼层
我是unraid,搭上黑裙和docker,完全能满足要求

—— 来自 HUAWEI ALP-AL00, Android 10上的 S1Next-鹅版 v2.2.2.1
回复

使用道具 举报

     
发表于 2020-8-8 10:11 来自手机 | 显示全部楼层
omv直接配kvm,然后虚拟了openwrt做旁路由,一个Windows偶尔有些特定用途,docker装了些东西,最后发现最大用途就是下载机

—— 来自 Xiaomi Mi 10, Android 10上的 S1Next-鹅版 v2.2.2.1
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|上海互联网违法和不良信息举报中心|网上有害信息举报专区|962110 反电信诈骗|举报电话 021-62035905|Stage1st ( 沪ICP备13020230号-1|沪公网安备 31010702007642号 )

GMT+8, 2024-9-25 11:17 , Processed in 0.108557 second(s), 6 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表