添加后端 AWS 自动扩缩服务
在云中高效托管应用程序涉及根据应用程序需求轻松且经济高效地管理资源。为了满足不断增长的需求,您必须向上扩展网络资源。当需求减少时,您需要向下扩展以避免空闲资源造成不必要的成本。为了通过在任何给定时间仅部署所需数量的实例来最大程度地降低应用程序运行成本,您必须持续监控流量、内存和 CPU 使用率等。然而,手动监控流量非常繁琐。为了使应用程序环境能够动态地向上或向下扩展,您必须在必要时自动化监控流量以及向上和向下扩展资源的过程。
NetScaler VPX 实例与 AWS 自动扩缩服务集成,提供以下优势:
- 负载平衡和管理:根据需求自动配置服务器以进行向上和向下扩展。VPX 实例自动检测后端子网中的 Autoscale™ 组,并允许用户选择 Autoscale 组以平衡负载。所有这些都通过在 VPX 实例上自动配置虚拟和子网 IP 地址来完成。
- 高可用性:检测跨多个可用区的 Autoscale 组并对服务器进行负载平衡。
-
更好的网络可用性:VPX 实例支持:
- 通过使用 VPC 对等连接不同 VPC 上的后端服务器
- 同一放置组中的后端服务器
- 不同可用区中的后端服务器
- 优雅连接终止:通过使用优雅超时功能,在缩减活动发生时,优雅地移除 Autoscale 服务器,避免客户端连接丢失。
图表:带有 NetScaler VPX 实例的 AWS 自动扩缩服务

此图说明了 AWS 自动扩缩服务如何与 NetScaler VPX 实例(负载平衡虚拟服务器)兼容。有关更多信息,请参阅以下 AWS 主题。
开始之前
在将自动扩缩与您的 NetScaler VPX 实例配合使用之前,您必须完成以下任务。
-
阅读以下主题:
-
根据您的要求在 AWS 上创建 NetScaler VPX 实例。
- 有关如何创建 NetScaler VPX 独立实例的更多信息,请参阅 在 AWS 上部署 NetScaler VPX 独立实例 和 场景:独立实例
- 有关如何在 HA 模式下部署 VPX 实例的更多信息,请参阅 在 AWS 上部署高可用性对。
注意:
思杰建议使用 CloudFormation 模板在亚马逊云科技上创建 NetScaler VPX 实例。
Citrix® 建议您创建三个接口:一个用于管理 (NSIP),一个用于面向客户端的 LB 虚拟服务器 (VIP),一个用于子网 IP (NSIP)。
-
创建一个 AWS 自动扩缩组。如果您没有现有的自动扩缩配置,则必须:
a) 创建启动配置
b) 创建自动扩缩组
c) 验证自动扩缩组
有关更多信息,请参阅 http://docs.aws.amazon.com/autoscaling/latest/userguide/GettingStartedTutorial.html。
-
在 AWS 自动扩缩组中,您必须至少指定一个缩减策略。NetScaler VPX 实例仅支持步进扩缩策略。自动扩缩组不支持简单扩缩策略和目标跟踪扩缩策略。
将 AWS 自动扩缩服务添加到 NetScaler VPX 实例
您可以通过使用 GUI 单击一下即可将自动扩缩服务添加到 VPX 实例。完成以下步骤以将自动扩缩服务添加到 VPX 实例:
-
使用您的
nsroot凭据登录到 VPX 实例。 -
首次登录到 NetScaler VPX 实例时,您会看到默认的云配置文件页面。从下拉菜单中选择 AWS 自动扩缩组,然后单击 创建 以创建云配置文件。如果您想稍后创建云配置文件,请单击 跳过。
创建云配置文件时的注意事项:默认情况下,CloudFormation 模板会创建并附加以下 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-->确保实例的 IAM 角色具有适当的权限。
- 虚拟服务器 IP 地址将从可用于 VPX 实例的空闲 IP 地址自动填充。https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/MultipleIP.html#ManageMultipleIP
- 自动扩缩组将从您的 AWS 账户上配置的自动扩缩组中预填充。http://docs.aws.amazon.com/autoscaling/latest/userguide/AutoScalingGroup.html。
- 在选择自动扩缩组协议和端口时,请确保您的服务器侦听这些协议和端口,并且您在服务组中绑定了正确的监视器。默认情况下,使用 TCP 监视器。
- 对于 SSL 协议类型自动扩缩,在您创建云配置文件后,负载均衡虚拟服务器或服务组会因缺少证书而关闭。您可以手动将证书绑定到虚拟服务器或服务组。
- 选择“优雅超时”选项以优雅地移除自动扩缩服务器。如果未选择此选项,则在负载下降后,自动扩缩组中的服务器会立即移除,这可能会导致现有连接客户端的服务中断。选择“优雅”并设置超时意味着在缩减事件中,VPX 实例不会立即移除服务器,而是将其中一个服务器标记为“优雅删除”。在此期间,实例不允许新连接到此服务器。现有连接会一直提供服务,直到超时发生,超时后,VPX 实例会移除服务器。
图示: 默认云配置文件页面

-
首次登录后,如果要创建云配置文件,请在 GUI 上转到 System > AWS > Cloud Profile,然后单击“添加”。

创建云配置文件配置页面随即出现。

云配置文件会创建一个 NetScaler 负载平衡虚拟服务器以及一个服务组,其成员是自动扩缩组的服务器。您的后端服务器必须可通过在 VPX 实例上配置的 SNIP 访问。
注意:
从 NetScaler 13.1-42.x 版本开始,您可以在 AWS 中使用相同的自动扩缩组 (ASG) 为不同的服务(使用不同的端口)创建不同的云配置文件。因此,NetScaler VPX 实例在公有云中支持具有相同自动扩缩组的多个服务。

注意:
要在 AWS 控制台中查看自动扩缩相关信息,请转到 EC2 > 仪表盘 > 自动扩缩 > 自动扩缩组。