一、需求分析
在安装PVE之前,一定要了解自己需求,我简单介绍两句,避免大家踩坑
1.是否需要显卡
- 需要win10虚拟机,那么最好有独立显卡,并且需要直通给win10
- DS-918支持你的显卡驱动,而且你希望你的视频系统(video station/jellyfin/PLEX等)支持硬件转码,那么需要直通给黑裙晖
- DS-918不支持你的显卡驱动,或者你准备安装或已安装的是DS-3617,那么不要设置显卡直通,在PVE安装的Docker中部署视频系统,一样可以使用硬件转码
- 不安装win10,不需要硬件转码,那就不用搭理有关显卡直通的操作(那么你可以选择至强CPU了耶)
2.是否需要网卡直通
- 就是如果你家硬件网络环境是千兆网,且需要使用NAS的话,那么需要直通网卡给NAS
- 如果你要使用软路由,且比较强迫症或追求完美的话,可以直通网卡给软路由(其实目前的带宽很难达到千兆网络的物理瓶颈)
- 如果你是万兆网卡,那么需要根据你的NAS硬盘阵列的性能决定是否需要直通,毕竟万兆口比较贵嘛,绝大多数情况虚拟网卡桥接都不会是瓶颈
3.是否需要硬盘直通
- 有NAS就需要硬盘直通,不然传输文件时消耗资源巨大
4.硬盘直通与SATA控制器直通
- 硬盘直通可以按硬盘来直通,SATA控制器是所有接在这个控制器上的硬盘一起直通,且目前PVE不能分组,只能一起直通给一个虚拟机,所以安装PVE的硬盘,不能在要直通给虚拟机的SATA控制器上插着,换句话说,要么你最少有2个SATA控制器(现在一般主板自带的6个SATA口,同属于一个SATA控制器,需要购买PCI插槽转接板或M2插槽转接板实现增加SATA控制器),要么你需要把PVE安装到U盘上
- 硬盘直通在群晖下显示不出硬盘型号,但据说可以查看S.M.A.R.T.信息(没有求证,因为我没有使用硬盘直通),SATA控制器直通在群晖下可以正常显示硬盘名称及型号,可以查看S.M.A.R.T.信息,与非虚拟机环境下硬盘部分完全相同
- 在性能上的差别微乎其微,不作为考虑参考条件
5.IP地址规划
至少确认好网段及PVE的IP地址,强烈不推荐PVE地址DHCP自动获取……
二、安装PVE
安装实在是无脑,我简单说下流程就好了,比windows安装个软件还简单,我这里就不截图了……
1.下载PVE镜像
https://pve.proxmox.com/wiki/Downloads
2.使用写盘工具将镜像写入U盘,如balenaEtcher
3.重启电脑,根据主板不同,按不同快捷键选择启动项,如我的主板是F8
4.选择UEFI:U盘型号那一项,进入PVE安装界面(如何UEFI启动或如何使用传统BOIS引导请自行搜索)
5.填入一些简单的配置项,如安装在哪块硬盘,语言,时区,root密码,PVE服务器名,IP地址等等,开始安装,结束重启,拔下U盘,等待进入PVE系统(一般来说不需要在设置启动项,但如果你的其他U盘里有其他系统,请设置主板启动顺序)
PS:如果需要安装在U盘中(即你只有一个SATA控制器还想把它直通给NAS),那么要确定U盘可以UEFI启动,方法自行百度……
三、硬件直通
注意:需要主板支持VT-d,如果不支持的话不能使用硬件直通。
浏览器打开网页https://IP:8006
即可访问PVE后台,IP为安装时设置的IP地址,我的是192.168.1.5,即https://192.168.1.5:8006
输入root和密码,语言可以选择中文
点开左边数据中心
,选中你的PVE名字,右上选择>_ Shell
图标,进入代码模式
也可使用SSH工具连接,地址为安装时设置的IP地址,我的为192.168.1.5,用户名为root,密码为刚才设置的密码
编辑文件:
nano /etc/default/grub
将如下内容:
GRUB_CMDLINE_LINUX_DEFAULT="quiet"
intel的cpu替换为:
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on pcie_acs_override=downstream"
amd的cpu替换为:
GRUB_CMDLINE_LINUX_DEFAULT="quiet amd_iommu=on pcie_acs_override=downstream"
pcie_acs_override=downstream
为开启分组直通,一般用于网卡,可以使PCI网卡每个口直通给不同的虚拟机(不是所有网卡都需要设置,默认就设置上吧)
如果需要直通显卡,则替换为:
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on pcie_acs_override=downstream video=efifb:off"
amd的cpu同理后面加上video=efifb:off
按CTRL+X
保存,选择Y,然后回车,保存退出
输入如下命令更新grub:
update-grub
修改文件:
nano /etc/modules
在文件最后添加如下信息:
vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd
同样CTRL+X
,然后输入Y,回车保存退出
输入如下命令更新initramfs:
update-initramfs -u -k all
输入如下命令验证是否开启iommu:
dmesg | grep 'remapping'
如果成功开启,intel的cpu会显示:
DMAR-IR: Enabled IRQ remapping in x2apic mode
amd的cpu会显示:
AMD-Vi: Interrupt remapping enabled
输入如下命令重启:
reboot
四、其他设置
1.关闭登录时的“没有有效订阅”提示(方法一,可选)
使用SSH工具连接PVE(如果使用PVE网页控制台打开Shell的话没办法使用nano的搜索功能)
打开文件:
nano /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js
按CTRL+W
输入data.status
,回车(nano的搜索快捷键和浏览器关闭页面的快捷键一样……)
将:
if (data.status !== 'Active') {
替换为:
if (false) {
CTRL+X
保存,Y,回车,保存退出
输入如下命令重启网页服务:
systemctl restart pveproxy
2.关闭登录时的“没有有效订阅”提示(方法二,可选)
编辑安装源:
nano /etc/apt/sources.list
最后插入如下代码:
deb http://download.proxmox.com/debian stretch pve-no-subscription
3.解决PVE更新错误(可选)
SSH或控制台打开Shell都可以
编辑企业版更新源:
nano /etc/apt/sources.list.d/pve-enterprise.list
注释掉原内容:
#deb https://enterprise.proxmox.com/debian stretch pve-enterprise
创建新源:
wget http://download.proxmox.com/debian/proxmox-ve-release-5.x.gpg -O /etc/apt/trusted.gpg.d/proxmox-ve-release-5.x.gpg
4.手动更新软件包
依次执行下面两条命令:
apt update
apt upgrade
5.安装常用软件包及docker支持软件包
apt install apt-transport-https ca-certificates curl gnupg2 software-properties-common lshw
6.查看显卡情况
使用刚刚安装的lshw
命令:
lshw -c video
如非直通,也就是说PVE可以使用的话,显示类似如下内容:
*-display
...
configuration: driver=i915 latency=0
...
其中driver=i915
表示未直通,已直通显示driver=vfio-pci
,核显独显同理
输入命令:
ls /dev/dri
显示结果包含:
card0 renderD128
为该系统可以调用显卡,如果没有,则说明该系统无显卡可调用
独立显卡会多出类似内容:
card1 renderD129
五、总结
1.PVE的安装硬盘不要太小,因为绝大多数的安装镜像及虚拟机文件都要放在这块硬盘上,根据自己需要安装的虚拟机个数及种类来决定大小,需求win10的话低于100G会很吃力,后续拓展起来也比较麻烦,对管理文件比较有强迫症的人来说,会非常非常麻烦,还是一步到位的好。当然也不需要太大,120的SSD基本也够用了。
2.PVE安装在U盘里的话同理,3.1的闪迪豆也非常便宜,不安装win10,32和64的基本都没问题(主要就是windows比较占硬盘)
3.安装PVE之前最好规划好IP段,后期修改起来还是需要一些专业知识的,当然大佬请无视
4.群晖支持显卡驱动的机器,最好还是选择918,并显卡直通给群晖管理,更方便。因为PVE启动后,会同时启动PVE中的虚拟机及Docker,而群晖的反应肯定不会docker快,所以docker中安装的视频系统挂在群晖中的共享文件夹不能随docker启动自动挂载好。而且毕竟挂载的文件夹肯定不会直接读取宿主机来的快
大佬,我运行后,失败,返回结果是这个不支持[ 0.108250] x2apic: IRQ remapping doesn't support X2APIC mode,是我主板不支持吗?搞了几天了搞不定。【12300T+铭瑄B760M终结者BIOS最新,虚拟技术开启】
vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd
这几行是表示什么意思啊?
amd也是同样么