前言:
unRAID的原有阵列方式,在使用中添加校验盘之后,会出现很高的CPU消耗,我下决心更换,也是因为家里的宽带升级到了1Gbps下行,导致un的硬盘阵列扛不住100M/S的下载速度,更换ZFS之后,CPU消耗大幅下降,传输能力大幅度提升,还可以使用快照,压缩,去重等很实用的功能。
教程:
在使用zfs之前,我们需要注意!zfs使用的机器,最好是有ECC内存,ZFS里的ARC缓存,是很吃内存的,大约是1TB存储1G缓存,当然我们家庭用户可能没有那么多的内存,来充当缓存,但是这里我还是建议大家最好给ARC分配8G的缓存空间,当然官方也说过,最低可以给1G。
还有一种L2ARC,这个我推荐arc容量较低的小伙伴,搭配一个好一点的SSD,来充当L2ARC使用。
在unRAID上使用zfs,有两种办法,第一种是使用zfs的插件,第二种是把zfs直接封包在unRAID里。第一种适合,国际网络较好的,因为zfs的插件,会在unRAID开机的时候联网加载内容,网络不好的小伙伴,可能会导致系统重启,卡在网络请求的位置,第二种直接封包在unRAID里的则不会出现在这种情况,但是un升级的时候也需要重新封包,两种都各有优缺,大家自行选择,带有ZFS的unRAID系统封包我这里会提供一个正版的!盗版的小伙伴,我暂时还没有去编译!
ZFS的存储池类型有:
Stripe:与RAID0 类似,使用的是条带,最少需要一块盘 |
Mirror:与RAID1 类似,磁盘镜像,最少需要两块盘, |
RAIDZ1:与RAID5类似,有一重奇偶校验,最少需要三块硬盘,实际容量N-1 |
RAIDZ2:与RAID6类似,有二重奇偶校验,最少需要四块硬盘,实际容量N-2 |
RAIDZ3:与RAID5类似,有三重奇偶校验,最少需要五块硬盘,实际容量N-3 |
L2ARC:二级 高速读取缓存 |
ZIL:LOG的写入缓存,这里要注意,很多地方都说ZIL是写入缓存,其实并不是。 |
性能对比
Stripe>Mirror
Stripe > RaidZ1 > RaidZ2 > RaidZ3
数据可靠性:
Mirror > Stripe
RAIDZ3 > RAIDZ2 > RAIDZ1 > Stripe
注意:在配置下面的内容的时候,你会损失所有硬盘的内容,重要数据,提前备份!!!
在使用zfs的时候,我们需要空出一个存储设备给配置在unraid的Array,否则unraid无法启动,放在Array的盘,我推荐使用SSD,用于我们存放docker.img以及libvirt.img。
需要安装的插件!
unRAID ZFS文件系统的插件 如果是使用封包ZFS的方式请勿安装 会导致系统无法正常运行 |
|
在DASHBOARD的页面增加一个 zfs运行的健康度和SCRUB的状态 |
|
在Main页面增加ZFS相关状态区域 可以配置数据集,以及导入导出存存储池 |
此处内容需要权限查看
会员免费查看结尾:
到此unraid上配置zfs的文章就结束了,后期还有其他的使用,比如快照,cache ,zil等,后期我会慢慢的都出给大家的!
评论(9)
文章太长,直接劝退,再见zfs[aru_2]
这就胆怯了?是男人就不要怕 硬刚
但这样不久不能随意增减硬盘了吗?真要zfs为啥不直接换系统?
是的,个有取舍把!
请问,使用这个插件的话,可以直接从trueNAS scale无损切换到unraid嘛
可以 使用导入命令就可以了
关于docker,img以及虚拟机的libvirt,img两个虚拟磁盘的存放位置,不可以是zfs路径。
请问现在最新版6.10还有这个bug吗?
教程 旧了,6.12 能更新不?
本教程以命令配置为主,只要zfs的版本没变就是有效的