适用于 NetScaler VPX 部署的艾泽标签
在 Azure 云门户中,您可以使用名称:值对(例如 Dept: Finance)标记资源,以便跨资源组以及在门户中跨订阅对资源进行分类和查看。当您需要组织资源以进行计费、管理或自动化时,标记功能非常有用。
Azure 标签如何用于 VPX 部署
对于部署在 Azure 云上的 NetScaler VPX 独立实例和高可用性实例,现在您可以创建与 Azure 标签关联的负载平衡服务组。VPX 实例会持续监控带有相应标签的 Azure 虚拟机(后端服务器)和网络接口 (NIC)(或两者),并相应地更新服务组。
VPX 实例创建服务组,该服务组使用标签对后端服务器进行负载平衡。该实例查询 Azure API,以获取所有带有特定标签名称和标签值的资源。根据分配的轮询周期(默认为 60 秒),VPX 实例会定期轮询 Azure API,并检索在 VPX GUI 中分配了标签名称和标签值的可用资源。每当添加或删除带有相应标签的 VM 或 NIC 时,ADC 会检测到相应的更改,并自动从服务组中添加或删除 VM 或 NIC 的 IP 地址。

开始之前
在创建 NetScaler 负载平衡服务组之前,请在 Azure 中为服务器添加标签。您可以将标签分配给虚拟机或 NIC。

有关添加 Azure 标签的更多信息,请参阅 Microsoft 文档 使用标签组织 Azure 资源。
注意:
用于添加 Azure 标签设置的 ADC CLI 命令仅支持以数字或字母开头,而不支持其他键盘字符的标签名称和标签值。
如何使用 VPX GUI 添加 Azure 标签设置
您可以使用 VPX GUI 将 Azure 标签云配置文件添加到 VPX 实例,以便该实例可以使用指定的标签对后端服务器进行负载平衡。请按照以下步骤操作:
- 从 VPX GUI,导航到 配置 > Azure > 云配置文件。
- 单击添加以创建云配置文件。云配置文件窗口随即打开。

- 请填写以下字段的相应值:
- 名称:为您的配置文件添加名称
- 虚拟服务器 IP 地址:虚拟服务器 IP 地址将从 VPX 实例可用的空闲 IP 地址自动填充。有关详细信息,请参阅使用 Azure 门户将多个 IP 地址分配给虚拟机。
- 类型:从菜单中,选择 AZURETAGS。
- Azure 标签名称:输入您在 Azure 门户中分配给 VM 或 NIC 的名称。
- Azure 标签值:输入您在 Azure 门户中分配给 VM 或 NIC 的值。
- Azure 轮询周期:默认情况下,轮询周期为 60 秒,这是最小值。您可以根据需要进行更改。
- 负载平衡服务器协议:选择负载平衡器侦听的协议。
- 负载平衡服务器端口:选择负载平衡器侦听的端口。
- Azure 标签设置:将为此云配置文件创建的服务组的名称。
- Azure 标签设置协议:选择后端服务器侦听的协议。
- Azure 标签设置端口:选择后端服务器侦听的端口。
- 单击 创建。
为标记的 VM 或 NIC 创建负载均衡器虚拟服务器和服务组。要查看负载均衡器虚拟服务器,请从 VPX GUI 导航到 流量管理 > 负载平衡 > 虚拟服务器。
如何使用 VPX CLI 添加 Azure 标签设置
在 NetScaler CLI 上键入以下命令,为 Azure 标签创建云配置文件。
add cloud profile `<profile name>` -type azuretags -vServerName `< vserver name>` -serviceType HTTP -IPAddress `<vserver IP address>` -port 80 -serviceGroupName `<service group name>` -boundServiceGroupSvcType HTTP -vsvrbindsvcport 80 -azureTagName `<Azure tag specified on Azure portal>` -azureTagValue `<Azure value specified on the Azure portal>` -azurePollPeriod 60
<!--NeedCopy-->
重要提示:
您必须保存所有配置;否则,重新启动实例后配置将丢失。键入
save config。
示例 1:以下是为所有带有“myTagName/myTagValue”标签的 Azure VM/NIC 的 HTTP 流量创建云配置文件的示例命令:
add cloud profile MyTagCloudProfile -type azuretags -vServerName MyTagVServer -serviceType HTTP -IPAddress 40.115.116.57 -port 80 -serviceGroupName MyTagsServiceGroup -boundServiceGroupSvcType HTTP -vsvrbindsvcport 80 -azureTagName myTagName -azureTagValue myTagValue -azurePollPeriod 60
Done
<!--NeedCopy-->
要显示云配置文件,请键入 show cloudprofile。
示例 2:以下 CLI 命令打印示例 1 中新添加的云配置文件的信息。
show cloudprofile
1) Name: MyTagCloudProfile Type: azuretags VServerName: MyTagVServer ServiceType: HTTP IPAddress: 52.178.209.133 Port: 80 ServiceGroupName: MyTagsServiceGroup BoundServiceGroupSvcType: HTTP
Vsvrbindsvcport: 80 AzureTagName: myTagName AzureTagValue: myTagValue AzurePollPeriod: 60 GraceFul: NO Delay: 60
<!--NeedCopy-->
要删除云配置文件,请键入 rm cloud profile <cloud profile name>
示例 3:以下命令删除示例 1 中创建的云配置文件。
> rm cloudprofile MyTagCloudProfile
Done
<!--NeedCopy-->
故障排除
问题:在极少数情况下,“rm cloud profile”CLI 命令可能无法删除与已删除云配置文件关联的服务组和服务器。这发生在命令发出时,距离要删除的云配置文件的轮询周期结束仅有几秒钟。
解决方案:通过为每个剩余的服务组输入以下 CLI 命令,手动删除剩余的服务组:
#> rm servicegroup <serviceGroupName>
<!--NeedCopy-->
此外,通过为每个剩余的服务器输入以下 CLI 命令,删除每个剩余的服务器:
#> rm server <name>
<!--NeedCopy-->
问题:如果您使用 CLI 将 Azure 标签设置添加到 VPX 实例,则在热重启后,rain_tags 进程会继续在 HA 对节点上运行。
解决方案:在热重启后,手动终止辅助节点上的进程。从辅助 HA 节点的 CLI 退出到 shell 提示符:
#> shell
<!--NeedCopy-->
使用以下命令终止 rain_tags 进程:
# PID=`ps -aux | grep rain_tags | awk '{print $2}'`; kill -9 $PID
<!--NeedCopy-->
问题:后端服务器可能无法访问,并且尽管健康,但被 VPX 实例报告为 DOWN。 解决方案:确保 VPX 实例可以访问与后端服务器对应的标记 IP 地址。对于标记的 NIC,这是 NIC IP 地址;而对于标记的 VM,这是 VM 的主 IP 地址。如果 VM/NIC 位于不同的 Azure VNet 上,请确保已启用 VNet 对等互连。