NetScaler VPX 14.1

Configure a NetScaler VPX instance to use SR-IOV network interfaces

您可以配置运行在 Linux-KVM 平台上的 NetScaler VPX 实例,使用单根 I/O 虚拟化 (SR-IOV) 和以下网卡:

  • Intel 82599 10G
  • 英特尔 X710 10G
  • 英特尔 XL710 40G
  • 英特尔 X722 10G

有关详细信息,请参阅 NetScaler VPX 支持的网卡

本节将介绍如何完成以下操作:

  • 配置一个 NetScaler VPX 实例以使用 SR-IOV 网络接口
  • 在 SR-IOV 接口上配置静态 LA/LACP
  • 在 SR-IOV 接口上配置 VLAN

限制说明

使用 Intel 82599、X710、XL710 和 X722 网卡时请记住这些限制。不支持以下功能。

Intel 82599 网卡的限制

  • L2 模式切换。
  • 管理分区(共享 VLAN 模式)。
  • 高可用性(主动-主动模式)。
  • 巨型帧。
  • IPv6:如果 VPX 实例中至少有一个 SR-IOV 接口,则最多只能配置 30 个唯一的 IPv6 地址。
  • 不支持通过 ip link 命令在管理程序上为 SRIOV VF 接口配置 VLAN。
  • 接口参数配置,例如速度、双工和自动协商等,均不被支持。

英特尔 X710 10G、英特尔 XL710 40G 和英特尔 X722 10G 网卡的限制

  • L2 模式切换。
  • 管理分区(共享 VLAN 模式)。
  • 在群集中,当 XL710 网卡用作数据接口时,不支持巨型帧。
  • 当接口断开连接并重新连接时,接口列表会重新排序。
  • 接口参数配置,例如速度、双工和自动协商等,均不被支持。
  • 英特尔 X710 10G、英特尔 XL710 40G 和英特尔 X722 10G 网卡的接口名称为 40/X
  • VPX 实例最多支持 16 个 英特尔 XL710/X710/X722 SRIOV 或 PCI 直通接口。

注意

为了使 Intel X710 10G、Intel XL710 40G 和 Intel X722 10G 网卡支持 IPv6,您需要在 KVM 主机上输入以下命令,在虚拟功能 (VF) 上启用信任模式:

# ip link set <PNIC> <VF> trust on

示例:

# ip link set ens785f1 vf 0 trust on

先决条件

在配置 NetScaler VPX 实例以使用 SR-IOV 网络接口之前,请完成以下先决条件任务。有关如何完成相应任务的详细信息,请参阅“网卡”列。

任务 英特尔 82599 网卡 英特尔 X710、XL710 和 X722 网络接口卡
  1. 将网卡添加到 KVM 主机。
- -
  1. 下载并安装最新的 Intel 驱动程序。
IXGBE 驱动程序 I40E 驱动程序
  1. 在 KVM 主机上禁用驱动程序。
将以下条目添加到 /etc/modprobe.d/blacklist.conf 文件中:blacklist ixgbevf。使用 IXGBE 驱动程序版本 4.3.15(推荐)。 将以下条目添加到 /etc/modprobe.d/blacklist.conf 文件中:blacklist i40evf。使用 i40e 驱动程序版本 2.0.26(推荐)。
  1. 在 KVM 主机上启用 SR-IOV 虚拟功能 (VF)。在接下来两列的命令中:number_of_VFs = 您要创建的虚拟 VF 数量。device_name = 接口名称。
如果您使用的是 kernel 3.8 之前的版本,则将以下条目添加到 /etc/modprobe.d/ixgbe 文件中并重新启动 KVM 主机:options ixgbe max_vfs=<number_of_VFs>。如果您使用的是 kernel 3.8 或更高版本,请使用以下命令创建 VF:echo <number_of_VFs> > /sys/class/net/<device_name>/device/sriov_numvfs。请参见图 1 中的示例。 如果您使用的是 kernel 3.8 之前的版本,则将以下条目添加到 /etc/modprobe.d/i40e.conf 文件中并重新启动 KVM 主机:options i40e max_vfs=<number_of_VFs>。如果您使用的是 kernel 3.8 或更高版本,请使用以下命令创建 VF:echo<number_of_VFs> > /sys/class/net/<device_name>/device/sriov_numvfs。请参见图 2 中的示例。
  1. 通过将用于创建 VF 的命令添加到 rc.local 文件中,使 VF 持久化。
