Добавление Elasticsearch с включенной функцией x-pack за балансировщиком нагрузки приложений AWS, что приводит к сбою проверки работоспособности из-за отсутствия аутентификации

Я использовал балансировщик нагрузки приложений (ALB) на моем узле elasticsearch и настроил проверку работоспособности, как показано на изображении, и проверка работоспособности работала нормально, и я смог связаться с моим ES с помощью балансировщика нагрузки.

введите здесь описание изображения

Теперь я добавил безопасность x-pack, которая требует даже проверки работоспособности для передачи пользователя (эластичного суперпользователя и его пароля) в моем случае, и после этого проверка работоспособности перестала работать, поскольку ALB не может пройти базовую аутентификацию и из-за этой проблемы Health check не работает, и, как показано на изображении, ALB постоянно отменяет регистрацию Elasticsearch, что, в свою очередь, вызывает остановку / запуск моего докера Elasticsearch.

Примечание: - Я использую ES 7.7, если это имеет отношение к этому вопросу.

введите здесь описание изображения


person Community    schedule 02.06.2020    source источник
comment
Чем бы Вы хотели заняться? Удалить проверку работоспособности? Вы можете изменить код статуса на любой, который вы получите, когда получите отказ.   -  person Marcin    schedule 02.06.2020
comment
@Marcin еще раз спасибо за ваш комментарий, я не хочу удалять проверку работоспособности, но я думаю, что безопасно изменить его на 401, поскольку это означает, что ES отправляет 401 Unauthorized, что означает, что он не отключен ... в идеальном случае я хочу получить 200, у меня есть суперпользователь, и я могу использовать его в случае HC, если есть способ передать его.   -  person    schedule 02.06.2020
comment
Я не думаю, что вы можете заставить ALB выполнить действие входа в вашу службу для выполнения HC. Возможно, вы могли бы настроить прокси для проверки работоспособности, если вы не хотите использовать 401. Например: ALB- ›nginx-› проверка работоспособности, но я не уверен, как это может работать.   -  person Marcin    schedule 02.06.2020
comment
хм, настройка прокси-сервера было бы излишним, я пытаюсь использовать 401, и если он сработает, все будет в порядке, напишите ответ, и я проголосую за него и приму его   -  person    schedule 02.06.2020


Ответы (1)


Судя по комментариям, проблема вызвана тем, что проверки работоспособности ALB не работают, поскольку неудачная аутентификация возвращает 401 HTTP-код, а не 200.

Решение состоит в том, чтобы использовать код 401 в качестве ожидаемого кода для проверки работоспособности. Сбой аутентификации по-прежнему означает, что ES запущен и работает, а не то, что ES отказал.

person Marcin    schedule 02.06.2020