Имеет ли смысл запускать многоузловой кластер Elasticsearch на одном хосте? - PullRequest
0 голосов
/ 26 ноября 2018

Что я получу, запустив несколько узлов на одном хосте?Я не получаю доступность, потому что, если хост не работает, весь кластер идет с ним.Имеет ли смысл в отношении производительности?Разве один экземпляр ES не потребляет от хоста столько ресурсов, сколько ему нужно?

Ответы [ 2 ]

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

Обычно нет, но если у вас есть машины со смешными объемами ЦП и памяти, вы можете использовать их для правильного использования доступных ресурсов.Как правило, избегать больших куч с помощью Elasticsearch - хорошая вещь, так как сбор мусора на больших кучах может стать проблемой, и в любом случае, если размер превышает 32 ГБ, вы теряете преимущество сжатия указателей.В основном вам не нужны большие кучи с ES.Большая часть памяти, которую использует ES, хранится в файлах с отображенной памятью, которая опирается на кэш ОС.То есть, если вы не назначаете память куче, это не означает, что она не используется: больше памяти для кэширования означает, что вы сможете обрабатывать большие или больше шардов.

Таким образом, если вы запускаете больше узлов, это преимущество исчезает и вы тратите память на избыточные кучи, и у вас будут узлы, конкурирующие за ресурсы.В большинстве случаев вы должны основывать эти решения на фактическом использовании памяти, кэша и процессора, конечно.

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

Это зависит от вашего хоста и того, как вы настраиваете свои узлы.

Например, Elastic рекомендует выделять до 32 ГБ ОЗУ (из-за того, как Java сжимает указатели) для эластичного поиска и иметь еще 32 ГБ для операционной системы.(в основном для кэширования на диске).

Предполагая, что у вас более 64 ГБ оперативной памяти на вашем хосте, скажем, 128, имеет смысл иметь два узла, работающих на одной машине, каждый из которых настроен на 32 ГБ оперативной памяти каждый иоставив еще 64 для операционной системы.

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