2

我正在使用 hadoop,需要更改打开文件的数量ulimit -n。我在 stackoverflow 和其他地方看到了类似的问题,并尝试了这些答案中的所有内容,但它仍然不起作用。我正在与ubuntu 12.04 LTS. 这是我所做的:

更改限制/etc/security/limits.conf,我已经为 * 和root. 我还将限制更改为某些数字,例如10000unlimited

* soft nofile 1513687
* hard nofile 1513687
root soft nofile 1513687
root hard nofile 1513687

我也尝试过使用-而不是soft和进行上述设置hard。在这些更改之后,我对/etc/pam.d/文件进行了更改,例如:

common-session 
common-session-noninterative
login
cron
sshd
su
sudo

我已经添加session required pam_limits.so到每个文件的开头。我重新启动了有问题的盒子,设置没有生效。

我还发现/etc/security/limits.d/目录中有用户文件hbase mapredhdfs. 我也尝试更改这些单个文件的限制,但无济于事。

我也试过ulimit -S -n unlimited放进/etc/profile去。那没起效。

最后,我尝试将limit nofile unlimited unlimited内部/etc/init.d/hadoop*文件作为第一行。不工作。

一件有趣的事情是,我没有在盒子上安装 hbase,但我确实在目录中有一个hbase.conf文件。/etc/security/limits.d/此文件中的设置以 反映ulimit -n。但设置hdfs.confmapred.conf没有反映。这表明某些东西正在覆盖hdfs和的设置mapred

我想我已经尝试了人们在几个论坛上建议的所有内容,还有什么我可能遗漏或做错的事情吗?

我正在使用CDH 4.4.0我的 hadoop 发行版。

4

1 回答 1

0

你如何检查ulimit?

我遇到了类似的问题,我会在哪里运行sudo ulimit -n,但仍然可以看到1024。这是因为ulimit它是内置的 Bash。为了查看反映在 中的更改/etc/security/limits.conf,我必须以ulimit实际用户身份运行。

于 2014-02-04T21:00:24.017 回答