Hadoop 从属节点不在ResourceManager中

Hadoop 从属节点不在ResourceManager中,hadoop,mapreduce,cluster-computing,yarn,Hadoop,Mapreduce,Cluster Computing,Yarn,我已经建立了一个3节点的ApacheHadoop集群。在主节点上,我可以看到 [hadoop-conf]$ jps 16856 DataNode 17051 SecondaryNameNode 16701 NameNode 21601 ResourceManager 21742 NodeManager 18335 JobHistoryServer 在从属节点上,我明白了 [fedora20-template dfs]$ jps 28677 Jps 28510 NodeManager 27449

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

[hadoop-conf]$ jps
16856 DataNode
17051 SecondaryNameNode
16701 NameNode
21601 ResourceManager
21742 NodeManager
18335 JobHistoryServer
在从属节点上,我明白了

[fedora20-template dfs]$ jps
28677 Jps
28510 NodeManager
27449 DataNode

我可以从主节点50070中看到三个活动节点。但是,在ResourceManager Web UI()中,我只能看到主节点。为什么两个从属节点不在资源管理器中?这是否意味着它们不是用于mapreduce的资源的一部分?

理想情况下是的,从属节点不是集群的一部分。可能是因为不正确的群集设置。但是为了确保在shell中运行以下命令

hdfs dfsadmin -report
您应该能够获得数据节点的统计信息。

问题已解决。 应该在warn-site.xml中进行一些配置,让节点管理员知道资源管理器在哪里。具体而言,我将此属性添加到了warn-site.xml中:

  <property>
    <name>yarn.resourcemanager.hostname</name>
    <value>master</value>
  </property>

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

<property>
    <name>yarn.resourcemanager.address</name>
    <value>${yarn.resourcemanager.hostname}:8032</value>
</property>

.resourcemanager.address
${spirn.resourcemanager.hostname}:8032

回答积分:

我在包括NameNode在内的所有节点上向Thread-site.xml添加了以下内容(假设也会使用):


warn.resourcemanager.resource-tracker.address
{输入NameNode IP地址}:8025
warn.resourcemanager.scheduler.address
{输入NameNode IP地址}:8030
.resourcemanager.address
{输入NameNode IP地址}:8040

我认为这可能是我的错误理解,Hadoop集群,只是指HDF集群,而不是纱线集群?那么这是否意味着即使我有大量的节点,我仍然只有一个节点供纱线使用?或者有一些配置可以扩展节点以供使用?您的理解似乎是错误的。集群不仅仅意味着HDFS节点。集群包括运行datanode守护程序服务或nodemanager服务的每个节点。在您的设置中,从属节点运行Nodemanager和Datanode守护程序服务。因此,理想情况下,它应该是集群的一部分,但集群配置中似乎有问题。能否检查namenode上hadoop conf目录下的slaves文件中是否给出了从属节点。
<property>  
  <name>yarn.resourcemanager.resource-tracker.address</name>  
  <value>{Enter NameNode IP Address}:8025</value>  
</property>  
<property>  
  <name>yarn.resourcemanager.scheduler.address</name>  
  <value>{Enter NameNode IP Address}:8030</value>  
</property>  
<property>  
  <name>yarn.resourcemanager.address</name>  
  <value>{Enter NameNode IP Address}:8040</value>  
</property>