【发布时间】:2016-06-02 09:01:43
【问题描述】:
我在 Hadoop 集群中面临一个问题。我有一个带有 5 个数据节点和一个边缘/网关节点的 Hadoop 集群。
我的问题是我必须在每个节点(1 个名称节点和 5 个数据节点)中启动历史服务器,才能从 hadoop webUI 获取任何已提交作业的作业历史记录。
我在 mapred-site.xml 中添加了 mapreduce.jobhistory.address 和 mapreduce.jobhistory.webapp.address
但我猜它不能正常工作。
如果我仅在名称节点或任何其他节点中启动历史服务器,Hadoop Cluster Web-UI 将无法向我显示作业历史并最终出现一些错误。
我的 Mapred 站点 XML
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>hadoopmaster:8021</value>
</property>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>hadoopmaster:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>hadoopmaster:19888</value>
</property>
</configuration>
暂时作为一种解决方法,我在每个节点(名称节点和所有数据节点)中手动启动历史服务器。但认为这不是正确的方法。
现在我只有 5 个数据节点,因此手动在每个节点中启动历史服务器仍然可行,但如果是多个节点(例如 100/200),则在每个节点中启动历史服务器将不再可行节点。这个问题应该有一些标准的解决方案......
如果有人知道如何解决此问题,请帮助我。 提前致谢…。
【问题讨论】: