本案例中使用的服务器测试环境如下:

服务器:H3C R390X G2

操作系统:RHEL7.3

SR-IOV网卡型号:Brocadcom 530FLB (BCM57810芯片)

1.    首先在BIOS中开启网卡的SR-IOV的支持

服务器开机自检按ESC或DEL进入BIOS Setup,点击Advanced -> 选中530FLR网卡。 默认Multi-Function Mode为SF,这里改成SR-IOV

2.    操作系统中开启IOMMU支持

执行dmesg | grep -i iommu看操作系统是否开启了IOMMU支持,如果没开启,则编辑如下

# vi /etc/default/grub

...

GRUB_CMDLINE_LINUX="nofb splash=quiet console=tty0 intel_iommu=on

...

重新生成grub配置文件

#grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg

#reboot

重启后查看iommu启动情况

#dmesg | grep -i iommu

则表示开启成功

3.    系统中查看网卡,我们使用的是BCM57810芯片的网卡(Broadcom)

查看网卡信息

4.    开启网卡的VF端口

注意:首先要确保端口是up状态

#ifup ens9f0

查看sriov的端口数量

# cat /sys/class/net/ens9f0/device/sriov_numvfs

0

如果返回结果是0,表示没有VF接口

5.    开启VF端口

# echo 8 > /sys/class/net/ens9f0/device/sriov_numvfs

备注:enable VF时,可能会报错如下:

[  641.704649] bnx2x 0000:03:00.0: not enough MMIO resources for SR-IOV

[  641.704656] [bnx2x_enable_sriov:2514(ens9f0)]pci_enable_sriov failed with -12

上面的报错通常是BIOS issue,可能是BIOS不支持 (The BIOS is not providing enough MMIO space for VFs)

参考文档:https://access.redhat.com/solutions/37376

解决办法: 在kernel中再加入一个参数pci=realloc

修改/etc/default/grub,在之前的iommu选项后,加入该参数

重新生成grub

#grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg

#reboot

6.    检查VF开启情况

经过刚刚的设置之后,再次执行下面的命令后,即可查看到VF port

# echo 8 > /sys/class/net/ens9f0/device/sriov_numvfs

# lspci | grep –i ethernet

# ip addr show

但是所有的mac地址都是00:00:00:00:00:00

根据Broadcom bnx2x driver的readme描述,这属于正常情况

https://downloads.hpe.com/pub/softlib2/software1/pubsw-linux/p1050551721/v140545/README

Known issues/Limitations/Caveats

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

-The bnx2x driver now assigns all zeroes as the MAC address for SR-IOV virtual functions. Users need to manually configure valid MAC addresses for virtual functions using iproute2 or ifconfig methods

7.    手动设置VF的MAC地址

# ip link show

先查看MAC地址

手动设置MAC地址

# ip link set enp3s1f1 addr 14:aa:bb:cc:dd:01

下面的脚本是为了实现自动化配置所有VF端口的命令

# counter=1; for i in $(ip a | grep enp3s1 | awk '{print $2;}' | tr -d ":"); do ip link set $i addr aa:bb:cc:dd:ee:$counter; ((counter++)); done

注意:需要适当修改enp3s1端口名称为实际端口的名称

