ElasticSearch: время ожидания индексации истекает, если number_of_replicas больше 1

#elasticsearch

#эластичный поиск

Вопрос:

Я экспериментирую с масштабированием ElasticSearch и хочу увеличить количество реплик, но я не могу ничего индексировать, если значение number_of_replicas установлено выше 1.

Я смог воспроизвести проблему с новой установкой ES:

  • Загрузите и распакуйте файлы
  • Измените config/elasticsearch.yml файл и установите index.number_of_replicas значение 2
  • Беги bin/elasticsearch
  • Индексировать тестовый документ: curl -XPUT 'localhost:9200/test/example/1' -d '{body:"Hello"}'
  • Тайм-аут

Я использую последнюю версию ES (1.2.1) на Mac OSX 10.9.2. Я также запускал ES на виртуальной машине Ubuntu Wheezy, но там я столкнулся с той же проблемой. Установка количества реплик на основе индекса (с использованием PUT запроса) имеет тот же эффект. Это заставляет меня чувствовать, что я упускаю что-то фундаментальное.

Комментарии:

1. Какая версия Java и поставщик?

2. Ах, и вам нужно больше одного узла, если установить реплику выше 1. ES — это распределенная система, поэтому обычно вы используете более одного узла (узлы могут быть на разных аппаратных средствах, но также могут находиться на одном сервере)

3. salyh: java version "1.7.0_55" Java(TM) SE Runtime Environment (build 1.7.0_55-b13) Java HotSpot(TM) 64-Bit Server VM (build 24.55-b03, mixed mode)

4. салих: Неужели? НЕУЖЕЛИ? Я добавил еще несколько узлов, и это просто сработало.. теперь я чувствую себя очень глупо, но есть ли где-нибудь журнал ошибок, который мог бы сообщить мне об этом?

5. журнал / папка содержит журналы ошибок (и по умолчанию консоль — если вы запускаете ее в режиме переднего плана — также показывает сообщения об ошибках. Также всегда полезно использовать инструмент мониторинга кластера ES, например elastichq.org

Ответ №1:

Включите больше узлов ES (см. Мой второй комментарий).

Комментарии:

1. Забавно, что это последнее, что, как я думал, решит проблему. Спасибо: D