Добрый день!
Заметил, что если остановить запись в кластер и начать удалять большое количество больших индексов(через wildcard), то это так напрягает дисковую подсистему, что cluster state обновляется с timeout и из-за этого вылетают ноды(мастер их отсоединяет).
Можно ли сделать приоритет обновления cluster state максимальным?
Странно. Какая у вас OS и файловая система?
CentOS 7.7, Ext4, Elasticsearch 7.8.0
Утилизация диска на одной из нод в течение суток
Во время удаления индексов
Ужас какой. Сколько шард в этих индексах, которые вы за один раз удаляете?
7 шард, по одной на ноду + 1 реплика, т.е. всего 14
Удаляю индексы за месяц, т.е. 31 индекс
Размер одного индекса в среднем 350 Гб
Кстати, такое поведение началось с 7.0. В 5,6-ой версиях таких проблем не было
Правда тогда таких больших индексов не было
Я спросил разработчиков, работающих над публикацией состояния кластера. Посмотрим, что они скажут.
Пока могу только посоветовать, увеличить размер индекса или удалять чаще (каждый день, или раз в неделю, например).
Спасибо, ждём ответа и пока будем удалять 1 индекс в день. Возможно настроим ILM
Разработчики спрашивают про сообщения в логах, с которыми master выкинул узлы. Например, что-нибудь вроде
node [...] is lagging at cluster state version [...], although publication of cluster state version [...] completed [...] ago
Именно так. Вот лог с мастера сразу после начала удаления индексов
"файл удалён"
Разработчики были удивлены медленным I/O и сказали, что можно увеличить cluster.follower_lag.timeout
. По умолчанию он 90 сек, и если у вас узлы за это время с состоянием кластера не справляются их выкидывают из кластера, что у вас и происходит.
Установить именно на мастер нодах?
Да..
Спасибо, установил, на днях ещё буду удалять индексы по маске и отпишусь
This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.