自动扩展组应用程序负载平衡器运行状况检查

时间:2016-10-13 02:57:43

标签: amazon-web-services autoscaling

我试图将自动缩放组放在application load balancer(不是经典ELB)后面,并且想知道我的自动缩放组是否可以使用应用程序负载均衡器来检查其实例。

我希望应用程序负载均衡器认为不正常的实例会自动终止,并且自动缩放组会创建一个新实例。

我目前发现的是我的目标群体将实例标记为不健康但我无法让自动缩放组使用ALB健康检查,这可能吗?

尝试在自动缩放组上编辑负载平衡器字段: enter image description here

2 个答案:

答案 0 :(得分:7)

是的,你可以。

负载均衡器检测到运行状况不佳时,它只会停止向该实例发送流量。它不会终止实例。

Auto Scaling 检测到运行状况不佳的实例时,它会终止该实例并自动替换它以维持所需容量。但是,Auto Scaling执行的默认运行状况检查仅查看虚拟机的基础运行状况 - 它无法检查应用程序的运行状况。

幸运的是,您可以在负载平衡和Auto Scaling之间组合运行状况检查。这样,如果Load Balancer检测到运行状况不佳的应用程序,Auto Scaling可以终止并替换该实例。

小心!如果未正确配置运行状况检查,则可能会导致颠簸(不断添加和删除实例)。例如,如果指定的预热期不足,则Auto Scaling可能会在实例完全就绪之前终止该实例。

请参阅文档Health Checks for Auto Scaling Instances

  

如果已将负载均衡器附加到Auto Scaling组,则在确定实例的运行状况时,可以选择让Auto Scaling 包括Elastic Load Balancing运行状况检查的结果

Auto Scaling health check

注意:

  • 使用经典负载均衡器时,Auto Scaling使用Load Balancer中的运行状况检查
  • 使用应用程序负载均衡器时,Auto Scaling使用目标组
  • 中的运行状况检查

应用程序负载均衡器不会出现在"负载均衡器" Auto Scaling组配置中的列表。而是选择适当的目标群体

答案 1 :(得分:4)

我能够通过创建一个自动缩放组重新创建我的问题,但不能在创建时附加目标组。

相反,在自动缩放组有一个正在运行的实例后,我编辑了它的设置,将目标组附加到自动缩放组。当我这样做时,实例将无法在自动缩放组中正确注册为不健康。