添加后端 AWS 自动扩缩服务
在云中高效托管应用程序涉及根据应用程序需求轻松且经济高效地管理资源。为了满足不断增长的需求,您必须向上扩展网络资源。当需求减少时,您需要向下扩展以避免空闲资源造成不必要的成本。您可以通过在任何给定时间仅部署所需数量的实例来最大程度地降低运行应用程序的成本。为此,您必须持续监控流量、内存和 CPU 使用情况等。然而,手动监控流量很麻烦。为了使应用程序环境动态地向上或向下扩展,您必须在必要时自动化监控流量和向上或向下扩展资源的过程。
与 AWS 自动扩缩服务集成后,NetScaler VPX 实例提供以下优势:
- 负载平衡和管理:根据需求自动配置服务器以向上和向下扩展。VPX 实例自动检测后端子网中的 Autoscale™ 组,并允许用户选择 Autoscale 组来平衡负载。所有这些都是通过在 VPX 实例上自动配置虚拟和子网 IP 地址来完成的。
- 高可用性:检测跨多个可用区并进行负载平衡的 Autoscale 组。
-
更好的网络可用性:VPX 实例支持:
- 不同 VPC 上的后端服务器,通过使用 VPC 对等连接
- 相同放置组上的后端服务器
- 不同可用区上的后端服务器
- 优雅连接终止:通过使用优雅超时功能,优雅地移除 Autoscale 服务器,避免在缩减活动发生时丢失客户端连接。
- 备用服务器的连接耗尽:阻止向处于“备用”状态的服务器发送任何新的客户端连接。然而,“备用”服务器仍然是自动扩缩组的一部分,它们会继续处理现有客户端连接,直到这些连接关闭。当服务器恢复到“服务中”状态时,它会重新开始处理新连接。您可以使用“备用”状态来更新、修改或排查服务器,或者根据需要进行缩减。 有关更多信息,请参阅 AWS 文档。
图示:带有 NetScaler VPX 实例的 AWS 自动扩缩服务

此图说明了 AWS 自动扩缩服务如何与 NetScaler VPX 实例(负载平衡虚拟服务器)兼容。有关更多信息,请参阅以下 AWS 主题。
开始之前
在将自动扩缩 (Autoscaling) 与您的 NetScaler VPX 实例配合使用之前,您必须完成以下任务。
-
阅读以下主题:
-
根据您的要求在 AWS 上创建 NetScaler VPX 实例。
- 有关如何创建 NetScaler VPX 独立实例的更多信息,请参阅 在 AWS 上部署 NetScaler VPX 独立实例 和 场景:独立实例
- 有关如何在高可用性 (HA) 模式下部署 VPX 实例的更多信息,请参阅 在 AWS 上部署高可用性对。
注意:
我们建议如下:
- 使用云形成模板在亚马逊网络服务上创建 NetScaler VPX 实例。
- 创建三个独立的接口:一个用于管理 (NSIP),一个用于面向客户端的负载均衡虚拟服务器 (VIP),一个用于子网 IP (NSIP)。
-
创建一个 AWS 自动扩缩组。如果您没有现有的自动扩缩配置,则必须:
- 创建一个启动配置
- 创建自动扩缩组
- 验证自动扩缩组
有关更多信息,请参阅 http://docs.aws.amazon.com/autoscaling/latest/userguide/GettingStartedTutorial.html。
-
从 NetScaler 14.1-12.x 版本开始,在 AWS 自动扩缩组中,只有在启用了“优雅”选项时才必须指定缩减策略。在 14.1-12.x 之前的 NetScaler 版本中,无论是否启用“优雅”选项,都必须至少指定一个缩减策略。
NetScaler VPX 实例仅支持步进扩缩策略。自动扩缩组不支持简单扩缩策略和目标跟踪扩缩策略。
-
确保您的 AWS 账户具有以下 IAM 权限:
{ "Version": "2012-10-17", "Statement": \[ { "Action": \[ "ec2:DescribeInstances", "ec2:DescribeNetworkInterfaces", "ec2:DetachNetworkInterface", "ec2:AttachNetworkInterface", "ec2:StartInstances", "ec2:StopInstances", "ec2:RebootInstances", "autoscaling:\*", "sns:\*", "sqs:\*" “iam: SimulatePrincipalPolicy” “iam: GetRole” \], "Resource": "\*", "Effect": "Allow" } \] } <!--NeedCopy-->
将 AWS 自动扩缩服务添加到 NetScaler VPX 实例
完成以下步骤,将自动扩缩服务添加到 VPX 实例:
-
使用您的
nsroot凭据登录到 VPX 实例。 -
导航到 系统 > 亚马逊网络服务 > 云配置文件,然后单击 添加。
创建云配置文件 配置页面出现。

创建云配置文件时需要注意的事项:
- 虚拟服务器 IP 地址将从 VPX 实例可用的空闲 IP 地址自动填充。有关详细信息,请参阅 管理多个 IP 地址。
- 输入您在 AWS 账户上配置的自动扩缩组的精确名称。有关详细信息,请参阅 AWS 自动扩缩组。
- 选择自动扩缩组协议和端口时,请确保您的服务器侦听这些协议和端口,并且您在服务组中绑定了正确的监视器。默认情况下,使用 TCP 监视器。
- 对于 SSL 协议类型的自动扩缩,在创建云配置文件后,负载平衡虚拟服务器或服务组可能会因为缺少证书而显示为关闭。您可以手动将证书绑定到虚拟服务器或服务组。
-
选择 Graceful 并在 Delay 字段中指定超时值,以优雅地移除自动扩缩服务器。此选项会启动缩减事件。VPX 实例不会立即移除服务器,而是将其中一个服务器标记为优雅删除。在此期间,VPX 实例不允许新连接到此服务器。现有连接将一直提供服务,直到超时发生。超时后,VPX 实例将移除该服务器。
如果您不选择 Graceful 选项,自动扩缩组中的服务器将在负载下降后立即移除。这可能会导致现有已连接客户端的服务中断。
创建云配置文件后,将创建一个 NetScaler 负载平衡虚拟服务器和一个服务组,其成员为自动扩缩组的服务器。您的后端服务器必须可以通过在 VPX 实例上配置的 SNIP 访问。

注意:
- 要在 AWS 控制台中查看自动扩缩相关信息,请转到 EC2 > 控制面板 > 自动扩缩 > 自动扩缩组。
- 您可以在 AWS 中使用相同的自动扩缩组 (ASG) 为不同的服务(使用不同的端口)创建不同的云配置文件。因此,NetScaler VPX 实例支持在公有云中使用相同的自动扩缩组提供多个服务。