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-->