Является ли использование балансировщика нагрузки с ElasticSearch ненужным?
У меня есть кластер из 3 узлов ElasticSearch, работающих на AWS EC2. Эти узлы настраиваются с помощью OpsWorks / Chef. Мое намерение состоит в том, чтобы сделать этот кластер очень упругим и эластичным (узлы могут входить и выходить при необходимости).
Из всего, что я читал об ElasticSearch, кажется, что никто не рекомендует устанавливать балансировщик нагрузки перед кластером; вместо этого кажется, что рекомендуется сделать одну из двух вещей:
Укажите вашему клиенту URL / IP одного узла, позвольте ES сделать балансировку нагрузки за вас и надеяться, что этот узел никогда не выйдет из строя.
Запрограммируйте URL-адреса / IP-адреса ВСЕХ ваших узлов в ваше клиентское приложение, чтобы приложение обрабатывало логику отработки отказа.
Мой опыт в основном связан с веб-фермами, где просто разумно создать огромный пул автономных веб-серверов, добавить ELB перед ними и позволить балансировщику нагрузки решать, какие узлы активны или нет. Почему ES не поддерживает эту же архитектуру?