標籤:
轉自:http://blog.yucanlin.cn/2015/03/23/mongodb-%E4%BF%AE%E6%94%B9-ulimit/
mongoDB 修改 ulimit
一切都源於mongoDB的這條warning
| 1 |
** WARNING: soft rlimits too low. rlimits set to 4096 processes, 64000 files. Number of processes should be at least 32000 : 0.5 times number of files. |
修改ulimit本來也不難,不過還是有不少坑。mongoDB官方文檔http://docs.mongodb.org/manual/reference/ulimit/#memory-size , 雖然給了方法,不過linux這個ulimit可是使用者相關的,所以這種做法不靠譜。
正確的做法是修改/etc/security/limits.conf檔案,這個檔案是有man文檔,可以man limit.conf檔案查看。先給個sample:
| 1234567891011 |
<domain><type><item><value> * soft core 0 * hard nofile 512 @student hard nproc 20 @faculty soft nproc 20 @faculty hard nproc 50 ftp hard nproc 0 @student - maxlogins 4 :123 hard cpu 5000 @500: soft cpu 10000 600:700 hard locks 10 |
根據說明,我們添加如下內容,這些數值來自於mongoDB文檔裡面的推薦數值。有個要求就是nproc要大於0.5nofile。
| 12345678910 |
mongod soft fsize unlimitedmongod hard fsize unlimitedmongod soft cpu unlimitedmongod hard cpu unlimitedmongod soft as unlimitedmongod hard as unlimitedmongod soft nofile 64000mongod hard nofile 64000mongod soft nproc 64000mongod hard nproc 64000 |
重啟後就搞定了。這裡要留意的是,請指明使用者,不要用*代替。誰啟動mongoDB就使用者就填誰,可以用ps命令查詢。
| 123 |
[[email protected] ~]$ ps -ef | grep mongodmongod 945 1 1 12:11 ? 00:00:14 /usr/bin/mongod -f /etc/mongod.confyucanlin 3040 2649 0 12:32 pts/0 00:00:00 grep --color=auto mongod |
另外,如果想查詢mongod的limits,可以使用以下命令。其中945是pid。有上面的ps命令查詢得到。
| 123456789101112131415161718 |
[[email protected] ~]$ cat /proc/945/limitsLimit Soft Limit Hard Limit Units Max cpu time unlimited unlimited seconds Max file size unlimited unlimited bytes Max data size unlimited unlimited bytes Max stack size 8388608 unlimited bytes Max core file size 0 unlimited bytes Max resident set unlimited unlimited bytes Max processes 64000 64000 processes Max open files 64000 64000 files Max locked memory 65536 65536 bytes Max address space unlimited unlimited bytes Max file locks unlimited unlimited locks Max pending signals 7859 7859 signals Max msgqueue size 819200 819200 bytes Max nice priority 0 0 Max realtime priority 0 0 Max realtime timeout unlimited unlimited us |
餘 燦琳 2015年3月23日 電腦 2 Comments
轉:mongoDB 修改 ulimit