【发布时间】:2014-10-02 14:07:10
【问题描述】:
我正在尝试运行一个字数统计示例。我当前的测试设置是: NameNode 和 ResourceManager 在一台机器上(10.38.41.134)。 DataNode 和 NodeManager 在另一个 (10.38.41.135) 上。 他们可以在没有密码的情况下在它们之间进行 ssh。
阅读日志时,我没有收到任何警告,除了一个安全警告(我没有设置它进行测试)和一个 containermanager.AuxServices 'mapreduce_shuffle' 警告。提交示例作业后,节点对其做出反应并输出日志,这表明它们可以很好地通信。 NodeManager 输出内存使用情况,但作业没有让步。
我什至应该从哪里开始寻找问题?我能找到的其他一切要么是旧的,要么是不相关的。我遵循了 2.5.1 版的官方集群设置教程,其中有太多问题没有得到解答。
我的 conf 文件如下:
核心站点.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://10.38.41.134:9000</value>
</property>
</configuration>
hdfs-site.xml
<configuration>
<property>
<name>dfs.namenode.rpc-bind-host</name>
<value>0.0.0.0</value>
</property>
<property>
<name>dfs.namenode.servicerpc-bind-host</name>
<value>0.0.0.0</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.client.block.write.replace-datanode-on-failure.enable</name>
<value>NEVER</value>
<description>
</description>
</property>
<property>
<name>dfs.namenode.datanode.registration.ip-hostname-check</name>
<value>false</value>
</property>
</configuration>
mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
<description>The runtime framework for executing MapReduce jobs.
Can be one of local, classic or yarn.
</description>
</property>
</configuration>
yarn-site.xml
<configuration>
<property>
<name>yarn.nodemanager.delete.debug-delay-sec</name>
<value>300</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
<property>
<name>mapreduce.jobtracker.address</name>
<value>10.38.41.134:50030</value>
</property>
</configuration>
其他都是默认的。
【问题讨论】:
-
您可能需要为数据节点分配更多内存。
-
我怀疑是内存。 NodeManager 报告 2GB 内存中大约 240MB 的内存使用情况,并固定在那里。我什至尝试用最小的输入运行最简单的示例,这不应该占用大量内存。
标签: hadoop