AWS ECS 动态端口设置中的运行状况检查失败

Health check failed in dynamic port set-up in AWS ECS

当我使用动态端口设置时,我的 ECS 设置在运行状况检查中一直失败。

这是我的设置:

我有一个使用端口 10440 的 spring-boot Web 应用程序。因此在我的任务定义中,我使用端口 0 作为我的主机端口以启用动态移植,并使用 10440 作为我的容器端口。我的服务中有两个 2 ec2 实例和 运行 2 任务。但是由于健康检查失败,我的任务一直在终止。

截图:

-Task event logs

-Unhealthy regitered ec2 instances in target group

注意:如果将我的主机端口也更改为 10440,则设置工作正常。但是我不能 运行 比 ec2 实例数量更多的任务。

截图: Health registered ec2 instance in target group

我希望有人能提供帮助,这样我就可以在 2 个实例中将我的 ECS 设置为 运行 更多任务。谢谢!

确保目标组的健康检查端口设置为"traffic port"。

我刚弄清楚问题。执行

aws elbv2 describe-target-health --target-group-arn

我发现健康检查有超时错误,所以我只是在健康检查设置中延长超时。

我遇到了同样的问题,了解到在 ECS 集群安全组中,ALB sg 不允许动态端口(所有 TCP 端口)。一旦允许流量端口应该能够连接到 EC2 实例,那么健康检查将通过