NetScaler VPX

配置 NetScaler VPX 实例以使用 Azure 的加速网络功能

加速网络使单根 I/O 虚拟化 (SR-IOV) 虚拟功能 (VF) NIC 能够连接到虚拟机,从而提高网络性能。您可以在需要以更高吞吐量发送或接收数据、具有可靠流式传输和更低 CPU 利用率的繁重工作负载中使用此功能。 当 NIC 启用加速网络时,Azure 会将 NIC 现有的半虚拟化 (PV) 接口与 SR-IOV VF 接口捆绑在一起。对 SR-IOV VF 接口的支持可启用并增强 NetScaler VPX 实例的吞吐量。

加速网络功能可以带来以下优势:

  • 更低的延迟
  • 更高的每秒数据包 (pps) 性能
  • 增强的吞吐量
  • 减少抖动
  • 降低 CPU 利用率

注意:

NetScaler VPX 实例支持 Azure 加速网络,从 13.0 版本构建 76.29 及更高版本开始。

先决条件

  • 确保您的 VM 大小符合 Azure 加速网络的要求。
  • 在任何 NIC 上启用加速网络之前,请停止 VM(单个或可用性集中的 VM)。

局限性

加速网络只能在某些实例类型上启用。有关详细信息,请参阅支持的实例类型。

支持加速网络的网络接口卡

Azure provides Mellanox ConnectX3, ConnectX4, and ConnectX5 NICs in the SR-IOV mode for accelerated networking.

当 NetScaler VPX 接口上启用加速网络功能时,Azure 平台会将 ConnectX3、ConnectX4 或 ConnectX5 型号的接口与 NetScaler VPX 设备中已有的 PV 接口进行捆绑操作。

注意:

NetScaler VPX 支持 ConnectX5 型号的网络接口卡,此支持从 13.1 版本 37.x 构建开始提供。

有关在将接口附加到 VM 之前启用加速网络的更多信息,请参阅 创建具有加速功能的网络接口。

有关在 VM 上的现有接口上启用加速网络的更多信息,请参阅 在 VM 上启用现有接口。

如何使用 Azure 控制台在 NetScaler VPX 实例上启用加速网络

您可以使用 Azure 控制台或 Azure PowerShell 在特定接口上启用加速网络。

请执行以下步骤,通过使用 Azure 可用性集或可用性区域来启用加速网络。

  1. 登录到 Azure 门户,并导航到 Azure 应用商店。

    Azure 应用商店

  2. 在 Azure 应用商店 中,请您搜索 NetScaler。

    Search NetScaler

  3. 选择非 FIPS NetScaler 计划以及许可证,然后单击 Create。

    Create NetScaler

    创建 NetScaler 页面随即出现。

  4. 在基本信息选项卡中,创建资源组。在参数选项卡下,输入区域、管理员用户名、管理员密码、许可证类型 (VM SKU) 和其他字段的详细信息。

    基本信息页面

  5. 单击下一步:VM 配置 >。

    在VM 配置页面上,执行以下操作:

    1. 配置公共 IP 域名后缀。
    2. 启用或禁用Azure 监视指标。
    3. 启用或禁用后端 Autoscale™。

    VM 配置

  6. 单击下一步:网络和附加设置 >。

    在网络和附加设置页面上,创建启动诊断帐户并配置网络设置。

    在加速网络部分下,您可以选择为管理接口、客户端接口和服务器接口分别启用或禁用加速网络功能。

    加速网络选项

  7. 单击下一步:审核 + 创建 >。

    验证成功后,查看基本设置、VM 配置、网络和附加设置,然后单击 创建。Azure 资源组可能需要一些时间才能使用所需的配置创建成功。

    验证通过(/zh-cn/vpx/media/validation-passed.png)

  8. 部署完成后,选择 资源组 以查看配置详细信息。

    创建虚拟机(/zh-cn/vpx/media/create-vm.png)

  9. 要验证加速网络配置,请选择 虚拟机 > 网络。每个 NIC 的加速网络状态显示为 已启用 或 已禁用。

    加速网络已启用(/zh-cn/vpx/media/an-enabled.png)

使用 Azure PowerShell 命令行工具启用加速网络

如果在创建 VM 后需要启用加速网络,可以使用 Azure PowerShell 进行操作。

注意:

在使用 Azure PowerShell 启用加速网络之前,请务必停止 VM。

执行以下步骤以使用 Azure PowerShell 启用加速网络。

  1. 导航到 Azure 门户,单击右上角的 PowerShell 图标。

    注意:

    如果您处于 Bash 模式,请切换到 PowerShell 模式。

    Azure PowerShell

  2. 在命令提示符下,运行以下命令:

    az network nic update --name <nic-name> --accelerated-networking [true | false] --resource-group <resourcegroup-name>
    <!--NeedCopy-->
    

    加速网络参数接受以下两种值中的任意一种:

    • True: 在指定的 NIC 上启用加速网络。
    • False: 在指定的 NIC 上禁用加速网络。

    要在特定 NIC 上启用加速网络:

    az network nic update --name citrix-adc-vpx-nic01-0 --accelerated-networking true --resource-group rsgp1-aan
    <!--NeedCopy-->
    

    要在特定 NIC 上禁用加速网络:

    az network nic update --name citrix-adc-vpx-nic01-0 --accelerated-networking false --resource-group rsgp1-aan
    <!--NeedCopy-->
    
  3. 要验证部署完成后加速网络的状态,请导航到 VM > Networking。

    在以下示例中,您可以看到加速网络已启用。

    已启用加速网络

    在以下示例中,您可以看到加速网络已禁用。

    已禁用加速网络

