我在 AWS Fargate 上运行了一个简单的 Web 服务。它在本地运行良好,但在 Fargate 上,它每隔几分钟就会重新启动,即停止并创建新任务。日志中没有任何内容。
知道可能是什么问题/如何排除故障吗?
答案1
问题在于,服务未响应 HTTP 代码,默认情况200
下/
,负载均衡器目标组的健康检查会使用该代码。(由于服务需要身份验证,因此它响应了 401。)ECS 任务上的此事件表明了这一点:
目标组 MainCluster-TestService 中的服务 TestService(端口 8081)运行不正常,原因是(运行状况检查失败,代码为:[401])。
(starts-with? (get-in request [:headers "user-agent"] "") "ELB-HealthChecker/")
对我来说,解决方案是检查并返回状态 200。