3

<master_IP>:8081 The image shows 8081 UI.当我启动 scala shell 或 pyspark shell 时,master 会显示正在运行的应用程序。但是当我spark-submit用来运行 python 脚本时,master 没有显示任何正在运行的应用程序。这是我使用的命令:spark-submit --master spark://localhost:7077 sample_map.py. 网络用户界面位于:4040。我想知道我是否以正确的方式提交脚本,或者 spark-submit 是否从未真正显示正在运行的应用程序。

localhost:8080<master_ip>:8080不为我打开但<master_ip>:8081打开。它显示了执行者信息。

这些是我在 spark-env.sh 中的配置:

export SPARK_EXECUTOR_MEMORY=512m 
export SPARK_MASTER_WEBUI_PORT=4040
export SPARK_WORKER_CORES=2
export SPARK_WORKER_MEMORY=1g
export SPARK_WORKER_INSTANCES=2 
export SPARK_WORKER_DIR=/opt/worker
export SPARK_DAEMON_MEMORY=512m
export SPARK_LOCAL_DIRS=/tmp/spark  
export SPARK_MASTER_IP 'splunk_dep'

我正在使用CentOSpython 2.7并且spark-2.0.2-bin-hadoop2.7.

4

4 回答 4

3

您可以打开 spark master 的 web UI,默认为http://localhost:8080以查看正在运行的应用程序(在独立集群模式下):火花大师用户界面

如果多个应用程序正在运行 - 它们将绑定到端口 4040、4041、4042 ...

您只需在 Web 浏览器中打开 http://:4040 即可访问此界面。如果多个 SparkContexts 在同一主机上运行,​​它们将绑定到以 4040 开头的连续端口(4041、4042 等)。

于 2016-12-01T10:31:10.020 回答
0

您是在应用程序运行时还是在应用程序完成执行后访问 SPARK-UI?

尝试添加一些代码,等待按键(因此火花执行不会结束) - 看看它是否能解决您的问题。

于 2016-12-01T10:12:43.513 回答
0

您只需访问 localhost:8080 并检查您是否提交了一份已完成的申请。

于 2016-12-01T10:29:33.843 回答
0

对于本地运行,请使用:

val sparkConf = new SparkConf().setAppName("Your app Name").setMaster("local")
val sc = new SparkContext(sparkConf)

当你做 sparkSubmit 时:

val sparkConf = new SparkConf().setAppName("Your app Name")
val sc = new SparkContext(sparkConf)

这在本地测试中不起作用,但是当您使用它编译并触发提交作业时,它将显示在 UI 中。

希望这能解释。

于 2016-12-02T09:07:33.173 回答