Репликация ELK и роль узлов данных

Я использую кластер ELK с 3 узлами данных. 2 узла данных также используются в качестве узлов приема данных с использованием двух систем logstash.

Я использую 1 осколок и 0 реплик для одного индекса, который ежедневно создается с примерно 2 миллионами документов на индекс. Текущий размер индекса составляет около 8 ГБ.

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

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

Теперь мой вопрос: хранятся ли разные индексы в разных узлах данных или все данные хранятся во всех узлах данных?

Некоторое время назад произошел сбой одного узла данных, и я удалил его физически и добавил новый узел в кластер. Никакие данные не были потеряны согласно моему пониманию.

мне нужно изменить реплику на 1.?

1 ответ

Индекс разбивается на несколько сегментов, которые можно хранить на нескольких узлах данных.

Если индекс имеет один сегмент и ноль реплик, все его документы будут храниться только на одном узле данных. Если этот узел выходит из строя, весь индекс теряется.

Если у индекса есть один шард и одна реплика, ES обычно помещает их в разные узлы данных, чтобы в случае сбоя одного узла индекс можно было восстановить с другого узла.

Другие вопросы по тегам