找回密码
 立即注册
img_loading
智能检测中

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888广告投放联系QQ68610888
glinet
查看: 5308|回复: 2

弱主机UNRAID打造AIO之路 (篇一 准备篇)

[复制链接]
发表于 2023-6-19 20:28 | 显示全部楼层 |阅读模式
本帖最后由 vsamlee 于 2023-6-19 23:48 编辑

篇一 准备篇  https://www.right.com.cn/forum/thread-8294569-1-1.html
篇二 LXC安装openwrt  https://www.right.com.cn/forum/thread-8293871-1-1.html
篇三 认识docker及美化  https://www.right.com.cn/forum/thread-8294582-1-1.html
篇四 反向代理及导航页制作 https://www.right.com.cn/forum/thread-8294588-1-1.html


动机
家有一台GEN8,CPU、内存都已经升满(E3-1236 v2,16G),加装了万兆网卡,服务我家近10年,劳苦功高。
期间,从12年开始的主机安装DSM到ESXI、PVE组建AIO,其中ESXI服务时间最久。但是性能在某些方面已经有些满足不了需求了。
因为DSM、ESXI、PVE系统原因,总是觉得不能完全发挥主机性能,发现unraid有lxc后,二话不说就转了过来。
这么说吧,如果把电脑所有的资源比喻成房子,LXC、docker是在房子里跑,虚拟机是在房间里面跑。自然LXC、docker也可以在房间里跑的(本系列不涉及)。

本文属于笔记修改,图片很少或者说没有,但是逻辑应该很清晰。

给看官先说一下:
1、没有显卡直通。我没有视频硬解需求,电视机也就4K,也没有发现高码率比低码率好看多少,也没看出来4K比1080P清晰多少,所以我下载的视频都是低于10G,我的上行带宽为50M,所以解码都是交给客户端负责,没有任何问题,除非客户端的网速不达标。我大概计算了一下,如果外网只是一个客户端使用,完全可以看26G(按片长1.5小时计算)的影片,所以从用nas开始,就没有用过转码功能,都是用客户端解码。所以我直通的只有usb和网卡。
2、没有开通网卡SR-IOV、我的网卡带SR-IOV,在ESXI测试过,没有成功,在unraid也没打开,后面查了帖子,是该主机插槽不支持。有需要的找其他帖子。
3、网卡和usb直通给虚拟机和docker需要在主机系统屏蔽。如果直通给lxc,无需屏蔽。

一、功能规划
(一)  日常功能
通过docker在主机上实现。

docker管理(portainer-ce等),文件管理及办公(filebrowser,微力同步),下载(AList、迅雷),文娱(emby、nastool、PhotoPrism等)

(二) Linux系统
通过lxc安装openwrt、ubuntu、debian

(三) Windows系统
通过kvm实现,我只安装了一个win2016,不管是替代桌面版或者要运行一些服务都可以兼顾。
按照如上安排,除了windows会受限(实际上给win2016分配了6个vCPU和12G内存),其他所有的系统和功能理论上可以占有除系统外所有的资源。
因为所有的应用都是通过docker实现的,用户名、密码、端口很多,建议新建一个excel文件,记录这些。

二   安装Unraid
很简单,网上一大堆,第一步迈不出去,就不要看下面的了。

三  安装APPS和汉化
(一) 修改hosts
在右上角 >_  这个图标按一下 进入terminal终端命令行方式(也可通过putty等进入)

