一、版本
Spark-2.1.0
二、介绍
1.以standalone运行模式为例,在运行Spark Application的时候,Spark会提供一个WEBUI列出应用程序的运行时信息;但该WEBUI随着Application的完成(成功/失败)而关闭,也就是说,Spark Application运行完(成功/失败)后,将无法查看Application的历史记录;
2.Spark history Server就是为了应对这种情况而产生的,通过配置可以在Application执行的过程中记录下了日志事件信息,那么在Application执行结束后,WEBUI就能重新渲染生成UI界面展现出该Application在执行过程中的运行时信息;
二、配置方法
1.spark-defaults.conf增加以下配置
spark.eventLog.enabled true
spark.eventLog.dir hdfs://namenodehost:port/spark-history
spark.eventLog.compress true
2.spark-env.sh增加以下配置
export SPARK_HISTORY_OPTS="-Dspark.history.ui.port=7777 -Dspark.history.retainedApplications=3 -Dspark.history.fs.logDirectory=hdfs://namenodehost:port/spark-history
注意:namenodehost:port为HDSF访问地址
3.如果spark跑在yarn上,还需在 yarn-site.xml增加一下配置,将日志重定向到mapreduce history server,前提是mapreduce history server已配置好,点击参考配置方法
<property>
<name>yarn.log.server.url</name>
<value>http://mapreducehistoryhost:port/jobhistory/logs/</value>
</property>
注意:
1.mapreducehistoryhost:port为mapred-site.xml中配置的mapreduce.jobhistory.webapp.address属性
2.一定要重启YARN和mapreduce history server
4.启动
sbin/start-history-server.sh