Почему, когда я запускаю два экземпляра Elasticsearch, мой индекс почти удваивается? - PullRequest
0 голосов
/ 09 ноября 2018

Когда я запускаю один экземпляр Elasticsearch, я могу индексировать ~ 6000 EPS. На том же сервере я запускаю другой экземпляр Elasticsearch, присоединяю его к кластеру, и моя скорость индекса увеличивается до ~ 10 000. Другими словами, один экземпляр Elasticsearch НЕ использует весь ЦП или дисковый ввод-вывод, которые доступны на сервере. Даже при запуске двух не все ресурсы используются. Кажется, что где-то происходит какое-то удушение, и я бы хотел это изменить. Основное использование этого узла будет индексация.

Один ES на сервере: ~ 6000 EPS

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
          29.45    0.00    3.87    6.26    0.00   60.43

Device:         rrqm/s   wrqm/s     r/s     w/s    rMB/s    wMB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
sdb               0.00   733.13    0.00  800.60     0.00     6.48    16.59     1.75    2.19    0.00    2.19   0.89  71.22

Двойной ES на сервере: ~ 10,0000 EPS

avg-cpu:  %user   %nice %system %iowait  %steal   %idle
          52.87    0.00    5.22    5.41    0.00   36.49

Device:         rrqm/s   wrqm/s     r/s     w/s    rMB/s    wMB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
sdb               0.00  1076.40    0.00  989.40     0.00     9.75    20.18     2.15    2.17    0.00    2.17   0.89  88.32

Может быть, полезные заметки:

  • Оба экземпляра ES являются стандартными установками ES, единственное изменение заключается в увеличении размера JVM.
  • У меня есть журналы журналов, которые выглядят следующим образом:

{ "Отметка времени": "1541290120", "имякомпьютер": "somenamehere", "тип": "сервер", "владелец": "somenamehere"}

  • Диски - это твердотельные накопители в программном обеспечении raid0. Тест записи FIO 512B показывает IOPS = 46,4 КБ, BW = 22,7 МБ / с и для 4 КБ IOPS = 46,1 КБ, BW = 180 МБ / с.
  • Я использую Logstash для обработки файлов из файла и отправки в ES. DocID создается в Logstash. Stock tar.gz logstash yml config, за исключением конфигурации для мониторинга xpack.
  • Я предоставляю отображение заранее, но оно не статично.
  • Система подкачки отключена.
  • Индекс refresh_interval равен 90-м годам.
  • number_of_replicas установлено в 0.
  • _Node Статистика показывает total_indexing_buffer ": 1062404096
  • показатель индекса по данным мониторинга Kibana xpack
  • Elasticsearch 6.4.2 и Logstash 6.4.2

Есть ли где-нибудь ограничитель, который мне нужно изменить?

1 Ответ

0 голосов
/ 09 ноября 2018

сначала, пожалуйста, посмотрите на мой вчерашний ответ, где я объясняю, как работает индексация: ElasticSearch - Как шардинг влияет на производительность индексации? .

Вы видели это (https://www.elastic.co/guide/en/elasticsearch/reference/current/tune-for-indexing-speed.html) и это (https://www.elastic.co/guide/en/elasticsearch/reference/current/tune-for-disk-usage.html) уже?

Я не знаю количество осколков для вашего индекса, но уменьшение количества основных осколков может улучшить вашу скорость индексации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...