У меня есть простой веб-сервис, работающий на AWS Fargate. Он отлично работает локально, но в Fargate он продолжает перезапускаться каждые несколько минут, то есть останавливать и создавать новые задачи. В логах ничего нет.
Есть идеи, что может быть не так / как устранить неполадки?
Проблема заключалась в том, что служба не ответила кодом HTTP. 200
в /
, используется по умолчанию при проверке работоспособности целевой группы балансировщика нагрузки. (Поскольку служба требует аутентификации, она ответила 401.) Это было указано этим событием в задаче ECS:
служба TestService (порт 8081) неисправна в MainCluster-TestService целевой группы из-за (причины сбоя проверки работоспособности с этими кодами: [401]).
Решением для меня было проверить (starts-with? (get-in request [:headers "user-agent"] "") "ELB-HealthChecker/")
и возвращение статуса 200, когда это произошло.