当跑完MapReduce程序后,点击Tracking UI 下的History查看日志时报错拒绝连接
使用jps命令检查自己的JobHistoryServer服务是否开启
检查mapred-site.xml文件里的配置,修改完成后分发到集群中的每台机器上(单机版就不用分发了):
<configuration>
<!-- 表示提交到hadoop中的任务采用yarn来运行,要是已经有该配置则无需重复配置 -->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapred.job.tracker.http.address</name>
<value>cMaster:50030</value>
</property>
<property>
<name>mapred.task.tracker.http.address</name>
<value>cMaster:50060</value>
</property>
<property>
<!--日志监控服务的地址,一般填写为namenode机器地址,我这里配置在cSlave0上 -->
<name>mapreduce.jobhistroy.address</name>
<value>cSlave0:10020</value>
</property>
<property>
<name>mapreduce.jobhistroy.webapp.address</name>
<value>cSlave0:19888</value>
</property>
</configuration>
增加该配置后能够访问连接19888端口了,但是点击logs任然看不到日志:
如下:
此时在yarn-site.xml配置文件中增加如下配置:
<property>
<name>yarn.log-aggregation-enable</name>
<value>true</value>
</property>
配置文件修改完成后,使用scp命令将yarn-site.xml和mapred-site.xml两个配置文件分发到集群中的每一台机器上。然后重启hdfs和yarn,再次运行任务,就可以查看日志了。