AWS Application Load Balancer 向不健康的目标组/实例发送请求

Posted

技术标签:

【中文标题】AWS Application Load Balancer 向不健康的目标组/实例发送请求【英文标题】:AWS Application Load Balancer sends request to unhealthy target groups / instances 【发布时间】:2021-06-30 12:39:41 【问题描述】:

在我的 AWS VPC 中,我有一个应用程序负载均衡器和两个目标组。每个目标组在不同的 az 中只有 1 个实例具有运行状况检查设置。

现在,当我在目标组中的一个实例出现故障时,AWS 正确地将其标记为不健康。但是我的应用程序负载均衡器仍然不断向它发送请求,导致我的应用程序间歇性地工作。

但在文档中明确提到负载均衡器会忽略不健康的实例。

我检查了所有的 LB 和 TG 配置,没有人认为它们不应该被忽略。

它监控其注册目标的健康状况,并路由流量 只针对健康的目标。

https://docs.aws.amazon.com/elasticloadbalancing/latest/application/introduction.html

【问题讨论】:

【参考方案1】:

这条规则有一个例外。来自docs:

如果目标组仅包含不正常的已注册目标,负载平衡器节点会跨其不正常的目标路由请求。

所以基本上,如果所有目标都不健康,ALB 将忽略这一事实并尝试将请求路由到目标。

【讨论】:

我也是这么想的,忘了说我试过把两个实例都放在同一个目标组中。所以基本上一个健康的和一个不健康的,仍然要求两个实例。 ? @botchedDevil 你的截图只显示了一个目标,所以我不确定你指的是哪两个实例? @botchedDevil 还有注销时间。您可能不得不等待更长的时间? 是的,正如我所说,当我将两个实例放在同一个目标组中时,我忘了提及那个案例。我仍然遇到问题 @botchedDevil 请仔细检查。一定还有更多您可能错过或忘记提及的内容。

以上是关于AWS Application Load Balancer 向不健康的目标组/实例发送请求的主要内容,如果未能解决你的问题,请参考以下文章

AWS Application Load Balancer 向不健康的目标组/实例发送请求

AWS - ECS + Application Load Balancer的思考

Socket.io + Nginx + AWS Application Load Balancer 连接在建立之前关闭

AWS CloudFormation:Application Load Balancer 的目标组不适用于多个 EC2 实例

如何使用 .ebextensions 将 Application Load Balancer 固定响应添加到 AWS Elastic Beanstalk

将 https 侦听器添加到 AWS Application Load Balancer 时出现问题