个人折腾 篇三:既是路由器,也是媒体播放器,基于PVE的All in One
创作立场声明:新人创作,不喜勿喷
【写作说明】:张大妈站内有很多用unraid打造AiO的文章,但是却很少有关基于PVE的AiO。PVE是一个非常优秀,且稳定的底层虚拟系统,优点我会在文中说明,只要有闲置的电脑即可部署。本文需要对Linux有基础的认识,会有一些命令,不过只需跟着我复制粘贴就行,部署完后就不再需要命令。
许多人对AiO一定有这么一个认识,那就是稳定性存疑 。站内很多AiO文章都把NAS囊括进去,其实这就是造成问题的关键,NAS的最低运行环境需求就要稳定,网络也是如此,折腾AiO的人肯定会经历一段因为经常断网而被家人暴揍的时光 。所以我的AiO就是将NAS和网络分离,我的AiO很简单,就是软路由和HTPC。那为什么选择HTPC而不使用电视盒子,看了下面文章后
体验了一下,使用后体验感很糟糕,我的基本视频需求也是爱腾优芒,虽然用来HD版代替TV版app,但使用后中途时不时产生卡顿,毫无观感体验,且想追某网站的新番也很无力。看来windows还是最强媒体播放器 ,偶尔看看奈飞也不错 ,还能当远程桌面服务器使用。
PVE是裸金属架构,具有极高的效率以及稳定性,对硬件兼容性好且系统占用极低。相比unraid,具有快照,usb热插拔功能,核显易直通,备份易恢复等优点。
前期准备
所需硬件
具有intel六代以上且有核显的台式电脑。敲重点,一定要是英特尔且支持vt-x和vt-d的CPU!!! 。PS:不是我不想用苏妈的APU,实在是Linux兼容性最好的还是英特尔。
作为垃圾佬的我手头用的CPU是G4560,还有必不可少的垃圾佬标志机箱
PCIE网卡一张,直接插上电脑即可。
不差钱的童鞋可以直接买成品软路由
U盘一枚,用来刷入PVE系统
所需软件
所有软件我会放在下面网盘中
链接:https://pan.baidu.com/s/1XGLHKXNb243L1eC8EEYEEA 提取码:9ist
balenaEtcher
PVE ISO镜像
windows10 ISO镜像
windows虚拟机驱动ISO镜像
爱快 ISO镜像
openwrt img镜像
FinallShell
开始部署
基础设置
首先使用balenaEtcher将PVE ISO镜像写入U盘,然后进入bios确认开启虚拟化和vt-d,之后使用U盘启动,会出现如下画面
默认回车
点I agree
点Next
Country写China,Time Zone填Asia/Shanghai,点Next
密码自己想一个
一般PVE管理口会默认主板板载网卡,想换其他网卡可以更改第一项,建议默认即可,Hostname随便起个网站名就行,IP address为PVE的IP地址,我的定为192.168.1.254,Gateway为你的网关,填你的路由器IP地址,我的为192.168.1.2,DNS填114.114.114.114即可。
检查没有错误,点Install
慢慢等待安装完成,安装完成后会重启,拔掉U盘,PVE就安装完成了 ,重启后会出现如下画面
主板网口插上网线连接到你的路由器或者交换机lan口,在电脑浏览器输入图中网址,我的是https://192.168.1.254:8006,浏览器会出现以下画面
会提示不安全,没关系,点击高级
点击最底下链接,进去后,输入账号root,密码(开头设的),就出现下图
点击local和local-lvm,你会发现硬盘容量加起来没有真实容量那么多
这时候就需要扩容了,点击www→Shell,会出现TTYD终端,自带ssh,也是PVE方便之处
输入
lvremove pve/data
lvextend -l +100%FREE -r pve/root
然后点击数据中心→存储
删除local-lvm,再双击local
除了片段,都选上,这时候点击local发现容量已经变大了 ,我的是64g固态
再返回Shell,输入以下命令安装PVE工具
echo "nameserver 8.8.8.8" >> /etc/resolv.conf && rm /etc/apt/sources.list.d/pve-enterprise.list && export LC_ALL=en_US.UTF-8 && apt update && apt -y install git && git clone https://github.com/ivanhao/pvetools.git && cd pvetools && ./pvetools.sh
等待一段时间会出现
按回车
首先替换国内源,按回车
回车
回车后,返回主菜单,通过按键盘↑↓,选择去除订阅提示
然后选择配置PVE的web界面显示传感器温度,一路回车
重启后主界面会显示cpu稳定详细情况,但先不重启,输入命令
nano /etc/default/grub
通过键盘上下左右,定位到如下位置
在引号下填入
quiet intel_iommu=on iommu=pt video=efifb:off,vesafb:off
编辑完文件后按“Ctrl + X” →“Y” >→“回车”,然后输入
update-grub
继续输入
nano /etc/module
添加
vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd
编辑完文件后按“Ctrl + X” →“Y” >→“回车”,再输入
nano /etc/modprobe.d/blacklist.conf
打开什么也没有,添加
blacklist snd_hda_intel
blacklist snd_hda_codec_hdmi
blacklist i915
编辑完文件后按“Ctrl + X” →“Y” >→“回车”,输入
lspci -n | grep -E "0300|0403"
会出现如下信息
00:02.0 0300: 8086:5a84 (rev 0b)
00:0e.0 0403: 8086:5a98 (rev 0b)
其中“8086:5a84”和“8086:5a98”分别就是核显和声卡的供应商ID和设备ID,改成你的设备ID即可,以我的为例,输入
echo "options vfio-pci ids=8086:5a84,8086:5a98" > /etc/modprobe.d/vfio.conf
再输入
update-initramfs -u
reboot
等待设备重启,输入PVE网址后主界面会出现CPU温度了
点击local→ISO images,上传win10,爱快,win10驱动镜像
HTPC windows配置
点击右上角,创建虚拟机
名称填win10
选择win10镜像,操作系统和版本选择如上图
磁盘大小根据需求填入即可,我这里填了32G,主要是固态没那么大
CPU我给了4核,根据你的CPU按需分配即可,类别选择host相当于unraid的cpu直通
内存按需分配即可
模型选择半虚拟化(PVE特色之一:拥有接近直通的性能 ),点下一步
再按上图添加win10驱动镜像
机器选择q35,然后点击右上角启动
下一步
下一步
选择自定义
发现什么也没有,不慌,点加载驱动程序
点开
选择amd64
这时候硬盘神奇般地出现了 ,点下一步,等待安装成功后重启,然后找到计算机管理
点击其他设备→PCI设备,右键更新驱动,选择浏览我的电脑查找程序
点击确定,然后关机
删除上述驱动器,注意,重点来了!!!准备直通核显 ,先确认核显ID
我这里是00:02.0,然后在Shell里输入
nano /etc/pve/qemu-server/100.conf
加上以下两行
args: -device vfio-pci,host=00:02.0,addr=0x18,x-igd-opregion=on
vga: std
编辑完文件后按“Ctrl + X” →“Y” >→“回车”,添加PCI设备,选择声卡
接着就是PVE特色功能,USB热插拔,只要对PVE主机插入键盘鼠标,那么管理页面的USB设备就会出现以下画面,并且重启依然存在,不像exsi那样重启就失效
然后启动虚拟机
再次进入计算机管理,在显示适配器里面会出现两个基本适配器,点击第一个更新驱动,出现以下画面就说明核显直通成功了
这时,PVE主机显示器也出现了画面为了减少核显性能的损失,将第二个虚拟显示适配器选择禁用
为了让物理显示器当主显示器,对插入PVE主机的键盘按住win+R,选择复制,至此,HTPC部署完成 。
软路由配置
软路由固件我选择ikuai,究其原因,当然是因为它的流控,多拨以及iptv,监控设备也十分方便,我的上一篇IPTV内网融合就是用的这个
右上角创建虚拟机,取名为Ikuai
选择上传的ikuai ISO镜像,系统为linux,下一步
硬盘给2g足以,下一步
CPU我给的两核,根据你的CPU按需分配即可,类别选择host,内存至少给4g
网络模型选择半虚拟化,这个网口作为lan口,接着下一步,完成创建
添加pcie网卡的两个网口分别作为wan口和iptv口,关于iptv口的用法,见我上一篇
https://post.smzdm.com/p/a07noomw/
接着启动虚拟机,一路回车,就会出现以下画面
具体的爱快设置,张大妈有很多文章已经写的很详尽了,需要的话可以搜一搜,我不再赘述。PS:主要是我太懒,而且也不想写和别人一样的内容
如果有特殊需求,openwrt则是AiO必备品之一
这里选择不使用任何介质
磁盘大小不用管,反正要删除,这里下一步就行
我给的1核,根据你的CPU按需分配即可,类别选择host
内存给了512MB
网络选择半虚拟化,有着接近直通的性能 ,接着下一步完成创建
分离刚刚添加的32G硬盘,再点删除
使用FinalShell
选择SSH连接
主机填你PVE的IP地址,输入账号密码后,将openwrt的img文件往根目录里拖就行了
直接在FinalShell里,输入以下命令
qm importdisk 102 /openwrt.img local
双击刚刚命令添加的磁盘
点击确定
然后点击选项→引导顺序
选择scsi0并拖到第一个,打勾后点击OK,之后启动虚拟机
具体的openwrt设置,张大妈一搜一大把,需要的话可以搜一搜,我不再赘述。
所有虚拟机都有备份选项,最后每个都备份一遍
万一把虚拟机搞崩了,可以把虚拟机删了,在备份里一键恢复,非常的方便
好了,到这里,恭喜你,AiO部署完成!!!
使用感受
经过核显直通的windows10,有了3D加速的加持,和物理机下的windows10体验几乎一模一样,如果不介意功耗还能加入独显,成为云游戏服务器的存在 ,我的AiO日常待机在20w上下,和华硕网件高端硬路由待机差不了多少,还拥有了更多的功能,岂不美哉?
总结
PVE作为裸金属架构,虚拟机的性能能够达到物理机90%以上,效率和稳定性不是win+hyper-v能比的,张大妈众多文章主推的unraid我使用了一段时间后,发现系统有点臃肿,虽然图形化比PVE程度高,但体验还是不如PVE,不管是核显直通,还是usb热插拔,以及虚拟机备份恢复等等。
目前我的AiO分离了网络和存储,体验感飞升 ,一次部署,并将备份数据存储在NAS,后续无需任何命令,重装PVE或者迁移PVE只需将备份恢复即可 。
隔壁水电工
校验提示文案
劝君莫爱已婚男
校验提示文案
Chao7350
校验提示文案
quizas2015
校验提示文案
冯冯1992
校验提示文案
homelab玩家
校验提示文案
Nemo44
校验提示文案
大地鼠
校验提示文案
loveyou13_14
校验提示文案
BitBoxKing
校验提示文案
搓澡于师傅
校验提示文案
巨硬首席执行官
校验提示文案
熊本部长
校验提示文案
Yes观察员
校验提示文案
Roumax
校验提示文案
值友8399347183
校验提示文案
hbxntsxw
校验提示文案
禁止滑稽
校验提示文案
liuyu1207
校验提示文案
值友6223607868
校验提示文案
吴顶天
openwrt作为旁路由(需要出国留学的设备 才在爱快里设置网关指向openwrt),直通了一个网卡eth3,我想知道这个旁路由到底有没有必要直通网卡呢?直通网卡以后让旁路由网速独占更好?!
校验提示文案
freewind2006
校验提示文案
静音
校验提示文案
molishubiao
校验提示文案
heroares
校验提示文案
孙大圣的老丈人
校验提示文案
荒野驰骋
校验提示文案
致敬前辈
校验提示文案
刘庸午净又卫生
校验提示文案
dearyue
校验提示文案
MR蜗牛
校验提示文案
YS-逆风
校验提示文案
talentp
校验提示文案
不-忘-初-心
校验提示文案
自曝虫
校验提示文案
dzhgd
校验提示文案
69土豆技师
校验提示文案
值友7791104213
校验提示文案
风中飞沙
校验提示文案
笃七
校验提示文案