我有一个带有ALB的ecs fargate集群,用于将流量路由到。 docker容器正在监听端口9000。
可以通过https以alb dns名称访问我的容器。这样可行。但是他们不断地从目标组中停止/注销,并且仅在被注册到目标组后立即重新处于不健康状态。
ALB在443上只有一个侦听器。
设置安全组的目的是使sg-alb
允许端口9000到sg-fargate
的出站流量,而sg-fargate
允许端口9000的所有来自sg-alb
的入站流量。
还将目标组设置为使用端口9000。
我不确定是什么问题,还是如何调试它。
一切都用cdk设置。不确定是否相关。
答案 0 :(得分:0)
事实证明,这对于安全组来说不是问题。只是巧合,它在我更改安全组时起作用。
容器开始运行状况检查时,似乎启动速度不够快,无法接受来自alb的连接。
什么帮助了:
healthCheckGracePeriod
更改为两分钟interval
,unhealthyThreshold
,healthyThreshold
的运行状况检查参数此外,在我的应用程序日志中,该服务似乎一次获得了两个运行状况检查请求。默认情况下,unhealthy threshold
设置为2。因此,可能只有在进行一次健康检查后,该服务才被标记为不健康。