[#] Gobetween Exec discovery+ Elasticsearch. L4 балансировка с Data Node Discovery
habrabot(difrex,1) — All
2016-06-26 15:00:03


## Зачем все это нужно



Все кто использовал Elasticsearch каластер для своих нужд (особенно для логирования и как основную базу данных) на больших нагрузках сталкивался с проблемами консистентности и масштабируемости. Когда требуется распараллелить нагрузку на Elasticsearch обычно применялись статические решения то типу [NGINX+Elasticsearch][1]. Это позволяет распараллелить нагрузку, но выглядит не слишком гибко. Особенно если учесть что ноды могут сами выпадать из кластера и простой хелсчек покажет что все отлично, а на самом деле нода перегружена, исключена из кластера. В любом случае хотелось бы иметь данные о состоянии кластера из первых рук, а не довольствоваться простыми проверками.
Итак, приступим к построению балансировки .



## Как мы будем это делать



В данном случае мы будем использовать [CAT node API][2], которое является частъю мощьнейшего [CAT API][3], который является инструментом поиска заголовков по Elasticsearch клстреру.
Мы будем использовать только [Gobetween][4] и встроенные механизмы Elasticsearch для балансировки записи /чтения [СRUD][5] (DATA) нод при произвольном количестве/статусе нод в кластере.

[Читать дальше →][6]

[1]: https://www.nginx.com/blog/nginx-elasticsearch-better-together/
[2]: https://www.elastic.co/guide/en/elasticsearch/reference/current/cat-nodes.html
[3]: https://www.elastic.co/guide/en/elasticsearch/reference/current/cat.html
[4]: https://gobetween.io
[5]: https://en.wikipedia.org/wiki/Create,_read,_update_and_delete
[6]: https://habrahabr.ru/post/304096/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut