开发者
资源
文档评分
获取效率
正确性
完整性
易理解
在线提单
论坛求助

(可选)使能SR-IOV

本小节主要用于为支持SR-IOV的设备(如NVMe、网卡)创建虚拟功能(VF)。

目前支持的设备:Huawei ES3000 V6 NVMe(使用NVMe驱动),SP680网卡。SP680网卡目前已支持VF RoCE。SR-IOV功能需驱动支持,驱动Patch和使用说明请参见获取链接

  1. 创建VF。
    • NVMe驱动。
      echo ${VF_NUM} > /sys/class/nvme/nvme0/device/sriov_numvfs
      1. 分配资源。
        nvme virt-mgmt -c ${CTRL_ID} -a 7 /dev/nvme0
        nvme virt-mgmt -c ${CTRL_ID} -r 0 -a 8 -n 8 /dev/nvme0
        nvme virt-mgmt -c ${CTRL_ID} -a 9 /dev/nvme0
      2. 查找可用namespace。
        nvme list-ns -a /dev/nvme0
      3. 创建namespace(如果无可用namespace)。
        nvme create-ns /dev/nvme0 --nsze ${NS_SIZE} --ncap ${NS_SIZE} --flbas 0x0 --dps 0 --nmic 0
      4. 将namespace attach到VF对应的CTRL_ID。
        nvme attach-ns -n ${NSID} -c ${CTRL_ID} /dev/nvme0

        CTRL_ID为VF对应的控制器ID,第一个VF的控制器为0x2,以此类推。

        NSID为namespace的ID,每个VF都需要分配一个独占的namespace。

    • SP680网卡和Mellanox网卡。
      echo ${VF_NUM} > /sys/class/net/eth0/device/sriov_numvfs
  2. 销毁VF。
    • NVMe驱动。
      echo 0 > /sys/class/nvme/nvme0/device/sriov_numvfs
    • SP680网卡和Mellanox网卡。
      echo 0 > /sys/class/net/eth0/device/sriov_numvfs