我在我的MAC上安装了Hadoop和YARN。我能够运行wordcount示例并在HDFS上输出结果(pesudo-distribute模式),我知道我的程序在HDFS上运行数据文件因为我必须将文件复制到HDFS才能运行。但是,当我在我的WEB UI上查看YARN时,没有记录表明任何任务已经完成。在线研究后,似乎该应用程序仍在本地运行。
在start-yarn.sh之后,我可以打开资源管理器Web UI http://localhost:8088/
,问题是没有任何任务出现过。此外,我甚至无法访问我的JobTracker Web UI。
我发现了以下链接。它与我有类似的问题,但解决方案对我不起作用
Hadoop is not showing my job in the job tracker even though it is running
我的XML设置如下
mapred-site.xml中
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>localhost:9001</value>
</property>
<property>
<name>mapred.framework.name</name>
<value>yarn</value>
</property>
</configuration>
纱-site.xml中
<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>yarn.resourcemanager.address</name>
<value>localhost:9002</value>
</property>
芯-site.xml中
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
有谁知道问题是什么?感谢
答案 0 :(得分:1)
如果您使用纱线,因为没有jobtracker,它将是资源管理器,它将处理您的请求。因此,当您将mapred.framework.service作为yarn时,所以框架将运行resourcemanager。 从mapred-site.xml中删除jobtracker的条目 尝试使用以下mapred-site.xml
<property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> <property> <name>mapreduce.jobhistory.address</name> <value>localhost:10020</value> </property> <property> <name>mapreduce.jobhistory.webapp.address</name> <value>localhost:19888</value> </property>
也可以通过bin / yarn-damemoe.sh启动历史服务器来启动历史服务器 通过这个,您将能够观察完成的应用程序的历史记录(旧mapreduce中的作业)。 在Web UI上,您将只显示正在运行的任务,有关详细信息,它提供了指向应用程序主机的链接,后者负责在纱线中运行应用程序。完成任务后,您可以通过点击链接到历史来查看历史记录。尝试在resourmanager web UI上找到这些链接