curl https://gitlab.com/ineo6/hosts/-/raw/master/next-hosts >> /etc/hosts
该添加的hosts在重启后会丢失,短期稳定使用可以在User Scripts中设置(后面会安装该插件,长期使用建议用openwrt定时脚本实现

(二) 安装APPS和汉化
点击 APPS===>install
Search===> 简体中文===> Install
Settings===> Display Settings===> Language===>简体中文

四 系统设置
(一)  系统设置界面(根据系统慢慢设置,了解透了设置,不要着急)
1 时间设置
设定时区===> UTC+08:00
ntp4.tencent.com
s1b.time.edu.cn
ntp3.aliyun.com
hk.pool.ntp.org

2  磁盘设置
休眠建议在主界面根据每个磁盘设置。
默认磁盘系统根据喜好选。Xfs和btrfs各有长处,如果选了btrfs,在主界面的每个磁盘会有btrfs的选项。我查资料感觉xfs在速度方面有优势,btrfs在稳定性方面有优势。除了这两个其他的建议不要选。

3  Docker设置
3.1 Docker设置虚拟磁盘建议不要采用目录的形式,否则不小心更改了权限很麻烦,采用目录的好处就是不用老是去调整磁盘大小。
3.2 磁盘大小根据需求设置,后期可以增加,但是不能减少。设大设小感觉影响不大,现在SSD这么便宜,建议初期设置为40G以上。

4  标识
根据自己喜好修改

5 管理权限
打开SSH
可以预设SSL

6 网络设置
固定管理口IP,DNS填写8.8.8.8,8.8.4.4
绑定其成员 bond0-->只选择一个网口
经验:建议对非直通网口都采用绑定模式,这样默认就启动了网口混杂模式,会解决很多虚拟机非直通网口不通的问题。

7  全局共享设置

启用磁盘共享

8  虚拟机管理
打开高级设置===> PCIe ACS 覆盖===> 两者(例如网卡没有按口分组可以尝试打开可能会有意想不到的惊喜)

9 NFS设置

10 SMB设置

11 FTP server设置

12 系统日志服务器

13 virtual**管理器

14 显示设置

15 通知设置

16  计划设置(建议正式启用后设置,我的10T硬盘校验需要10多个小时)
奇偶校验计划
Mover设置
SSD TRIM设置

(二) 仪表板
这里查看系统运行情况。重启,休眠,关机,开启/停用阵列等命令都在这里

(三) 主界面
磁盘相关设置都在这里,建议安装好插件后再插入硬盘设置。这里面功能很多,可以设置的环节也很多,强烈建议能点开的都点开,多玩玩,不懂得找度娘或者哥哥(谷歌)。对每项功能一定要了解透,吃透。否则后面折腾数据很麻烦,很麻烦,很麻烦。

要点
1  根据磁盘速度类别,机械,SSD(sata接口),M.2的运行速度合理安排阵列,缓存,不要混着用,否则发挥不出速度快的优势,插件安装好了后,建议一开始放数据硬盘,最高速硬盘做缓存,等全部组件好了后再设置校验盘。
2 缓存盘设置为“首选”、“只在”后是没有受保护的(即校验功能不包含这些文件夹),选择的时候一定要切记(如果为了安全和速度,建议用两块同容量的SSD组建到一个缓存池为raid1)。
3  系统建立的几个文件夹设置为“只在”,速度有质的提升。

(四) 插件
查看已安装插件和手动安装插件都在这里

(五)  Docker
容器安装设置都在这里

(六) 其他
阅读下面的链接
https://k.sina.cn/article_182334 ... 99wu.html?from=tech

六   插件推荐
因为github会不定期约束访问ip,感觉每次安装后要等几分钟,所以以下插件安装不了,先固定,后面慢慢安装。
插件占资源非常小,基本可以忽略,所以放心的装吧。

(一) User Scripts  
神器,使用简单,功能强大,后面需要用的地方很多,一定要熟悉,后面用到的有很多
让你可以通过WEB UI自定义一些脚本,并设置自动运行条件(开机,阵列启动时等等),不用在命令行或者GO文件上面操作了。
一定要安装,后期用到的地方太多了,而且超级方便。
安装启动后,可以把系统的文件夹挂载出来(后文有方法,建议系统没有的功能通过脚本视线,最好不要修改go文件等方法,保持系统纯净)

教程网址
https://post.smzdm.com/p/a259290p/
在这里正好用修改hosts的定时任务操演一下

代码如下
# wget -q https://raw.githubusercontent.com/racaljk/hosts/master/hosts -O /tmp/hostsNew2.txt --no-check-certificate
wget -q https://gitlab.com/ineo6/hosts/-/raw/master/next-hosts -O /tmp/hostsNew1.txt --no-check-certificate
# cat /tmp/hostsNew1.txt /tmp/hostsNew2.txt /etc/hosts_origin > /tmp/hostsNewAll.txt
cat /tmp/hostsNew1.txt /etc/hosts_origin > /tmp/hostsNewAll.txt
cp /tmp/hostsNewAll.txt /etc/hosts
chmod 664 /etc/hosts
/etc/init.d/dnsmasq restart
设置为每小时运行一次,虽然上github还是慢,但是总比没有好。
安装路由后,用路由更新,停掉这个脚本

(二) Lxc容器(主角之一)

(三) CA Auto Turbo Write Mode
根据阵列里面已经启动的磁盘数量,来启动重建写入模式,加快写入速度,对Unraid这种因为校验盘而导致写入速度慢的机制很有帮助

(四) CA Auto Update Applications   
根据你的设置,自动升级插件和docker应用。

(五)  Dynamix Cache Dirs
把目录结构缓存到内存里面,让你在浏览文件目录的时候(不实际读写)不用启动已经停转的硬盘

(六) Dynamix File Manager   
在WEB UI里面整合一个基本的文件浏览器,对不爱好用MC命令行或者懒的人很有用

(七) Dynamix S3 Sleep     
让你的Unraid在你设置的时间和条件内智能休眠,还能被其他设备用WOL命令唤醒。

(八) GPU Statistics
让Unraid的WEB UI上显示更详尽的GPU信息,需要先安装Intel GPU TOP或者NV GPU TOP(硬件支持)插件(我不直通显卡,没动它)

(九) Fix Common Problems   
自动查找一些Unraid使用中遇到的常见问题,并给出解决方案,还会检查一些常见的漏洞和恶意软件

(十)  Unassigned Devices/Unassigned Devices Plus     
这两个插件可以让你挂载没有加入阵列的磁盘,Unassigned Devices支持各种常见格式,Unassigned Devices Plus在其基础上提供了更多格式支持。

(十一) unBALANCE
分散,集中和转移不同磁盘上的大量数据,更换磁盘或者整理数据时的必备插件

(十二) CA Cleanup Appdata
删除不需要的文件夹

(十三) Recycle Bin           
回收站插件。大概原理就是创建一个隐藏文件夹,当你删除文件时先放入回收站,到达设定时间后彻底删除文件。

官方解释为:此插件为每个共享添加一个“.Recycle.Bin”文件夹,以保存samba删除的文件,直到您手动清空垃圾箱或按计划删除过期的文件。第一次删除共享中的文件时,将在每个共享中创建一个“.Recycle.Bin”文件夹,您可以通过浏览//Tower/share/.Recycle.Bin访问该文件。您可以从//Tower/Share/.Recycle.Bin还原删除的文件。用户对“.Recycle.Bin”文件夹的访问权限与用户共享访问权限相同。如果删除插件,则所有删除的文件都将保存在share.Recycle.Bin文件夹中。如果你不想使用这个插件,你必须在删除它之前清空垃圾桶。

(十四) Theme Engine
主题美化插件(我没安装,因为设置好了就放到垃圾堆让其默默服务了)

(十五)  Dynamix System Autofan
允许根据系统温度自动控制风扇。高阈值和低阈值用于加速或降低风扇。

(十六) Dynamix system temp
(十七) NerdTools
(十八) Docker Update Patch
七 系统设置
(一)  安装驱动
我除了网卡和usb外,没有直通需求,所以略。

(二) 开通SR-IOV
我的网卡支持,主机pcie插槽不支持,其他人折腾,羡慕中,遗憾中

八 启动阵列
存储设备按速度可以分为m.2SSD,sata SSD,机械硬盘,方案如下:
1 m.2SSD放缓存池1,sata SSD放缓存池2
2 机械硬盘放阵列。
3 缓存池1缓存文件,代码,照片等小文件,缓存池2缓存视频,下载的软件等大文件。
要点:不同速度的盘不要混用,否则会影响整体速度。
4 根据规划设置目录缓存方式
5 暂时不要添加校验盘(我10T的硬盘校验一次需要十多个小时)
6 启动阵列

九 文件目录规划(文件可以先不忙拷贝,把框架搭起来)
重点,重点,重点。规划好了后面的工作事半功倍。这是从用nas开始一直沿用的好爱好。
因为unraid的共享权限设置很弱,且没有移动端管理软件,所以规划时必须解决掉这两个问题。
要点:文件夹名称一定不能有空格,一定不能有空格,一定不能有空格。否则后续映射和挂载会出错。

(一) 文件归类
在根目录设置总文件夹,我把所有的文件分别放入两个文件夹(所以我的根目录总文件夹就两个),一个是办公类的,一类是文娱类的,在这两个文件夹下根据类别建立分目录,文件分别拷贝到两个文件夹下对应的目录中(根目录下的文件夹下文统称二级文件夹)。
如办公类下分日常、业务、财务、设计……,文娱类下分下载、影视、软件、音乐、照片……

建议不要分类太多,多了后使用会很麻烦。

(二) 根目录
在根目录下建立与二级文件夹相同的文件夹
小技巧。有轻微强迫症,我是在文件夹名称前加了序号的,如1A日常、1B业务……8A照片、8B音乐、8C影视……,这样就可以对文件夹排排队了。

(三) 更改权限
将除系统文件夹之外的所有文件夹的所有者更改为nobody,权限更全部更改为读写。

(四) 挂载
把二级文件夹挂载到根目录,命令如下:
mound –bind 源文件目录 挂载文件目录(可以用excel的&命令进行批量操作)
例:mound –bind /mnt/user/办公/1A日常 /mnt/use/1A日常
    mound –bind /mnt/user/办公/1B业务 /mnt/use/1B业务
……
将该脚本放到User Scripts,设为和阵列一起启动。


(五) 软链接
软链接(相当于在对应文件夹建立了一个文件夹的快捷方式),把某些系统文件夹通过软链接引出到根目录的某一个文件夹内,方便以后的操作。
ln -s 源文件路径 软链接文件路径
ln -s /boot/config/plugins/dockerMan/templates-user /mnt/user/Data(模板文件夹)
ln -s /boot/config/plugins/dockerMan/templates /mnt/user/Data(docker图标文件夹)

(六) 清理文件
删除主机中其他nas缓存的东西(我清理出来至少有十几G),终端中输入:
find /mnt/user -name "@eaDir" -type d -print0 | xargs -0 rm -rf
find /mnt/user -name ".verysync" -type d -print0 | xargs -0 rm -rf
find /mnt/user -name ".SynologyWorkingDirectory" -type d -print0 | xargs -0 rm -rf
……

下篇说LXC




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
发表于 2023-6-20 08:58 | 显示全部楼层
感谢楼主的系列教程,unraid 用了半年多还没好好折腾一下,假期开搞
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

发表于 2023-9-29 12:09 | 显示全部楼层
好文章
只谈技术、莫论政事!(点击见详情) | 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。
回复 支持 反对

使用道具 举报

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

本版积分规则

关闭

欢迎大家光临恩山无线论坛

只谈技术、莫论政事!切勿转播谣言!为了你也为了他人。
只谈技术、莫论政事!(点击见详情) 切记不要随意传播谣言,把自己的日子过安稳了就行,为了自己好也为了大家好。 恩山无线论坛欢迎您的来访,请互相尊重、友善交流,建议保持一颗平常心看待网友的评论,切勿过度反应。

查看 »

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2025-5-19 14:34

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com

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