首页 > 解决方案 > AWS ECS Fargate 目标组运行状况检查失败

问题描述

SpringBoot 应用程序在 AWS Fargate 集群的 ECS 服务中作为 ECS 任务运行。ECS 服务是负载平衡的,因此由服务生成的任务会自动注册到目标组。

我可以通过API Gateway => VPC Link => Network ELB => Application ELB => ECS Task调用 Health 端点,如下所示:

邮递员的电话

但是,HealthChecks 似乎失败了,因此,任务被不断取消注册,导致设置完全无法使用。

ECS 服务事件

我已确保将目标组的 HealthCheck 点配置为指向正确的端点 URL,如下所示:

健康检查设置

我还确保 Fargate 任务所属的安全组允许来自应用程序负载均衡器的流量,如下所示:

ECS 任务安全组

但不知何故,HealthChecks 一直失败,任务被取消注册,我很困惑!

非常感谢您的帮助!

标签: amazon-web-servicesspring-bootcontainersaws-api-gatewayaws-fargate

解决方案


问题实际上在于运行状况检查间隔(30 秒)和阈值(2 次检查),这在任务刚刚启动且无法响应 HTTP 请求时过于频繁。

所以,我增加了间隔和阈值,现在一切都很好!


推荐阅读