请参见图 3 中的示例。 请参见图 3 中的示例。

重要提示:

创建 SR-IOV VF 时,请确保不要将 MAC 地址分配给 VF。

图 1:在 KVM 主机上为 英特尔 82599 10G 网卡启用 SR-IOV 虚拟功能。

适用于 82599 的 SR-IOV 虚拟功能

图 2:在 KVM 主机上为 英特尔 X710 10G 和 XL710 40G 网卡启用 SR-IOV 虚拟功能。

适用于 X710 的 SR-IOV 虚拟功能

图 3: 在 KVM 主机上为 Intel X722 10G 网卡启用 SR-IOV 虚拟功能。

X722 网卡的单根 I/O 虚拟化虚拟功能

图 4: 使 VF 持久化。

单根 I/O 虚拟化虚拟功能持久化

Configure a NetScaler VPX instance to use SR-IOV network interface

要使用虚拟机管理器配置 NetScaler VPX 实例以使用 SR-IOV 网络接口,请完成以下步骤:

  1. Power off the NetScaler VPX instance.

  2. 选择 NetScaler VPX 实例,然后选择“打开”。

    配置 SR-IOV 虚拟机1

  3. 在 <KVM 上的虚拟机> 窗口中,选择 i 图标。

    配置 SR-IOV 虚拟机 2

  4. 选择“添加硬件”。

    SR-IOV 虚拟机图示

  5. 在“添加新虚拟硬件”对话框中,执行以下操作:

    1. 选择“PCI 主机设备”。
    2. 在主机设备部分,选择您已创建的 VF,然后单击完成。

    图 4:Intel 82599 10G 网络接口卡的虚拟功能

    Intel 82599 10G 网络接口卡的虚拟功能

    图 5:Intel XL710 40G 网络接口卡的虚拟功能

    Intel XL710 40G 网卡的虚拟功能

    图 6:Intel X722 10G 网卡的虚拟功能

    适用于 Intel X722 10G 网卡的虚拟功能

  6. 重复步骤 4 和 5 以添加您已创建的 VF。
  7. 启动 NetScaler VPX 实例的电源供应。
  8. NetScaler VPX 实例启动后,使用以下命令验证配置:

    show interface summary
    <!--NeedCopy-->
    

    输出显示了您配置的所有接口。

    图 6:Intel 82599 网卡的输出摘要。

    Intel 82599 网卡的输出摘要

    图 7:Intel X710 和 XL710 网卡的输出摘要。

    Intel X710 和 XL710 网卡的输出摘要

在 SR-IOV 接口上配置静态 LA/LACP

重要提示:

创建 SR-IOV VF 时,请确保不要为 VF 分配 MAC 地址。

要在链路聚合模式下使用 SR-IOV VF,请禁用已创建 VF 的欺骗检查。在 KVM 主机上,使用以下命令禁用欺骗检查:

*ip link set \<interface\_name\> vf \<VF\_id\> spoofchk off*

其中:

  • 接口名称 – 是接口名称。
  • VF_id – 是虚拟功能 ID。

示例

禁用欺骗检查

禁用所有已创建 VF 的欺骗检查后。重新启动 NetScaler VPX 实例并配置链路聚合。有关详细说明,请参阅配置链路聚合。

在 SR-IOV 接口上配置 VLAN

您可以在 SR-IOV VF 上配置 VLAN。有关详细说明,请参阅配置 VLAN

重要提示:

确保 KVM 主机不包含 VF 接口的 VLAN 设置。

Configure a NetScaler VPX instance to use SR-IOV network interfaces