从属节点不在Yarn ResourceManager中

pyt*_*lus 6 hadoop mapreduce cluster-computing hadoop-yarn

我已经建立了一个3节点的Apache Hadoop集群.在主节点上,我可以看到

[hadoop-conf]$ jps
16856 DataNode
17051 SecondaryNameNode
16701 NameNode
21601 ResourceManager
21742 NodeManager
18335 JobHistoryServer
Run Code Online (Sandbox Code Playgroud)

在奴隶节点上,我明白了

[fedora20-template dfs]$ jps
28677 Jps
28510 NodeManager
27449 DataNode
Run Code Online (Sandbox Code Playgroud)

我可以看到master中的三个实时节点:50070.但是,在ResourceManager Web UI(http:// master:8088/cluster/nodes)中,我只能看到主节点.为什么两个从属节点不在资源管理器中?这是否意味着它们不是用于mapreduce的资源的一部分?

pyt*_*lus 15

问题解决了.有些配置应该在yarn-site.xml中完成,让nodemanager知道资源管理器在哪里.具体来说,我将此属性添加到yarn-site.xml中:

  <property>
    <name>yarn.resourcemanager.hostname</name>
    <value>master</value>
  </property>
Run Code Online (Sandbox Code Playgroud)

原因:yarn-default.xml中的默认值为0.0.0.0,许多属性使用此主机名来联系资源管理器,例如

<property>
    <name>yarn.resourcemanager.address</name>
    <value>${yarn.resourcemanager.hostname}:8032</value>
</property>
Run Code Online (Sandbox Code Playgroud)

答案积分:https://stackoverflow.com/a/22125279/3209177