Устранение неполадок AWS Fargate Healthcheck для пружинного привода

У меня есть приложение для весенней загрузки с /health доступной конечной точкой, развернутое в AWS ECS Fargate. Иногда контейнер останавливается с сообщением Task failed container health checks. Иногда бывает раз в день, иногда раз в неделю, может быть, в зависимости от нагрузки. Это команда проверки работоспособности, указанная в Task Definition:

CMD-SHELL,curl -f http://localhost/actuator/health || exit 1

У меня вопрос, как устранить неполадки, которые AWS получает, если проверка работоспособности не удалась.


person smftr    schedule 08.03.2020    source источник
comment
Ответ на этот вопрос был дан в этой другой ветке.   -  person Miguel Suárez    schedule 01.07.2020


Ответы (1)


На случай, если кто-то еще попадет сюда из-за неудачных проверок работоспособности контейнеров (не то же самое, что проверки работоспособности ELB), AWS предоставляет некоторые основной совет:

  • Убедитесь, что команда работает изнутри контейнера. В моем случае я не установил curl в образ контейнера, но когда я тестировал его извне контейнера, он работал нормально, что заставило меня думать, что он работает.
  • Проверьте журналы задач в CloudWatch

Если проверки только иногда дают сбой (особенно под нагрузкой), вы можете попробовать увеличить тайм-аут, а также проверить метрики задачи (использование памяти и ЦП). Сборка мусора может привести к приостановке задачи, и если все виртуальные ЦП заняты обработкой других запросов, проверка работоспособности может быть отложена, поэтому вам может потребоваться выделить больше памяти и / или виртуальных ЦП для задачи.

person John Velonis    schedule 10.03.2021