配置 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 可用性集或可用性区域来启用加速网络。
-
登录到 Azure 门户,并导航到 Azure 应用商店。

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

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

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

-
单击下一步:VM 配置 >。
在VM 配置页面上,执行以下操作:
- 配置公共 IP 域名后缀。
- 启用或禁用Azure 监视指标。
- 启用或禁用后端 Autoscale™。

-
单击下一步:网络和附加设置 >。
在网络和附加设置页面上,创建启动诊断帐户并配置网络设置。
在加速网络部分下,您可以选择为管理接口、客户端接口和服务器接口分别启用或禁用加速网络功能。

-
单击下一步:审核 + 创建 >。
验证成功后,查看基本设置、VM 配置、网络和附加设置,然后单击 创建。Azure 资源组可能需要一些时间才能使用所需的配置创建成功。
验证通过(/zh-cn/vpx/media/validation-passed.png)
-
部署完成后,选择 资源组 以查看配置详细信息。
创建虚拟机(/zh-cn/vpx/media/create-vm.png)
-
要验证加速网络配置,请选择 虚拟机 > 网络。每个 NIC 的加速网络状态显示为 已启用 或 已禁用。
加速网络已启用(/zh-cn/vpx/media/an-enabled.png)
使用 Azure PowerShell 命令行工具启用加速网络
如果在创建 VM 后需要启用加速网络,可以使用 Azure PowerShell 进行操作。
注意:
在使用 Azure PowerShell 启用加速网络之前,请务必停止 VM。
执行以下步骤以使用 Azure PowerShell 启用加速网络。
-
导航到 Azure 门户,单击右上角的 PowerShell 图标。
注意:
如果您处于 Bash 模式,请切换到 PowerShell 模式。

-
在命令提示符下,运行以下命令:
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--> -
要验证部署完成后加速网络的状态,请导航到 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)。这表明这两个接口已捆绑在一起。

针对 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)。

使用 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)。

针对 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)。

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。
示例:
-
创建虚拟局域网。
add vlan 20 <!--NeedCopy--> -
将 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-->