У меня проблемы с настройкой ELB для моих серверов.
Я запускаю 2 микроэкземпляра с одной и той же конфигурацией и пытаюсь выполнить балансировку нагрузки. Однако они никогда не проходят проверку работоспособности (путь HTTP-порта 80: «/»).
Как работала проверка работоспособности? Я что-то делаю неправильно?
РЕДАКТИРОВАТЬ:
Я пришел к выводу, что ответ, помимо ответа HTTP 200, должен содержать определенные заголовки. У меня был HTTP 200, возвращенный с моего сервера tomcat, работающего на экземпляре, который не работает, но статическая страница html, обслуживаемая httpd (также возвращающая код 200), работает нормально. Глядя на заголовки, одно из немногих отличий заключалось в том, что заголовок tomcat не содержал тип содержимого. Не знаю, почему это может иметь значение.
Я предполагаю, что он выполняет HTTP-запрос GET по указанному пути "/" каждого из серверов и ищет успешный код HTTP-ответа (200). Можете ли вы успешно отправить запрос GET на http://<backend_server_IP>:80/
через браузер (или инструмент CLI, например wget
или curl
).
Если запрос обслуживается успешно, второй вопрос, который следует спросить: настроили ли вы группу безопасности своих серверов так, чтобы доступ к порту 80 был ограничен определенным адресом источника или подсетью? Если это так, вам нужно добавить группу безопасности ELB в фильтр. Группа всегда называется:
amazon-elb/amazon-elb-sg
Таким образом, вы можете просто добавить это в поле «Источник» в разделе «Группы безопасности» консоли AWS.
У меня та же проблема. Я просто проверяю TCP: 80 как временное решение (которое отлично работает).
Вы должны использовать определенное доменное имя на своем веб-сервере. Или вы настраиваете свой веб-сервер для удовлетворения любого запроса (привязка *) или следования документация.
так что у меня только что работает проверка http, указав ее на статический файл html (в отличие от страницы php).
'/' не работает, несмотря на то, что он возвращает действительный статус http при использовании curl и т. д. '/file.html', однако, проходит проверку работоспособности.