PVE7教程【篇一】硬件虚拟化 显卡直通与GVT-g

2022-05-29 18:36:27 60点赞 418收藏 58评论

前言:PVE的教程网上有很多,站内也有很多大佬的文章。对于小白来说,命令行敲错、复制错了,一出现error就不知道该怎么办了,我以前是再找一篇,从头再来一遍PVE7教程【篇一】硬件虚拟化 显卡直通与GVT-g。本系列将从原理方面尽量详细的说一下各个安装的细节,避免出错。

我的硬件设备:

主板:华擎z390 极限玩家4

cpu:i5-9600k

内存:阿斯加特T2 16G✖2

SSD:英睿达镁光MX500 1T

机箱:安钛克P101S

散热:安耐美 晶凌240水冷

环境:Proxmox VE 7.2-4,内核5.15.35-3

行吧,咱们就开始操练起来吧。

一、显卡直通和中介设备原理介绍

显卡直通很好理解,即是显卡直接直通给虚拟机,包括PVE和其他虚拟机都不能用。适合打算将显卡直通给一个虚拟机外联显示器的情况,或者主机有多个显卡分别直通给不同设备的情况。这里需要说下,直通也需要IOMMU拆分,不然整个PCIe全都给了某个虚拟机,后果不限于PVE失联,M.2固态找不到了,硬盘也找不到了等等。。。

中介设备【 Mediated Devices 】:vGPU, GVT-g。Intel核显的技术叫GVT-g, NVIDIA技术叫vGPU。这个是很多小伙伴的刚需,想把核显分享给黑群晖或者docker里面的emby、jellyfin做硬解,win10或者别的虚拟机也想要个核显,反正都得有。这种情况就用到intel的GVT-g,效果如下:

PVE7教程【篇一】硬件虚拟化 显卡直通与GVT-g

二、修改引导加载程序内核命令行配置文件GRUB

命令:nano /etc/default/grub

PVE7教程【篇一】硬件虚拟化 显卡直通与GVT-g

【第一步】添加命令

GRUB_CMDLINE_LINUX_DEFAULT="quiet"

修改为:

GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt i915.enable_gvt=1"

光标放在quiet的后面空一格,然后复制黏贴。

修改完成后按Ctrl+x,问你是否需要保存?-->输入Y,问你是否写入文件-->按回车。

弄错了没关系,问你是否需要保存?-->输入N,就返回了。

PVE7教程【篇一】硬件虚拟化 显卡直通与GVT-g

原理说明(按需要添加命令):

1、官方文档:IOMMU (I/O Memory Management Unit)中断重新映射。如果不中断重新映射,将无法使用 PCI 直通。设备分配将失败,并显示“无法分配设备”[设备名称]“:不允许操作”或“找不到中断重新映射硬件,将设备传递到非特权域不安全”错误。【 'Failed to assign device "[device name]": Operation not permitted' or 'Interrupt Remapping hardware not found, passing devices to unprivileged domains is insecure.' error.】
所有使用英特尔处理器和芯片组的系统,如果支持英特尔虚拟化技术定向 I/O (VT-d),但不支持中断重新映射,将看到此类错误。较新的处理器和芯片组(AMD 和英特尔)提供中断重新映射支持;

2、PCIe直通需要主要主要开启虚拟化, Intel叫VT-d,AMD的叫AMD-V(i) ,都需要再主板BIOS里面开启;

3、Intel添加的为intel_iommu=on,AMD添加的为amd_iommu=on;

4、 iommu=pt,官方文档说明:这仅在必要时才启用 IOMMU 转换,适配器不需要使用 DMA 转换到内存,因此可以提高虚拟机管理程序 PCIe 设备(未传递到 VM)的性能。意思就是开了能提高虚拟机调取PCIe的性能,那就开吧。

5、i915.enable_gvt=1,官方文档说明:Intel的 GVT-g 驱动程序集成在内核中,启用时加载模块。意思就是,想开启GVT-g的就添加这条,显卡直通的就不要添加了。

【第二步】保存更改并更新 grub

update-grub

TIPS:

GVT-g可支持数量和最多分辨率:

i915-GVTg_V5_1 # Video memory: <512MB, 2048MB>, resolution: up to 1920x1200
可用数量
i915-GVTg_V5_2 # Video memory: <256MB, 1024MB>, resolution: up to 1920x1200
可用数量
i915-GVTg_V5_4 # Video memory: <128MB, 512MB>, resolution: up to 1920x1200
可用数量2
i915-GVTg_V5_8 # Video memory: <64MB, 384MB>, resolution: up to 1024x768
可用数量1

所以想要核显分享给多个虚拟机用的,需要在bios里面设置内存分给核显显存的大小。

二、修改内核模块

命令:nano /etc/modules

【第一步】添加内核模块

vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd
kvmgt

PVE7教程【篇一】硬件虚拟化 显卡直通与GVT-g

原理说明:

1、PCIe直通启用vfio vfio_iommu_type1 vfio_pci vfio_virqfd
2、vGPU和GVT-g需再添加kvmgt

【第二步】更改任何与模块相关的内容后,您需要刷新 initramfs

update-initramfs -u -k all

同时完成后,应重启以下。可用shell里面reboot,或者web界面重启。

总共也就四步而已,非常简单。

三、效果检测

1、命令:dmesg | grep -e DMAR -e IOMMU -e AMD-Vi

PVE7教程【篇一】硬件虚拟化 显卡直通与GVT-g

2、命令:find /sys/kernel/iommu_groups/ -type l

PVE7教程【篇一】硬件虚拟化 显卡直通与GVT-g

3、命令:lspci

PVE7教程【篇一】硬件虚拟化 显卡直通与GVT-g