通过使用 NetScaler 的 FreeBSD Shell 来验证接口上的加速网络

您可以登录到 NetScaler 的 FreeBSD shell,并运行以下命令来验证加速网络状态。

ConnectX3 网卡配置示例:

以下示例显示了 Mellanox ConnectX3 NIC 的“ifconfig”命令输出。“50/n”表示 Mellanox ConnectX3 NIC 的 VF 接口。0/1 和 1/1 表示 NetScaler VPX 实例的 PV 接口。您可以观察到 PV 接口 (1/1) 和 CX3 VF 接口 (50/1) 都具有相同的 MAC 地址 (00:22:48:1c:99:3e)。这表明这两个接口已捆绑在一起。

cx3-ifconfig-output

针对 ConnectX4 网卡的示例:

以下示例显示了 Mellanox ConnectX4 网卡的“ifconfig”命令输出。“100/n”表示 Mellanox ConnectX4 网卡的 VF 接口。0/1、1/1 和 1/2 表示 NetScaler VPX 实例的 PV 接口。 您可以观察到 PV 接口 (1/1) 和 CX4 VF 接口 (100/1) 具有相同的 MAC 地址 (00:0d:3a:9b:f2:1d)。这表明这两个接口已捆绑在一起。同样,PV 接口 (1/2) 和 CX4 VF 接口 (100/2) 具有相同的 MAC 地址 (00:0d:3a:1e:d2:23)。

cx4 接口配置

使用 ADC CLI 验证接口上的加速网络

ConnectX3 网卡的示例如下:

以下 show interface 命令输出表明 PV 接口 1/1 与虚拟功能 50/1 捆绑在一起,后者是 SR-IOV VF 网卡。1/1 和 50/1 网卡的 MAC 地址相同。启用加速网络后,1/1 接口的数据通过 50/1 接口的数据路径发送,后者是 ConnectX3 接口。您可以看到 PV 接口 (1/1) 的“show interface”输出指向 VF (50/1)。同样,VF 接口 (50/1) 的“show interface”输出指向 PV 接口 (1/1)。

Cx3 显示接口命令输出

针对 ConnectX4 网卡的示例:

以下 show interface 命令输出表明 PV 接口 1/1 与虚拟功能 100/1 捆绑在一起,后者是 SR-IOV VF 网卡。1/1 和 100/1 网卡的 MAC 地址相同。启用加速网络后,1/1 接口的数据通过 100/1 接口的数据路径发送,后者是 ConnectX4 接口。您可以看到 PV 接口 (1/1) 的“show interface”输出指向 VF (100/1)。同样,VF 接口 (100/1) 的“show interface”输出指向 PV 接口 (1/1)。

Cx4 接口显示输出

NetScaler 中的注意事项

  • PV 接口被视为所有必要操作的主要接口或核心接口。所有配置都必须在 PV 接口上进行,且只能在这些接口上进行。
  • VF 接口上的所有“set”操作均被阻止,以下情况除外:
    • 启用接口
    • 禁用网络接口
    • 重置接口
    • 清除统计信息

    注意:

    Citrix® 建议您不要对 VF 接口执行任何操作。

  • 您可以使用 show interface 命令验证 PV 接口与 VF 接口的绑定。
  • 从 NetScaler 13.1-33.x 版本开始,NetScaler VPX 实例可以无缝处理 Azure 加速网络中 NIC 的动态移除和重新连接。Azure 可以为了主机维护活动而移除加速网络的 SR-IOV VF NIC。每当 NIC 从 Azure VM 中移除时,NetScaler VPX 实例会将接口状态显示为“链路断开”,并且流量仅通过虚拟接口传输。移除的 NIC 重新连接后,VPX 实例将使用重新连接的 SR-IOV VF NIC。此过程是无缝的,不需要任何配置。

将 VLAN 配置到 PV 接口

当 PV 接口绑定到 VLAN 时,关联的加速 VF 接口也会绑定到与 PV 接口相同的 VLAN。在此示例中,PV 接口 (1/1) 绑定到 VLAN (20)。与 PV 接口 (1/1) 捆绑的 VF 接口 (100/1) 也绑定到 VLAN 20。

示例:

  1. 创建虚拟局域网。

    add vlan 20
    <!--NeedCopy-->
    
  2. 将 VLAN 绑定到 PV 接口。

    bind vlan 20 –ifnum 1/1
    
    show vlan
    
    1)  VLAN ID: 1
        Link-local IPv6 addr: fe80::20d:3aff:fe9b:f21d/64
        Interfaces : LO/1
    
    2)  VLAN ID: 10     VLAN Alias Name:
        Interfaces : 0/1 100/1
        IPs : 10.0.1.29  Mask: 255.255.255.0
    
    3)  VLAN ID: 20     VLAN Alias Name:
        Interfaces :  1/1 100/2
    
    <!--NeedCopy-->
    

注意:

不允许在加速 VF 接口上执行 VLAN 绑定操作。

bind vlan 1 -ifnum 100/1
ERROR: Operation not permitted
<!--NeedCopy-->