AWS Elasti c Beanstalk - Как быстро проверить, работает ли не веб-контейнер - PullRequest
0 голосов
/ 22 января 2020

У меня есть docker контейнер с пакетным приложением, запущенным на Elasti c Beanstalk. По умолчанию он запускает проверки работоспособности на localhost:80/. Однако, так как мой контейнер не является веб-приложением, он выдает эту ошибку:

sqsd находится в режиме сбоя (12 часов go): проверка работоспособности службы завершилась ошибкой: соединение отказано - соединение (2 ) для порта «localhost» 80.

Это приводит к тому, что работоспособность становится КРАСНОЙ, что затрудняет проверку работоспособности моего контейнера, поскольку мне нужно запросить и загрузить последние журналы и начать читать их, когда Я просто хочу знать, работает ли контейнер. Вот так выглядит моя панель управления:

enter image description here

А вот так выглядит раздел сведений о состоянии здоровья:

enter image description here

Вы видите? Все выглядит так, будто мой контейнер испорчен, когда на самом деле работает правильно. Один из способов проверить состояние - это напрямую go к консоли ECS, но я подумал, что Elasti c Beanstalk должен был абстрагировать меня от ECS.

Как я могу быстро проверить в консоли Elasti c Beanstalk, если мой контейнер работает? Я имею в виду, что я проверил состояние здоровья, что-то может быть запущено и все равно быть нездоровым. Но было бы неплохо иметь работающий статус рядом с состоянием здоровья

1 Ответ

1 голос
/ 22 января 2020

У меня нет репутации, поэтому я не могу комментировать и могу только предложить что-то здесь.

Я предположил, что вы, вероятно, развернули что-то работоспособное, не открывающее ни HTTP, ни HTTPS-порты (это может быть WEB-сокет, asyn c worker et c.).

EBS восстанавливает работоспособность проверяет через ELB (балансировщик нагрузки).

Go в конфигурацию> балансировщик нагрузки> проверки работоспособности и двойная проверка правил.

В качестве обходного решения вы можете выставить случайный порт TCP на образе docker и поставить работоспособность проверьте правило на основе этого TCP-порта в конфигурации балансировщика нагрузки.

Это работает, но, очевидно, это грязно!

...