Amazon EC2 Auto Scaling
用户指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

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

Amazon EC2 Auto Scaling 与 Elastic Load Balancing 集成,以便您可以将一个或多个负载均衡器附加到现有 Auto Scaling 组。附加负载均衡器后,它自动注册组中的实例,并将传入流量分布到这些实例。

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

当分离负载均衡器时,它进入 Removing 状态,同时取消注册组中的实例。实例在取消注册后仍保持运行。如果启用连接耗尽,则 Elastic Load Balancing 将等待动态请求完成或最大超时到期(以先到者为准),然后再取消注册实例。在默认情况下,已为 Application Load Balancer 启用 Connection Draining,但它必须为 Classic Load Balancer 启用。有关更多信息,请参阅 Classic Load Balancer 用户指南 中的连接耗尽

先决条件

开始前,在 Auto Scaling 组所在的 AWS 区域中创建一个负载均衡器。Elastic Load Balancing 支持三种类型的负载均衡器:Application Load Balancer、Network Load Balancer 和 Classic Load Balancer。您可以将任一类型的负载均衡器附加到 Auto Scaling 组。有关更多信息,请参阅 Elastic Load Balancing 类型

要配置 Auto Scaling 安全组以使用 Elastic Load Balancing 运行状况检查,请参阅向 Auto Scaling 组添加 Elastic Load Balancing 运行状况检查

添加负载均衡器(控制台)

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

将负载均衡器附加到组

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

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

  3. 从列表中选择一个现有的组。

  4. Details 选项卡上,选择 Edit

  5. 请执行下列操作之一:

    1. [Classic Load Balancer] 对于负载均衡器,选择您的负载均衡器。

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

  6. 选择 Save

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

将负载均衡器与组分离

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

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

  3. 从列表中选择一个现有的组。

  4. Details 选项卡上,选择 Edit

  5. 请执行下列操作之一:

    1. [Classic Load Balancer] 对于负载均衡器,删除负载均衡器。

    2. [应用程序/网络负载均衡器] 对于目标组,请删除目标组。

  6. 选择 Save

添加负载均衡器 (AWS CLI)

附加 传统负载均衡器

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

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

为应用程序负载均衡器或网络负载均衡器附加目标组

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

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

分离 传统负载均衡器

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

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

为应用程序负载均衡器或网络负载均衡器分离目标组

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

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