历史服务器
Hadoop自带了一个历史服务器,可以通过历史服务器在web端查看已经运行完的Mapreduce作业记录,比如用了多少个Map、用了多少个Reduce、作业提交时间、作业启动时间、作业完成时间等信息。默认情况下,Hadoop历史服务器是没有启动的,需要自行启动。启动后,在下图中点击history可跳转至历史服务器查看信息。
配置历史服务器
配置文件mapred-site.xml
配置文件在hadoop文件夹下的etc/hadoop中。
在该配置文件中添加如下代码:
其中mapreduce.jobhistory.address是启动历史服务器的端口,mapreduce.jobhistory.webapp.address是历史服务器web端的端口。
(可以自己设置端口号,建议不要太小)
<configuration>
<property>
<name>mapreduce.jobhistory.address</name>
<value>hadoop101:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>hadoop101:19888</value>
</property>
</configuration>
分发配置文件
使用xsync命令向其他服务器分发配置文件:
xsync mapred-site.xml
启动历史服务器
首先要先启动hadoop集群:
start-all.sh
再启动历史服务器:
mapred --daemon start historyserver
查看历史服务器
使用jps查看是否启动成功:
可以看到在5384端口,历史服务器已经运行。
在浏览器中打开hadoop:19888,即可看到历史服务器,如下图:
测试历史服务器
上传一个测试任务,其中/wcinput中包含有一个txt文件,可以自行创建任意内容,输出到名为/wcoutput1的文件夹中。(注意:输出的文件夹应不存在,否则会出错)
hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar wordcount /wcinput /wcoutput1
其中/wcinput文件夹在hadoop的目录下,并在该目录输入上述命令上传任务。(如下图)
等待任务运行完成后:
在web端查看运行情况:
点击右下角的History进入历史服务器查看详情:
至此历史服务器配置完成。