Rav*_*att 4 hadoop 12.04 ulimit
我正在使用 hadoop 并且需要更改打开文件的数量ulimit -n。我在 stackoverflow 和其他地方看到过类似的问题,并尝试了这些答案中的所有内容,但仍然无效。我正在与ubuntu 12.04 LTS. 这是我所做的:
更改限制/etc/security/limits.conf,我已经为 * 和root. 我还更改了一些数字的限制,例如10000和unlimited。
* soft nofile 1513687
* hard nofile 1513687
root soft nofile 1513687
root hard nofile 1513687
Run Code Online (Sandbox Code Playgroud)
我也试过上面的设置-而不是soft和hard。在这些更改之后,我对/etc/pam.d/文件进行了更改,例如:
common-session
common-session-noninterative
login
cron
sshd
su
sudo
Run Code Online (Sandbox Code Playgroud)
我已经添加session required pam_limits.so到每个文件的开头。我重新启动了有问题的盒子,但设置没有生效。
我还发现/etc/security/limits.d/用户hbase mapred和hdfs. 我也尝试更改这些单个文件中的限制,但无济于事。
我也试过放在ulimit -S -n unlimited里面/etc/profile。这没用。
最后,我尝试将limit nofile unlimited unlimited内部/etc/init.d/hadoop*文件作为第一行。不工作。
一件有趣的事情是,我没有在盒子上安装 hbase,但我hbase.conf在/etc/security/limits.d/目录中有一个文件。此文件中的设置反映在ulimit -n. 但是来自hdfs.conf和 的设置mapred.conf不会被反映。这表明某些东西正在覆盖hdfs和 的设置mapred。
我想我已经尝试了几个论坛上人们建议的所有内容,还有什么我可能错过或做错的吗?
我正在使用CDH 4.4.0我的 hadoop 发行版。
通过这样做,我能够成功更改我的 ulimit 实时优先级和 memlock:
打开/etc/security/limits.conf并添加这些行(将 'tyler' 替换为您的 Ubuntu 用户名)
打开/etc/pam.d/su并确保存在以下行,并且没有注释掉:
session required pam_limits.so
Run Code Online (Sandbox Code Playgroud)
之后,我只需要重新启动我的电脑,然后我就可以使用这个终端命令来检查我的 ulimit:
ulimit -r -l
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10518 次 |
| 最近记录: |