Перейти к содержанию

Too many open files

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

Описание

При большом количестве камер (>70), вы можете столкнуться с ограничениями Inotify, тогда при добавлении камеры в логе Docker-контейнера (в случае executor=docker) или самого сервера (в случае executor=exec) можно увидеть сообщение:

Error: too many open files

По умолчанию в Ubuntu выставлены следующие параметры:

sysctl fs.inotify

fs.inotify.max_queued_events = 16384
fs.inotify.max_user_instances = 128
fs.inotify.max_user_watches = 524288

ulimit -n
10240

grep NOFILE /etc/systemd/system.conf
#DefaultLimitNOFILE=1024:524288

Решение

Чтобы увеличить лимиты, добавьте в файл /etc/sysctl.conf следующие параметры:

sudo su
cat << EOF >> /etc/sysctl.conf
fs.inotify.max_queued_events = 16384
fs.inotify.max_user_instances = 10240
fs.inotify.max_user_watches = 524288
EOF

в файле /etc/systemd/system.conf:

DefaultLimitNOFILE=10240:524288

и презагрузите систему.

Убедитесь, что настройки применены:

ulimit -n
10240

sysctl fs.inotify
fs.inotify.max_queued_events = 16384
fs.inotify.max_user_instances = 10240
fs.inotify.max_user_watches = 524288