MongoDB лимиты операционной системы

mongodb
При входе в консоль mongo можно увидеть такое сообщение


WARNING: soft rlimits too low. Number of files is 256, should be at least 1000

Если для Linux систем все решается простым ulimit -n <число>, то для Mac OS X Yosemite параметры поменялись.

Понадобится поменять 2 файла


sudo vi /Library/LaunchDaemons/limit.maxfiles.plist

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>limit.maxfiles</string>
<key>ProgramArguments</key>
<array>
<string>launchctl</string>
<string>limit</string>
<string>maxfiles</string>
<string>2048</string>
<string>65536</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>ServiceIPC</key>
<false/>
</dict>
</plist>

И второй файл


sudo vi /Library/LaunchDaemons/limit.maxproc.plist

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>limit.maxproc</string>
<key>ProgramArguments</key>
<array>
<string>launchctl</string>
<string>limit</string>
<string>maxproc</string>
<string>2048</string>
<string>2048</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>ServiceIPC</key>
<false/>
</dict>
</plist>

Проверьте права на файлы root:wheel и 644. Таким образом мы установили системные лимиты.
Сессионные же лимиты устанавливаются как обычно


ulimit -n 65536
ulimit -u 2048

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


sudo launchctl limit maxfiles 65536 65536
sudo launchctl limit maxproc 2048 2048
ulimit -n 65536
ulimit -u 2048

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *