我不确定应用程序是在EC2上的Spark主服务器还是整个​​集群上运行

时间:2015-02-20 02:06:39

标签: amazon-ec2 apache-spark

我正在使用Spark 1.1.1。我按照https://spark.apache.org/docs/1.1.1/ec2-scripts.html上给出的说明操作,并在EC2上运行一个主节点和1个工作组的集群。

我已经制作了一个应用程序的jar并将其发送给了奴隶。当我使用客户端的部署模式使用spark-submit运行应用程序时,应用程序可以运行。但是,当我使用部署模式群集时,它会给我一个错误,说它无法找到工作者的jar。主人和工人对jar的许可是755。

我不确定当我使用deploy-mode = client运行应用程序时,是否应用程序正在使用worker。我不认为是因为工人网址没有显示任何已完成的工作。但它确实在deploy-mode = cluster期间显示失败的作业。

我做错了吗?谢谢你的帮助。

1 个答案:

答案 0 :(得分:1)

您可以检查端口4040上/executors页面上的执行程序是否已分配给应用程序(例如http://localhost:4040/executors/)。如果您只看到<driver>,那么您没有使用该工作人员。如果您看到一行<driver>和另一行(ID为0,除非它已重新启动),那么该工作者也会为您的应用程序提供执行程序。在这里,您还可以看到它为您的应用程序完成了多少任务,以及其他统计数据。