linux加载虚拟sriov网卡,如何配置BroadCOM网卡的SR-IOV功能相关推荐

  1. linux加载虚拟sriov网卡,网卡直通SR-IOV技术

    相关技术 IO虚拟化简介 全虚拟化 通过VMM来模拟IO设备实现,VMM截获GuestOS的IO请求,通过软件模拟真实的硬件.VMM必须处理所有虚机的IO请求,然后将所有的IO情况序列化为可以被底层硬 ...

  2. 未能加载虚拟光盘到虚拟电脑linux,VirtualBox 安装增强功能报 [未能加载虚拟光盘]...

    VirtualBox 安装增强功能报 [未能加载虚拟光盘] 本地搭了虚拟机 CentOS 7, 想做主机和虚拟机的文件共享, 需要安装增强功能, 但安装时报下图错误: 度娘上也找了很多文章, 基本上讲 ...

  3. Linux 配置网卡、主机名(基础配置、网卡会话配置、网卡绑定配置)

    目录 配置网卡基本信息 通过nmcli命令配置网卡 通过配置网卡文件配置网卡 通过nmtui命令配置网卡 通过nm-connection-editor命令配置网卡 网卡高级配置 配置网络会话 配置网卡 ...

  4. 如何让linux加载当前目录的动态库

    debian从7.0开始支持multiarch,64位库的路径改到/usr/lib/x86_64-linux-gnu了,mint.ubuntu这些衍生版有没有跟着改我就不清楚了. deepin lin ...

  5. virtualbox centos7 安装增强功能时报错【未能加载虚拟光盘】非图形界面下的解决方案

    报错如图 在安装增强功能的时候,无论如何都一直报未能加载虚拟光盘,在网上找了好多教程,都是有图形界面的,恰恰我这个没有图形界面,然后再sf论坛上找到一个差不多的,但是他说的也很含糊,倒是指明一个方向 ...

  6. linux 加载u盘、光盘、软盘 mount使用指南

    <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />  一.Linu ...

  7. 虚拟机Virtualbox中的Ubuntu系统,安装增强功能时报错:未能加载虚拟光驱VBoxsGuestAdditions.iso到虚拟电脑

    虚拟机Virtualbox中的Ubuntu系统,安装增强功能时报错:未能加载虚拟光驱VBoxsGuestAdditions.iso到虚拟电脑 在virtualbox中装ubuntu虚拟机,但是分辨率太 ...

  8. linux ntfs 密码,linux 加载ntfs和fat32分区

    原标题:linux 加载ntfs和fat32分区 纯手工打造每一篇开源资讯与技术干货,数十万程序员和Linuxer已经关注. 导读 关于加载ntfs和fat文件系统的文章极多,但写的不太明确,新手上路 ...

  9. virtualbox安装增强功能时【未能加载虚拟光盘】

    今天自由草在使用Virtualbox中的Ubuntu虚拟机,打算作为微丫头本地测试,结果屏幕分辨率比较低,不方便使用,就想安装增强功能来实现更改分辨率,但是在安装时出错:未能加载虚拟光驱 VBoxsG ...

最新文章

  1. Docker容器中挂载NFS共享目录
  2. python画圆并填充图形颜色_如何使用python设计语言graphics绘制圆形图形
  3. DataArtisans战略联手阿里云 Apache Flink服务能力云化
  4. linux更新命令centos,CentOS 7.0命令更新新版特性
  5. 以太坊智能合约 solidity 的常用的数据结构介绍
  6. 十行代码实现高仿Promise
  7. ANSI C和Glib C区别(二)
  8. 基于统计语言模型的分词方法
  9. 2019全球最强100家AI公司名单出炉,6家中国公司上榜
  10. 肯德尔系数怎么分析_论文实战2——德尔菲法与信度分析
  11. 伪逆矩阵(pseudo-inverse)
  12. C1 驾驶证考试科目二考试心得
  13. 基于航空RFID行李处理应用方案
  14. 计算机核心期刊(北大核心)投稿意见
  15. KSO-在NETCore中RabbitMQ的使用以及相关代码
  16. 关于黑苹果卡在[IGPU] Scheduler Throttle Cap=100ms的解决办法
  17. layui——下拉框监听
  18. impala创建kudu表过程,并发时异常
  19. FIR数字滤波器的设计[Matlab][带源码]
  20. 在Ubuntu 16.04下安装g2o

热门文章

  1. 爱奇艺六季度付费用户数据一览,巨头A股还有希望吗?
  2. 与年轻人“玩在一起”的QQ音乐,正抢跑音娱赛道?
  3. 谁来搬走冷链物流头上的三座大山
  4. python的所有数据类型都可以相互转化吗_Python python 数据类型的相互转换
  5. 石板切割问题c语言_天长井盖切割机切圆机市政窨井盖切圆机
  6. 企业计算机能力,以IT企业需求为导向的计算机人才培养模式研究
  7. 11旋转编码器原理图_雷恩PRECILEC I9H系列增量式编码器
  8. CTF--misc 零宽度字符隐写
  9. CTF -杂项密码学,常见密码介绍(三)
  10. python中的及||