ElasticSearch Cluster Design Help - Узлы данных - PullRequest
0 голосов
/ 06 июля 2018

Я ознакомился с дизайном ES Cluster и начал разрабатывать кластер, который нам нужен. Пожалуйста, кто-нибудь может прояснить некоторые вещи, которые мне до сих пор не ясны?

Итак, мы хотим начать с 3 серверов.

В начале у нас будет все три в качестве Master, Data и Ingest с минимум двумя master. В основном это означает, что мы придерживаемся значений по умолчанию.

Вопрос 1: что такое узлы данных? Реплицируется ли полный индекс через другие узлы данных? Поэтому, если один из них выходит из строя, в нашем случае третий должен быть повышен до главного сервера, и кластер должен функционировать.

Нашел эту ссылку Осколки и реплики в Elasticsearch , и это объясняет, что такое узлы данных. Таким образом, в принципе, если в нашем индексе 12 сегментов, возможно, ES будет хранить 4 основных сегмента на каждом узле данных и 8 реплик. Это правильно?

Вопрос 2: Исходя из этого, можем ли мы добавить больше серверов для работы в качестве узлов данных, узлов приема и т. Д.

Вопрос 3: Мы настроили балансировщик нагрузки перед узлами ES, является ли это рекомендуемым способом доступа к кластерам ES через 9200. При проглатывании следует использовать этот адрес, и он будет случайным образом направлен на узел загрузки. При запросе он должен направляться на случайный узел ES, который может обрабатывать поиски.

1 Ответ

0 голосов
/ 06 июля 2018

Что такое узлы данных?

Диски для осколков.

Реплицируется ли полный индекс через другие узлы данных?

Да, реплика также означает доступность, понимание концепции осколков - ключ к пониманию этого и не запутайтесь.

в нашем случае третий должен быть повышен до главного сервера, и кластер должен функционировать.

Да, читайте о зеленом, желтом и красном статусах, в этом случае он изменится с зеленого на желтый, это означает, что все еще функционирует, но требуются действия, но читайте о «правомочности мастера», а также избегайте расщепления мозга, очень важно. https://www.elastic.co/guide/en/elasticsearch/reference/current/modules-node.html#master-node

Имея это в качестве отправной точки, можем ли мы добавить больше серверов для работы в качестве узлов данных, узлов приема и т. Д.

столько, сколько вы хотите, каково требование к приложению? высокий читать низкий писать? наоборот? равно? определить, как вы хотите увеличить кластер в зависимости от варианта использования.

Вопрос 3: Мы настроили балансировщик нагрузки перед узлами ES, является ли это рекомендуемым способом доступа к кластерам ES через 9200. При проглатывании следует использовать этот адрес, и он будет случайным образом направлен на узел загрузки. При запросе он должен направляться на случайный узел ES, который может обрабатывать поиски.

Если это, например, nginx, он работает, потому что я это сделал, у меня есть четкое понимание концепции ролей узлов, например, «координирующий узел» будет обрабатывать некоторый поток процесса, который могут выполнять некоторые запросы требуют и nginx не знает.

IMO теперь, когда у вас есть экземпляры, это отличная возможность для вас учиться на собственном опыте и экспериментировать с ними, поэтому перенесите конфиги, попробуйте воспроизвести проблемы, которые могут возникнуть в вашем приложении, и посмотрите, что произойдет, ага! моменты наступят, и здесь вы получите полное понимание.

...