Auto Scaling
用户指南
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。点 击 Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

将负载均衡器附加到 Auto Scaling 组

Auto Scaling 与 Elastic Load Balancing 集成,以便您可以将一个或多个负载均衡器附加到现有 Auto Scaling 组。附加负载均衡器后,它自动注册组中的实例,并将传入流量分布到这些实例。要对实例使用 Elastic Load Balancing 运行状况检查以确保流量仅路由到正常实例,请参阅结合使用 ELB 运行状况检查和 Auto Scaling

当您附加负载均衡器时,它进入 Adding 状态,同时注册组中的实例。负载均衡器注册了组中所有实例后,它进入 Added 状态。在至少一个注册实例通过运行状况检查后,它进入 InService 状态。在负载均衡器进入 InService 状态后,Auto Scaling 可以终止和替换报告为运行状况不佳的所有实例。请注意,如果已注册实例均未通过运行状况检查(例如,由于误配置的运行状况检查),负载均衡器无法进入 InService 状态,因此 Auto Scaling 不会终止和替换这些实例。

当分离负载均衡器时,它进入 Removing 状态,同时取消注册组中的实例。请注意,实例在取消注册后仍保持运行。如果启用连接耗尽,则 Elastic Load Balancing 将等待动态请求完成或最大超时到期(以先到者为准),然后再取消注册实例。请注意,连接耗尽对 应用程序负载均衡器 是始终启用的,但对 传统负载均衡器 是必须启用的。有关更多信息,请参阅 传统负载均衡器 指南 中的连接耗尽

Elastic Load Balancing 将有关负载均衡器和 EC2 实例的数据发送给 Amazon CloudWatch。CloudWatch 收集资源的性能数据并以指标的方式呈现这些数据。有关更多信息,请参阅 使用 Amazon CloudWatch 监控 Auto Scaling 组和实例。在将负载均衡器附加到 Auto Scaling 组后,可以创建使用 Elastic Load Balancing 指标自动扩展应用程序的扩展策略。有关更多信息,请参阅 创建具有目标跟踪扩展策略的 Auto Scaling 组

先决条件

开始前,在 Auto Scaling 组所在的区域中创建一个负载均衡器。Elastic Load Balancing 支持两类负载均衡器:传统负载均衡器 和 应用程序负载均衡器。您可以创建任一类型的负载均衡器以附加到 Auto Scaling 组。有关更多信息,请参阅 Elastic Load Balancing 用户指南

通过 传统负载均衡器,实例注册到负载均衡器,通过 应用程序负载均衡器,实例作为目标注册到目标组。当您计划将负载均衡器与 Auto Scaling 组配合使用时,无需将 EC2 实例注册到负载均衡器或目标组。在将负载均衡器或目标组附加到 Auto Scaling 组后,Auto Scaling 会在启动实例时将其注册到负载均衡器或目标组。

使用控制台添加负载均衡器

使用以下过程将负载均衡器附加到现有的 Auto Scaling 组。要在创建 Auto Scaling 组时向 Auto Scaling 组附加负载均衡器,请参阅教程:设置具有扩展和负载均衡功能的应用程序

将负载均衡器附加到组

  1. 打开 Amazon EC2 控制台 https://console.amazonaws.cn/ec2/

  2. 在导航窗格上的 Auto Scaling 下,选择 Auto Scaling Groups

  3. 选择您的组。

  4. Details 选项卡上,选择 Edit

  5. 执行以下任一操作:

    1. [传统负载均衡器] 对于 Load Balancers,选择您的负载均衡器。

    2. [应用程序负载均衡器] 对于 Target Groups,选择您的目标组。

  6. 选择 Save

如果不再需要负载均衡器,请使用以下步骤将其与 Auto Scaling 组分离。

将负载均衡器与组分离

  1. 打开 Amazon EC2 控制台 https://console.amazonaws.cn/ec2/

  2. 在导航窗格上的 Auto Scaling 下,选择 Auto Scaling Groups

  3. 选择您的组。

  4. Details 选项卡上,选择 Edit

  5. 执行以下任一操作:

    1. [传统负载均衡器] 对于 Load Balancers,删除负载均衡器。

    2. [应用程序负载均衡器] 对于 Target Groups,删除目标组。

  6. 选择 Save

使用 AWS CLI 添加负载均衡器

附加 传统负载均衡器

使用以下 attach-load-balancers 命令将指定的负载均衡器附加到 Auto Scaling 组:

Copy
aws autoscaling attach-load-balancers --auto-scaling-group-name my-asg --load-balancer-names my-lb

附加目标组

使用以下 attach-load-balancer-target-groups 命令将指定的目标组附加到 Auto Scaling 组:

Copy
aws autoscaling attach-load-balancer-target-groups --auto-scaling-group-name my-asg --target-group-arns my-targetgroup-arn

分离 传统负载均衡器

使用以下 detach-load-balancers 命令将负载均衡器与 Auto Scaling 组分离(如果不再需要):

Copy
aws autoscaling detach-load-balancers --auto-scaling-group-name my-asg --load-balancer-names my-lb

分离目标组

使用以下 detach-load-balancer-target-groups 命令将目标组与 Auto Scaling 组分离(如果不再需要):

Copy
aws autoscaling detach-load-balancer-target-groups --auto-scaling-group-name my-asg --target-group-arns my-targetgroup-arn