Mellanox IB卡 虚拟化

IB卡型号: MT27500

1.BIOS里开启SRIOV,CPU开启VT以及安装网卡对应的驱动等过程略

2.修改启动菜单参数

执行命令vi /etc/default/grub,按“i”进入编辑模式,在linuxefi行后添加启动参数“intel_iommu=on iommu=pt pci=assign-busses pci=realloc”。

添加完参数之后的启动参数如下:

GRUB_CMDLINE_LINUX="crashkernel=auto spectre_v2=retpoline rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet intel_iommu=on iommu=pt pci=assign-busses pci=realloc"

修改完后重新生成启动菜单文件:grub2-mkconfig >/boot/efi/EFI/centos/grub.cfg

注意:启动方式为UEFI时, 生成grub.cfg的路径是 /boot/efi/EFI/centos/grub.cfg

在非UEFI启动里的启动菜单路径在 /boot/grub2/grub.cfg

检查上述修改是否生效:cat /boot/efi/EFI/centos/grub.cfg 查看是否有 intel_iommu 几个参数

4. 修改完以上参数后,重启一下服务器。

IB卡配置官方参照页面:

HowTo Configure SR-IOV for ConnectX-3 with KVM (InfiniBand) (mellanox.com)

5. 配置

5.1打开固件的SRIOV功能

# mst start 启动 mst

Starting MST (Mellanox Software Tools) driver set

Loading MST PCI module - Success

Loading MST PCI configuration module - Success

Create devices

# mst status 查看所有ib卡状态

MST modules:

------------

MST PCI module loaded

MST PCI configuration module loaded

MST devices:

------------

/dev/mst/mt4099_pciconf0 - PCI configuration cycles access.

domain:bus:dev.fn=0000:5e:00.0 addr.reg=88 data.reg=92 cr_bar.gw_offset=-1

Chip revision is: 01

/dev/mst/mt4099_pci_cr0 - PCI direct access.

domain:bus:dev.fn=0000:5e:00.0 bar=0xc5e00000 size=0x100000

Chip revision is: 01

查看IB卡MT27500这张卡的配置,MT27500对应的是mt4099,

# mlxconfig -d /dev/mst/mt4099_pciconf0 q

Device #1:

----------

Device type: ConnectX3

Device: /dev/mst/mt4099_pciconf0

Configurations: Next Boot

SRIOV_EN False(0)

NUM_OF_VFS 0

LINK_TYPE_P1 VPI(3)

LINK_TYPE_P2 VPI(3)

LOG_BAR_SIZE 3

BOOT_PKEY_P1 0

BOOT_PKEY_P2 0

BOOT_OPTION_ROM_EN_P1 True(1)

BOOT_VLAN_EN_P1 False(0)

BOOT_RETRY_CNT_P1 0

LEGACY_BOOT_PROTOCOL_P1 PXE(1)

BOOT_VLAN_P1 1

BOOT_OPTION_ROM_EN_P2 True(1)

BOOT_VLAN_EN_P2 False(0)

BOOT_RETRY_CNT_P2 0

LEGACY_BOOT_PROTOCOL_P2 PXE(1)

BOOT_VLAN_P2 1

IP_VER_P1 IPv4(0)

IP_VER_P2 IPv4(0)

CQ_TIMESTAMP True(1)

# mlxconfig -d /dev/mst/mt4099_pciconf0 set SRIOV_EN=1 NUM_OF_VFS=8 //注意 mt4099会根据不同型号IB卡有所不同

设置完后可以用上面的一条带 q 参数的指令查看。

8. 重启服务器

9. 打开MLNX_OFED驱动的SRIOV配置

#ibstat 查看ib设备状态,一般ConnectX-3 型号IB卡的驱动核心是 mlx4_0

创建或编辑 vi /etc/modprobe.d/mlx4_core.conf,写入以下内容:

options mlx4_core num_vfs=4 port_type_array=1 probe_vf=4(仅第1个port虚拟4张卡)

options mlx4_core num_vfs=4,4,0 port_type_array=1,1 probe_vf=4,4,0 log_num_mgm_entry_size=-1(2port,每个port虚拟出4张卡,注:笔者该方法并未成功)

# modinfo mlx4_core |grep -i vfs  该指令可查看mlx4_core的options配置方法

更多配置请参照  HowTo Configure SR-IOV VFs on Different ConnectX-3 Ports (mellanox.com)

 重新加载ib卡驱动(重启IB卡)

# /etc/init.d/openibd restart

10. 查看是否有虚拟IB卡创建成功

# lspci|grep -i "virtual function"

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值