注:lspci 显示所有PCIe设备的信息,比如第二个VGA就是Intel的核显,0000:00:02.0就是设备ID,下一个命令就是参看此设备支持的类型。

4、命令:ls /sys/bus/pci/devices/0000:00:02.0/mdev_supported_types

PVE7教程【篇一】硬件虚拟化 显卡直通与GVT-g

标题二里最后的TIPS里面,i915-GVTg_V5_4,i915-GVTg_V5_8。

最简单的还是直接建一个虚拟机,完成后不要启动,再【硬件】-->【添加】-->【PCI设备】就能看到了。

PVE7教程【篇一】硬件虚拟化 显卡直通与GVT-g

四、问题与总结

pve按照完成后,可先检测一下硬件设备和系统是否支持。要确定您的系统是否支持中断重新映射,请执行以下操作:

dmesg | grep 'remapping'

如支持应显示:

· "AMD-Vi: Interrupt remapping enabled"

· "DMAR-IR: Enabled IRQ remapping in x2apic mode"('x2apic' can be different on old CPUs, but should still work)

下面重点来了,不支持咋办?

如不显示,则硬件设备不支持,可以使用以下命令允许不安全的中断:

echo "options vfio_iommu_type1 allow_unsafe_interrupts=1" > /etc/modprobe.d/iommu_unsafe_interrupts.conf

意思就是通过命令行或者软支持(我的理解)。

然后再命令行更新 grub,刷新 initramfs。

update-grub

update-initramfs -u -k all

要是再不行,只能再网上搜搜有没有案例了。

最后的最后:

1、给软路由的小伙伴,这样设置下来,你的多网口网卡可以支持分别分给ikuai、openwrt、routeros等等软路由了。

PVE7教程【篇一】硬件虚拟化 显卡直通与GVT-g

2、如果你的网卡支持SR-IOV的话,你会发现也变成中介模式了一个网口也能支持给多个设备了。

无图.jpg

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

展开 收起

UGREEN 绿联 DX4600 Pro 4盘位NAS(奔腾N6005、8GB)

UGREEN 绿联 DX4600 Pro 4盘位NAS(奔腾N6005、8GB)

1849元起

ZSpace 极空间 私有云 Z4Pro 8G版 4盘位NAS存储(N97、8GB)

ZSpace 极空间 私有云 Z4Pro 8G版 4盘位NAS存储(N97、8GB)

2485.01元起

UGREEN 绿联 DX4600 四盘位NAS存储 (赛扬N5105、8GB)

UGREEN 绿联 DX4600 四盘位NAS存储 (赛扬N5105、8GB)

1749元起

ZSpace 极空间 私有云 Z4Pro 性能版 NAS存储(N305、16GB)

ZSpace 极空间 私有云 Z4Pro 性能版 NAS存储(N305、16GB)

3499元起

QNAP 威联通 TS-464C2 四盘位 NAS网络存储(赛扬N5095、8GB)黑色

QNAP 威联通 TS-464C2 四盘位 NAS网络存储(赛扬N5095、8GB)黑色

2599元起

UGREEN 绿联 DX4600+ 4盘位NAS(赛扬N5105、8GB)

UGREEN 绿联 DX4600+ 4盘位NAS(赛扬N5105、8GB)

1999元起

Synology 群晖 DS224+ 双盘位NAS(赛扬J4125、2GB)

Synology 群晖 DS224+ 双盘位NAS(赛扬J4125、2GB)

2849元起

ZSpace 极空间 私有云 Z423 旗舰版 8盘位NAS存储(锐龙R7-5825U、64GB)

ZSpace 极空间 私有云 Z423 旗舰版 8盘位NAS存储(锐龙R7-5825U、64GB)

5899元起

ZSpace 极空间 私有云 Z4Pro 16G版 4盘位NAS存储(N97、16GB)

ZSpace 极空间 私有云 Z4Pro 16G版 4盘位NAS存储(N97、16GB)

2799元起

QNAP 威联通 TS-466C 四盘位NAS(奔腾N6005、8GB)

QNAP 威联通 TS-466C 四盘位NAS(奔腾N6005、8GB)

3199元起

TERRAMASTER 铁威马 F4-424 Pro 四盘位NAS(Intel Core i3、32GB)黑色

TERRAMASTER 铁威马 F4-424 Pro 四盘位NAS(Intel Core i3、32GB)黑色

2499元起

Synology 群晖 DS220+ 2盘位NAS (赛扬J4025、2GB)

Synology 群晖 DS220+ 2盘位NAS (赛扬J4025、2GB)

2179元起

UGREEN 绿联 DH2600 双盘位NAS (N5105、4GB)

UGREEN 绿联 DH2600 双盘位NAS (N5105、4GB)

1299元起

ZSpace 极空间 私有云Z2Pro 四核2盘位NAS家庭个人云网络存储服务器手机平板扩容适用iPhone15 水

ZSpace 极空间 私有云Z2Pro 四核2盘位NAS家庭个人云网络存储服务器手机平板扩容适用iPhone15 水

1290.51元起

ZSpace 极空间 私有云 T2 2盘位NAS存储(RK 3568、4GB)

ZSpace 极空间 私有云 T2 2盘位NAS存储(RK 3568、4GB)

1699元起

ASUS 华硕 AS6702T 4盘位NAS存储 黑色(Core2 Quad Q8300、4GB)

ASUS 华硕 AS6702T 4盘位NAS存储 黑色(Core2 Quad Q8300、4GB)

4299元起
58评论

  • 精彩
  • 最新
提示信息

取消
确认
评论举报

相关好价推荐
查看更多好价

相关文章推荐

更多精彩文章
更多精彩文章
挂件

一个金币的故事

Ta还没有介绍自己

关注 打赏
最新文章 热门文章
418
扫一下,分享更方便,购买更轻松