Предотвратить гибель эластичного поиска от убийцы ООМ

Я новичок вasticsearch, и я предполагаю, что способ, которым я настроил свой сервер, является неоптимальным, так как я сталкиваюсь с проблемой убийцы OOM, убивающей процесс Elasticsearch / Java через некоторое время. Этого, вероятно, можно избежать, если бы сервер настроен правильно. Не могли бы вы указать, что в конфигурации необходимо изменить для бесперебойной работы ES?

На обоих этих серверах (которые кластеризованы) я иногда возвращаюсь к тому, что процесс ES / java был убит.

Вот текущая настройка:

===========================================

Сервер 1 (Frontend server) Этот сервер имеет 8 ГБ оперативной памяти, а также работает gunicorn, Flask и Django

elasticsearch.yml:

node.master: true
node.data: true
bootstrap.mlockall: true

/ И т.д. / по умолчанию / elasticsearch

ES_HEAP_SIZE=5g
MAX_OPEN_FILES=65535
MAX_LOCKED_MEMORY=unlimited

===========================================

Сервер 2 (выделенный сервер Elasticsearch) с 8 ГБ ОЗУ и другими запущенными приложениями

elasticsearch.yml:

node.master: false
node.data: true
bootstrap.mlockall: true

/ И т.д. / по умолчанию / elasticsearch

ES_HEAP_SIZE=5g
MAX_OPEN_FILES=65535
MAX_LOCKED_MEMORY=unlimited

===========================================

В файлеasticsearch.yml я вижу строку с надписью "You should also make sure that the Elasticsearch process is allowed to lock the memory, eg. by using ulimit -l unlimited«Но я ничего не сделал для этого. Нужно ли здесь что-то предпринимать?

Если я попытаюсь набрать это, я получу ...

myuser@es1:~$ sudo ulimit -l unlimited
sudo: ulimit: command not found

Ответы на вопрос(2)

Ваш ответ на вопрос