Spark快速入门系列(5) | Spark环境搭建—standalone(2) 配置历史日志服务器

2020-10-28 17:03:47 浏览数 (1)

默认情况下,Spark程序运行完毕关闭窗口之后,就无法再查看运行记录的Web UI(4040)了,但通过 HistoryServer 可以提供一个服务, 通过读取日志文件, 使得我们可以在程序运行结束后, 依然能够查看运行过程。本篇博客,博主就为大家带来在Spark上配JobHistoryServer的详细过程。 在 Spark-shell 没有退出之前, 我们是可以看到正在执行的任务的日志情况:http://hadoop102:4040. 但是退出 Spark-shell 之后, 执行的所有任务记录全部丢失. 所以需要配置任务的历史服务器, 方便在任何需要的时候去查看日志.

一. 配置步骤

  在配置之前,如果spark服务还在启动中请先停止!

代码语言:javascript复制
[bigdata@hadoop002 spark]$ sbin/stop-all.sh 
  • 1. 配置spark-default.conf文件, 开启 Log
代码语言:javascript复制
[bigdata@hadoop002 conf]$ mv spark-defaults.conf.template spark-defaults.conf
代码语言:javascript复制
//在spark-defaults.conf文件中, 添加如下内容:

[bigdata@hadoop002 conf]$ vim spark-defaults.conf 

spark.eventLog.enabled           true
spark.eventLog.dir               hdfs://hadoop002:9000/spark-job-log

注意: hdfs://hadoop201:9000/spark-job-log 目录必须提前存在, 名字随意

代码语言:javascript复制
[bigdata@hadoop002 spark]$ hadoop fs -mkdir /spark-job-log
  • 2. 修改spark-env.sh文件,添加如下配置
代码语言:javascript复制
[bigdata@hadoop002 conf]$ vim spark-env.sh 

export SPARK_HISTORY_OPTS="-Dspark.history.ui.port=18080 -Dspark.history.retainedApplications=30 -Dspark.history.fs.logDirectory=hdfs://hadoop002:9000/spark-job-log"

参数描述:

spark.eventLog.dir:Application在运行过程中所有的信息均记录在该属性指定的路径下;

spark.history.ui.port=18080 WEBUI访问的端口号为18080

spark.history.fs.logDirectory=hdfs://hadoop002:9000/spark-job-log 配置了该属性后,在start-history-server.sh时就无需再显式的指定路径,Spark History Server页面只展示该指定路径下的信息

spark.history.retainedApplications=30指定保存Application历史记录的个数,如果超过这个值,旧的应用程序信息将被删除,这个是内存中的应用数,而不是页面上显示的应用数。

  • 3. 分发配置文件
代码语言:javascript复制
// 可依次操作 也可分发
xsync spark-defaults.conf
xsync spark-env.sh
  • 4. 启动历史服务
代码语言:javascript复制
// 1. 需要先启动 HDFS
[bigdata@hadoop002 hadoop-2.7.2]$ sbin/start-dfs.sh 

// 2. 启动spark
[bigdata@hadoop002 spark]$ sbin/start-all.sh 

// 2. 然后再启动: 
[bigdata@hadoop002 spark]$ sbin/start-history-server.sh
  • 5. 登录Web界面

ui 地址: http://hadoop002:18080

  • 6. 启动任务, 查看历史服务器
代码语言:javascript复制
bin/spark-submit 
--class org.apache.spark.examples.SparkPi 
--master spark://hadoop002:7077 
--executor-memory 1G 
--total-executor-cores 6 
./examples/jars/spark-examples_2.11-2.1.1.jar 100

  本次的分享就到这里了

0 人点赞