700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 在Proxmox VE中设置硬件资源在虚拟机中直通

在Proxmox VE中设置硬件资源在虚拟机中直通

时间:2020-04-19 06:11:15

相关推荐

在Proxmox VE中设置硬件资源在虚拟机中直通

本实验使用的是基于intel cpu 和proxmox 6.x

为什么要做直通?

所谓直通"passthrough", 一般是指VM中的虚拟机可以直接的对host上的硬件资源进行访问.

通常情况下,虚拟机的网络和主机还有其他设备的通讯,是通过host上系统的桥接网卡进行的,理论上没有直接使用物理网卡更快.在pci-e设备上有多个网口的服务器来说,重复利用每一块网卡为虚拟机提供直通,就是一项无法避免的任务.

对IO密集型的应用,又想使用虚拟化带来的好处,那设置虚拟机对磁盘的直通或者透传,也是非常有必要的.

如何在Proxmox VE 6 中实现网卡直通

1.选中要进行网卡直通的虚拟机(注意是虚拟机,不是LXC主机),选择"硬件"添加 PCI设备

/***

但是你做到这一步的信息,可能会和我提供的截图有出入的,会提示到没有IOMMU 被激活.

所以,硬件直通的第一步是在主机操作系统和硬件层级激活相应的功能.如果你的主机已经支持KVM的虚拟机的话,激活都是没有问题,是可以被硬件支持的.

如要激活,可直接跳过这一节,看 下一节 “直通需要的软硬件支持

***/

2. 未完待续

直通需要的软硬件支持

硬件需要支持 IOMMU (I/O Memory Management Unit) interrupt remapping, this includes the CPU and the mainboard.一般来说,Intel systems支持VT-d 或者AMD系统 AMD-Vi即可.

基于你是通过Proxmox的ISO进行的安装,切你的服务器上Intel 系列cpu话,需要以下几步:

1.在kernel commandline 上激活IOMMU

1.1 修改/etc/default/grub 文件,将intel_iommu=on 加到 “GRUB_CMDLINE_LINUX_DEFAULT” 这个变量下,保存退出

1.2 命令行运行 update-grub

确保变更被全部更新完毕

可通过 cat /proc/cmdline 进行确认

2. 确保需要的kernel modules可以被加载

将如下的modules,一行一个加到 /etc/modules 文件下

vfio

vfio_iommu_type1

vfio_pci

vfio_virqfd

3.刷新initramfs,运行"# update-initramfs -u -k all"

这可以生成一个新的initrd.img文件,如果看到生成成功,这一步就完成了

4. 重启系统

5. 重启以后,运行"# dmesg | grep -e DMAR -e IOMMU" 查看系统启动时,有没有IOMMU相关信息

如果有,可基本确认这个过程顺利完成! 接下来就可以为虚拟机正常的添加硬件直通了

如果工作要做的仔细的话,需要再确认下直通的网卡或者其他设备,是否是独立的IOMMU组中,而不是和其他设备共享通一个IOMMU group

find /sys/kernel/iommu_groups/ -type l

如你添加到网卡为01:00.3, 而旁边的网卡为01:00.2 ,结果如下图,可说明他们分别对应16和17 group.

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。