SR-IOV的全称是Single Root I/O Virtualization,他是一种可以将一张物理网卡分出多个PCI-E虚拟网卡的技术,这些网卡可以在虚拟机中使用。相较于传统网络虚拟化,SR-IOV的性能更高。
Intel网卡部署SR-IOV
创建VF网卡
以Intel 82599网卡为例
- 修改/etc/default/grub
GRUB_CMDLINE_LINUX 一行中添加 intel_iommu=on
重新生成加载项
grub2-mkconfig -o /boot/grub2/grub.cfg
2. 例如设置加载ens4的VF网卡,Intel 82599最大支持63个VF,以下是虚拟出63个VF例子,建议加入开机启动
echo 63 > /sys/class/net/ens4/device/sriov_numvfs
3. 查看VF生成情况,
lspci|grep -i net
可以看到,VF网卡已成功生成,并拥有独立的PCI。 生成的VF数量应该等于第二步时的配置数量。
4. (可选)给VF配置MAC地址
ip link set ens4 vf 0 mac aa:bb:cc:11:22:30 ===》 给ens4的网卡配置
可选的原因是,在创建KVM虚机时会自动给网卡生成MAC,所以这里不需要配置。
Mellanox网卡部署SR-IOV
创建VF网卡
1.修改/etc/default/grub
GRUB_CMDLINE_LINUX 一行中添加 intel_iommu=on
重新生成加载项
grub2-mkconfig -o /boot/grub2/grub.cfg
2.系统上开启SRIOV
# mst start
# mst status -v
MST modules:
------------
MST PCI module is not loaded
MST PCI configuration module loaded
PCI devices:
------------
DEVICE_TYPE MST PCI RDMA NET NUMA
ConnectX6DX(rev:0) /dev/mst/mt4125_pciconf1.1 98:00.1 mlx5_3 net-ens6f1 1
ConnectX6DX(rev:0) /dev/mst/mt4125_pciconf1 98:00.0 mlx5_2 net-ens6f0 1
ConnectX6DX(rev:0) /dev/mst/mt4125_pciconf0.1 32:00.1 mlx5_1 net-ens3f1 0
ConnectX6DX(rev:0) /dev/mst/mt4125_pciconf0 32:00.0 mlx5_0 net-ens3f0 0
3. 查看网卡SR-IOV能力,配置支持VF数量。
# mlxconfig -d /dev/mst/mt4125_pciconf1 query | grep -e SRIOV_EN -e NUM_OF_VFS -e FPP_EN
NUM_OF_VFS 8
SRIOV_EN True(1)
其中/dev/mst/mt4125_pciconf1为网卡对应的MST路径,NUM_OF_VFS 为8代表最大的VF数量,SRIOV_EN为True代表为SR-IOV功能已经开启,如果想修改这里的配置:
mlxconfig -d /dev/mst/mt4125_pciconf1 set SRIOV_EN=1 NUM_OF_VFS=96
4
.重启设备,查看
VF支持已经变为96
# mlxconfig -d /dev/mst/mt4125_pciconf0 query | grep -e SRIOV_EN -e NUM_OF_VFS -e FPP_EN
NUM_OF_VFS 96
SRIOV_EN True(1)
5. 设置加载VF网卡,查看生成情况
# echo 64 > /sys/class/net/ens3f1/device/sriov_numvfs
# lspci | grep -i net
虚拟机添加VF网卡
1. 将VF的PCI绑定到虚拟机的XML中
lspci|grep -i net ===》查看PCID
virsh edit 虚机名 ====》编辑虚机XML
<source>
<address type='pci' domain='0x0000' bus='0x05' slot='0x11' function='0x0'/>
</source>
注意VF的pcid与需要添加VF网卡的虚拟机的xml配置文件的对应关系
2. 查看配置结果
1. virsh domiflist 虚机名 , 查看网卡生成成功,自动生成MAC
3. 进入虚机查询
lspci|grep -i net
可以看到VF已经和虚机绑定,VF直通成功。