前言#
由于之前用的 NAS 是 4 盘位的 raid 6 方案,四块 4TB 的红盘,总容量只有一半,在我存储了大量影音和备份数据之后不够用了,所以今年开始考虑做一个更大的 NAS
配置#
- 主板:从仓库里翻出来的微星 B450 Motar Matx
- CPU:连带着主板上的 AMD Ryzen5 3600,对于 NAS 来说完全够用
- 内存:不用的旧电脑拆下来的 16G*2
- 机箱:射手座 8 盘位 Matx 机箱,选购了风扇和电源套装
- 系统盘:西部数据 SN730 * 2, ZFS Mirror
- 存储盘:西部数据 HC320 10TB SMR 垂直盘
架构#
考虑的方案有 Openmediavault 和 TrueNAS, 很看重 TrueNAS 的 ZFS 系统盘的方案,但是 core 版本使用虚拟机, scale 使用单机的 kubernetes 并且对接了 zfs local pv 的方案,虽然能够使用和 debug,但是组件太复杂了。
因此决定使用 Openmediavault + OpenZFS 的方案,继续使用 ZFS 是因为,之前用的也是这套方案,有一个盘出过问题,清了错误不管用之后直接热插拔换盘,等了两天之后就好了,期间也不影响数据读写
8 盘位数据采用 RAID-Z2, 两块校验盘的方案,可用率达到 75%。
系统盘采用 ZFS Mirror,纯镜像。
系统安装#
主要参考 Root On ZFS的方案,可以在系统级别使用 ZFS 高可用。
有几个点需要注意
- disk 需要使用 By-ID 的方案,因为仅比起 /dev/sda 这样的方案有唯一且不会变化的地址,并且自带 -partX 的后缀可以对应到相应分区
- 官方的文档里面都是单盘的,我是采用 Mirror 的方案,所以需要相应的对
create pool
命令进行修改 (我想应该不会有人在系统盘上做 raid-5 或以上这种吃力不讨好的方案吧) - 由于 boot efi 不能也不需要做 ZFS Mirror,只需要安装一个,并且后期通过
dd
命令复制即可
然后可以通过 Openmediavault 的官方文档 Install on Debian安装 Openmediavault (后文简称 OMV)
OMV 的优点就是,系统自带的 NFS 还有 Samba/CIFS 方案对挂载已经很友好了,并且还能装一些插件支持 timemache。
至于 Docker, 安装的已经是 Debian 了,只要挂载相应的目录即可