使用 aws Autoscaling 组直接附加应用程序负载均衡器/网络负载均衡器

Posted

技术标签:

【中文标题】使用 aws Autoscaling 组直接附加应用程序负载均衡器/网络负载均衡器【英文标题】:Attaching Application load balancer / Network Load balancer directly with aws Autoscaling group 【发布时间】:2019-10-13 20:51:27 【问题描述】:

如何将 aws Application Load Balancer 和 Network Load Balancer 直接与自动扩展组 (ASG) 连接? 在 AWS 控制台中,只有 Classic Load Balancer 可用的选项。 我想要的是,每当在自动缩放组中启动实例时,它都会开始直接向 Application/Network 负载均衡器报告,而不是手动输入 target group 中的每个实例。 p>

【问题讨论】:

docs.aws.amazon.com/en_us/autoscaling/ec2/userguide/… 【参考方案1】:

自动缩放组对于经典负载均衡器和目标组具有唯一的直接选项。您可以在目标组中启动实例并选择自动缩放组的选项。最后,将您的目标组附加到 ALB。

【讨论】:

【参考方案2】:

在使用 ALB 和 NLB 时,您需要创建目标组以连接 EC2 或 ASG。 所以,你需要 ALB/NLB

在目标组中,您指定要指向的实例/ips 和端口。

【讨论】:

我想像经典负载均衡器一样直接将 ALB 负载均衡器与自动缩放组连接(不管理目标组中的 EC2 实例)。当我们将负载均衡器直接添加到自动缩放组时,它会在目标组中自行启动(实例),我们会自行添加实例。【参考方案3】:

ALB 和网络负载均衡器只能通过目标组/使用 ec2 映射...而不是像经典负载均衡器那样直接添加。

创建一个目标组并按照以下步骤操作;

Open the Amazon EC2 console at https://console.aws.amazon.com/ec2/.

On the navigation pane, under Auto Scaling, choose Auto Scaling Groups.

Choose an existing group from the list.

On the Details tab, choose Edit.

Do one of the following:

[Classic Load Balancers] For Load Balancers, choose your load balancer.

[Target groups] For Target Groups, choose your target group.

Choose Save.

【讨论】:

我想像经典负载均衡器一样直接将 ALB 负载均衡器与自动缩放组连接(不管理目标组中的 EC2 实例)。当我们将负载均衡器直接添加到自动缩放组时,它会自动启动(实例),而在目标组中我们会自行添加实例。 ALB 和网络负载均衡器只能通过目标组添加......而不是像经典负载均衡器那样直接添加。 我解决了我的问题。我在问题中被问到了什么? 你能告诉我你是怎么做到的吗?谢谢 当Auto Scaling Group中运行的实例只提及ASG中的ALB Target Group时,实例会自动添加到已注册的实例中(在ALB Target Group中)。无需手动添加到已注册的实例(Target Group)中自动过程。

以上是关于使用 aws Autoscaling 组直接附加应用程序负载均衡器/网络负载均衡器的主要内容,如果未能解决你的问题,请参考以下文章

AWS CodeDeploy 与 Spot 和按需实例混合的 Autoscaling 启动模板

CloudWatch SQS 指标问题上的 AWS Autoscaling

AWS AutoScaling,缩减 - 等待进程终止

Terraform aws_autoscaling_group 启动的 AWS EC2 实例的动态命名

具有 Auto Scaling 与弹性容器服务 (ECS) 的 AWS EC2 - Docker

我们可以从 AWS 的 Auto Scaling 组停止 EC2 实例吗