常用的Spark监控系统有,Web UI和Spark的History-Server

一,web界面

1,界面的基本介绍

每一个Spark应用程序都会启动一个spark ui,默认端口是4040端口,用于展示对应用程序有用的信息。包括以下信息:

1),stages和tasks列表。

2),RDD大小的总概和内存使用。

3),运行环境信息。

4),运行的Executors状态。

你可以在浏览器输入: http://<driver-node>:4040访问该界面。如果多个SparkContexts在同一台主机上运行,则它们将以4040(4041,4042等)开始绑定到连续的端口。请注意,默认情况下,这些信息只会在程序运行期间可以查看。在程序运行结束后查看webUI,需要在启动应用程序前设置spark.eventLog.enabled为true。这配置spark会将显示在web ui上的spark events存储到存储系统中去。

 

2,spark的historyServer

只要应用程序的事件日志存在,仍然可以通过Spark的历史记录服务器构建应用程序的UI。通过执行下面的命令,启动历史服务器:

./sbin/start-history-server.sh

默认情况下,这将在http:// <server-url>:18080创建一个Web界面,列出未完成和已完成的应用程序和尝试。

 

如何配置Spark的HistoryServer

官网:http://spark.apache.org/docs/latest/monitoring.html

 

1、更改Spark-default.conf  

spark.eventLog.enabled                 true

spark.eventLog.dir                        hdfs://命名空间/(hdfs上创建一个目录)

 

2、更改spark-env.sh

SPARK_HISTORY_OPTS="-Dspark.history.fs.logDirectory=  hdfs://命名空间/(hdfs上创建一个目录)"

 

http://hadoop000:18080/  启动即可