На сервере с высокой недогрузкой зачастую может возникнуть ошибка Too many open file, этим грешит elasticsearch, так как при работе открывает множество файлов.
Проблема связана с тем что система исчерпала ресурс на максимальное количество открытых файлов.
Проверить максимальный лимит открытых файлов (max open file limit)
Проверить текущий лимит возможно командой:
1 | cat /proc/sys/fs/file-max |
пример:
1 2 | cat /proc/sys/fs/file-max 518144 |
Временное увеличение лимита максимально открытых файлов
Временно увеличить лимит, до перезагрузки сервера, можно следующими командами
1 | sysctl -w fs.file-max=1280000 |
1 | echo "128000000" > /proc/sys/fs/file-max |
Постоянное увеличение лимита максимально открытых файлов
Для постоянного (перманентного) увеличения лимита, необходимо добавить соответствующий параметр в /etc/sysctl.conf
1 | fs.file-max=1280000 >> /etc/sysctl.conf |
так же возможно увеличить лимит для конкретного пользователя, добавить в файл /etc/security/limits.conf соответствующие параметры
1 2 | root hard nofile 128000000 root soft nofile 128000000 |