Экземпляр EC2, подключенный с ALB, показывает нездоровый статус на порту 3000 - PullRequest
0 голосов
/ 07 августа 2020

Я подключил экземпляр EC2 с балансировщиком нагрузки приложения . В моем экземпляре EC2 выполняется приложение response js на ПОРТ 80, а API-интерфейсы NODE JS работают на ПОРТ 3000. Я хочу запускать API-интерфейсы с доменным именем вместо IP-адреса

Ниже это мои зарегистрированные цели -

Зарегистрированные цели ALB

Обновление - Ниже приведены сведения о моем приложении и экземпляре -

  1. EC2 - Ubuntu 18.04 + Apache веб-сервер
  2. Внешний интерфейс - нормально работает на порту 80 (https://www точка mydomain точка com)
  3. API - написано на NODE JS, работает на PORT 3000 (так что в основном я пытаюсь запустить https://www dot mydomain dot com: 3000)

API работает нормально с IPv4 http://x.x.x.50: 3000

Может ли кто-нибудь помочь мне разобраться в этой ошибке? Спасибо!

1 Ответ

0 голосов
/ 07 августа 2020

Из вашего вопроса я понял, что ваше приложение nodejs работает на x.x.x.50:3000. Таким образом, вы сможете получить доступ к своему приложению, нажав http://x.x.x.50:3000

Но,

Я предполагаю, что ваш запрос дает ответ, когда вы нажимаете как ,

example : http://x.x.x.50:3000/data/ or http://x.x.x.50:3000/employee/1

Фактическая проблема заключается в том, что когда ELB нажимает http://x.x.x.50: 3000 , он возвращает статус 404, поскольку у вас нет конечной точки, которая обслуживает / (на основе моих предположений о вашем бэкэнд-приложении)

Если у вас уже была конечная точка /, проверьте, какой код статуса он возвращает и соответствует ли он тому, который указан в целевой группе ELB

Если вы проверите свою целевую группу в AWS, вы увидите, что ваш ожидаемый код состояния равен 200 (по умолчанию), если ELB получит любой другой код состояния, отличный от 200, он будет считать экземпляр нездоровым .

Обратите внимание, что вы можете изменить этот код состояния на любой код, возвращаемый конечной точкой проверки работоспособности. То же самое применимо и для URL-адреса проверки работоспособности.

...