По какой-то причине ELB неправильно пересылает запросы моему экземпляру на EC2.
Моя установка - это просто micro
экземпляр с nginx
/node
, прослушивание портов 80
и 443
. Экземпляр отлично получает запросы проверки работоспособности через ELB.
10.185.1.190 - - [01 / Oct / 2013: 15: 26: 18 +0000] "GET / HTTP / 1.1" 302 40 "-" "ELB-HealthChecker / 1.0"
10.185.1.190 - - [01 / Oct / 2013: 15: 26: 48 +0000] "GET / HTTP / 1.1" 302 40 "-" "ELB-HealthChecker / 1.0"
10.185.1.190 - - [01 / Oct / 2013: 15: 27: 18 +0000] "GET / HTTP / 1.1" 302 40 "-" "ELB-HealthChecker / 1.0"
10.185.1.190 - - [01 / Oct / 2013: 15: 27: 48 +0000] "GET / HTTP / 1.1" 302 40 "-" "ELB-HealthChecker / 1.0"
10.185.1.190 - - [01 / Oct / 2013: 15: 28: 18 +0000] "GET / HTTP / 1.1" 302 40 "-" "ELB-HealthChecker / 1.0"
10.185.1.190 - - [01 / Oct / 2013: 15: 28: 48 +0000] "GET / HTTP / 1.1" 302 40 "-" "ELB-HealthChecker / 1.0"
10.185.1.190 - - [01 / Oct / 2013: 15: 29: 18 +0000] "GET / HTTP / 1.1" 302 40 "-" "ELB-HealthChecker / 1.0"
10.185.1.190 - - [01 / Oct / 2013: 15: 29: 48 +0000] "GET / HTTP / 1.1" 302 40 "-" "ELB-HealthChecker / 1.0"
10.185.1.190 - - [01 / Oct / 2013: 15: 30: 18 +0000] "GET / HTTP / 1.1" 302 40 "-" "ELB-HealthChecker / 1.0"
Однако запрос напрямую через браузер вообще не работает.
Следует отметить, что мой экземпляр доступен напрямую, через его IP. SG настроен на разрешение любых подключений к обоим портам, а ELB просто передает их экземпляру через прокси.
ELB сообщает, что экземпляр Out of Service
.
Проверка здоровья:
Ping Target: HTTP:80/
Timeout: 5 seconds
Interval: 30 seconds
Unhealthy Threshold: 2
Healthy Threshold: 10
Ни HTTP, ни HTTPS не работают с ELB, и оба работают с экземпляром.
Очевидно, в моем nginx
logs Я ничего не получаю при запросе экземпляра ELB. curl
отчеты:
HTTP / 1.1 503 Служба недоступна: внутренний сервер загружен
Halp
Ваш сервер возвращает код ответа 302 (перенаправление), а ELB ищет код ответа 200, чтобы рассмотреть экземпляр в обслуживании. Вам нужно проверить работоспособность страницы, которая не перенаправляется.