MongoDB在启动时安装简单的testing操作pipe理器java.lang.OutOfMemoryError

刚刚安装了MongoDB Ops Manager的testing评估,并在启动备份HTTP服务器时出现错误:

Migrate MMS data Running migrations...[ OK ] Start MMS server Instance 0 starting..........[ OK ] Start Backup HTTP Server Instance 0 starting.......[FAILED] 2015-05-07T14:00:32.107+0000 [main] gid ERROR ServerMain:199 - Cannot start bslurp server [FATAL-EXITING] - instance: 0 - msg: unable to create new native thread java.lang.OutOfMemoryError: unable to create new native thread 

我似乎有足够的内存

 [root@krh60621 ~]# free -m total used free shared buffers cached Mem: 15951 4588 11362 0 364 2021 

我把最大的进程提高到无限,看看是否会有所帮助….

 [root@krh60621 ~]# ulimit -a core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 127421 max locked memory (kbytes, -l) 64 max memory size (kbytes, -m) unlimited open files (-n) 94000 pipe size (512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 stack size (kbytes, -s) 10240 cpu time (seconds, -t) unlimited max user processes (-u) unlimited virtual memory (kbytes, -v) unlimited file locks (-x) unlimited [root@krh60621 ~]# ps -eLF| grep -c java 593 [root@krh60621 ~]# ps -eLF| wc -l 1031 

有什么想法吗?

我有同样的问题,这个例外是非常误导。 你需要改变linux机器上的ulimit来解决这个问题:

你可以检查ulimits:

 ulimits -a 

并改变极限:

 ulimit -n 64000 

并尝试用新的限制重新启动服务。

来源: docs.MongoDB.org