Настройки операционной системы
Все настройки и рекомендации написаны и протестированы для использования в рекомендуемых операционных системах.
Для большей стабильности и скорости работы Smart Monitor рекомендуется сделать предварительные настройки в операционной системе. В установщик встроена настройка системы и со стороны администратора не требуется никаких действий, за исключением необязательных параметров. В этом разделе приводим все используемые параметры модификации для ознакомления.
Настройка параметров процесса
Все используемые параметры требуют перечитывания параметров systemd и перезагрузки изменяемого процесса. Для этого нужно выполнить две команды в командной строке от root пользователя:
$ systemctl daemon-reload
$ systemctl restart opensearch.service
В данном примере мы перезагрузим процесс opensearch.service
.
Все параметры, представленные в данном разделе, добавляются в блок SERVICE
конфигурационного файла процесса systemd
.
Open File Descriptors
По умолчанию в современных системах, в частности в RHEL, количест во открытых файлов для одного процесса ограничено значением 1024. Для стабильной работы необходимо увеличить это количество до 65536:
LimitNOFILE=65535
Иногда указан ulimits, что переопределяет параметр выше, в этом случае нужно добавить для соответствующих пользователей (например, пользователю opensearch
) в файле /etc/security/limits.conf
следующие строки:
opensearch soft nofile 65535
opensearch hard nofile 65535
Number of Threads
Во время работы OpenSearch использует пулы потоков для разных типов операций. Важно, чтобы была возможность создавать новые потоки когда это необходимо, поэтому значение потоков нужно выставить не меньше 4096.
LimitNPROC=4096
Virtual Memory Address Space
Виртуальное адресное пространство задаёт диапазон операционной системой для процесса, для стабильной работы у сервисов не должно быть ограничений. Задаётся параметром:
LimitAS=infinity
File Size
Операционная система не позволяет создавать или копировать файлы больше заданного размера, обычно используется если требуется ограничить занимаемое место на диске для какого-нибудь процесса. Для наших процессов должно быть без ограничений:
LimitFSIZE=infinity
Max Locked Memory
Максимальный размер используемой процессом оперативной памяти, которое может быть заблокировано до сохранения в файл подкачки. Нужно выставить в безлимитное значение:
LimitMEMLOCK=infinity