Настройка системных параметров
Место для настройки системных параметров зависит от того, какой пакет вы использовали для установки Elasticsearch и какой операционной системой вы пользуетесь.
При использовании пакетов .zip или .tar.gz, системные параметры можно настроить:
- Временном порядке с помощью
ulimit. - Постоянно в
/etc/security/limits.conf.
При использовании RPM или Debian пакетов, большинство системных настроек задаются в файле конфигурации системы. Однако, системы, которые используют systemd, требуют, чтобы системные ограничения были указаны в файле конфигурации systemd.
ulimit
В системах Linux можно использовать ulimit для временного изменения ограничений ресурсов. Обычно ограничения нужно установить как root перед переключением на пользователя, который будет запускать Elasticsearch. Например, чтобы установить количество открытых файловых дескрипторов (ulimit -n) на 65 536, можно выполнить следующее:
sudo su ulimit -n 65535 su elasticsearch
| Стать | |
| Изменить максимальное количество открытых файлов. | |
| Стать пользователем |
Новое ограничение применяется только в течение текущей сессии.
Все текущие применённые ограничения можно просмотреть с помощью ulimit -a.
/etc/security/limits.conf
В системах Linux постоянные ограничения для определенного пользователя можно установить, отредактировав файл /etc/security/limits.conf. Чтобы установить максимальное количество открытых файлов для пользователя elasticsearch в 65 535, добавьте следующую строку в файл limits.conf:
elasticsearch - nofile 65535
Это изменение вступит в силу только при следующей новой сессии пользователя elasticsearch.
Ubuntu и limits.conf
Ubuntu игнорирует файл limits.conf для процессов, запущенных пользователем init.d. Для активации файла limits.conf, отредактируйте файл /etc/pam.d/su и раскомментируйте следующую строку:
# session required pam_limits.so
Файл конфигурации sysconfig
При использовании RPM или Debian пакетов, системные параметры и переменные среды могут быть заданы в файле конфигурации системы, который находится по адресу:
| RPM | |
| Debian | |
Однако, для систем, использующих systemd, системные ограничения необходимо указать через systemd.
Конфигурация systemd
При использовании RPM или Debian пакетов на системах, использующих systemd, системные ограничения должны быть указаны через systemd.
Файл сервиса systemd (/usr/lib/systemd/system/elasticsearch.service) содержит ограничения, которые применяются по умолчанию.
Для их переопределения добавьте файл с именем /etc/systemd/system/elasticsearch.service.d/override.conf (в качестве альтернативы, вы можете запустить sudo systemctl edit elasticsearch, который автоматически откроет файл в вашем предпочтительном редакторе). Внесите необходимые изменения в этот файл, например:
[Service] LimitMEMLOCK=infinity
После завершения выполните следующую команду для перезагрузки единиц:
sudo systemctl daemon-reload
© 2023-2025 Elasticsearch
As of September 2024, Elasticsearch is available under a choice of three licenses: the Server Side Public License (SSPL), the Elastic License, or the AGPLv3 (OSI approved).
Elasticsearch and the Elasticsearch logo are trademarks of Elasticsearch B.V., registered in the U.S. and in other countries.
https://www.elastic.co/guide/en/elasticsearch/reference/7.17/setting-system-settings.html