本地 Java 程序提交任务到 spark 集群无法执行,也没有报错,这是为什么?

问答 tonly ⋅ 于 2018-05-29 20:53:57 ⋅ 最后回复由 tonly 2018-06-04 10:19:30 ⋅ 5701 阅读

本地连接虚拟机上的spark集群,一直出现这样的日志,好像一直在不停的分配重试task,然后又回收任务,就是不执行任务,也没有错误信息,请大牛帮忙解答一下,谢谢!
spark版本是2.3的,集群没有问题,在集群上执行Spark Pi测试都是正常的。

代码
file

结果
file

spark配置
file

成为第一个点赞的人吧 :bowtie:
回复数量: 16
  • 青牛 国内首批大数据从业者,就职于金山,担任大数据团队核心研发工程师
    2018-05-30 15:02:05

    好像是你的任务找不到你的节点位置,应该是你的本地spark配置缺少这样的信息

  • tonly
    2018-05-30 15:14:02

    @青牛 我是参考网上的,只设置了spark的Master地址,还有就是把hdfs-site.xml和core-site.xml也放到项目里面了。请问本地还有什么需要配置呢?谢谢

  • 青牛 国内首批大数据从业者,就职于金山,担任大数据团队核心研发工程师
    2018-05-30 15:18:22

    @tonly 你提交任务时查看一下集群上master日志看看有没有什么问题。

  • tonly
    2018-05-30 15:29:08

    @青牛
    master
    file

    work
    file

  • 青牛 国内首批大数据从业者,就职于金山,担任大数据团队核心研发工程师
    2018-05-30 15:55:52

    @tonly 你虚拟机多大内存啊?

  • tonly
    2018-05-30 16:03:55

    @青牛 笔记本电脑的上的虚拟机,每台都是1核1G,Spark集群内存也调小了,也没用

  • 青牛 国内首批大数据从业者,就职于金山,担任大数据团队核心研发工程师
    2018-05-30 17:02:55

    @tonly 你把虚拟机调到2G内存试试吧,因为你的日志里显示你的executor的JVM需要XMX1024M,所以你的虚拟机最少要1G以上的内存。Spark集群内存调小是不行的,因为内存太小了,是启不来的。

  • tonly
    2018-05-30 18:10:04

    @青牛 用了生产服务器,内存充足的,还是不可以。

    file

  • 青牛 国内首批大数据从业者,就职于金山,担任大数据团队核心研发工程师
    2018-05-30 19:36:41

    @tonly 我觉得是这里的问题,executor找不到你的driver吧,因为他不知道这个地址是啥

    file

  • tonly
    2018-05-31 09:38:01

    @青牛 恩,应该是Driver调度这块的问题。cluster模式的话,Driver就会在集群中,这个我一会试试行不行。client模式的话,该怎么解决呢?希望指点一下,谢谢

  • 青牛 国内首批大数据从业者,就职于金山,担任大数据团队核心研发工程师
    2018-05-31 15:17:34

    @tonly 能让你的虚拟机连接到ZhOu:49452这个地址就可以了,你可以给虚拟机配置一下host,让你的executor和你的driver能连接上就行了。或者你试试能不能覆盖--driver-url这个参数

  • tonly
    2018-06-01 10:12:55

    @青牛 虚拟机配置了笔记本的host了,也可以ping。但还是一样的问题。请问--driver-url这个参数在哪设置?spark-env.sh和spark-default.conf中没有找到这个的配置项,spark-class中也没有

  • 青牛 国内首批大数据从业者,就职于金山,担任大数据团队核心研发工程师
    2018-06-01 15:47:53

    @tonly 你的虚拟机是用的桥接吗?要是使用的NAT网络是ping不通本地的。你试一下在你的程序中配置这个参数“spark.driver.host”

  • tonly
    2018-06-01 16:45:49

    虚拟机网络是NAT连接,设置了spark.driver.host,driver地址确实改变了。但是问题还是没有变化,点击进去查看任务详情,很多资源找不到,就像是第三张图那样。本地也配置了Spark,cmd中也可以调用spark命令。感觉像是本地问题,但是本地也配置了SPARK_HOME。访问本地4040端口,就会出现下面的问题,请教一下这个怎么解决?不管怎么样,都非常感谢您这几天的持续解答":+1: "

    file

    file

    file

  • 青牛 国内首批大数据从业者,就职于金山,担任大数据团队核心研发工程师
    2018-06-03 19:56:28

    @tonly 你这个问题挺有意思的,所以我也愿意和你讨论。你那个看不全网页IDEA中会报jetty的错误,主要是找不到文件什么的。这个有可能是你IDEA在windows上的权限不够。所以和你这个本地的问题没有关系。主要的问题就是你的虚拟机能不能通过nat网络访问你的宿主机的ip和指定的端口。你配置的那个.1应该是NAT网络的网关吧,不知道这样配置可不可以,一般都是主机访问虚拟网络里面的机器。虚拟网络里面的机器访问不了主机的。

暂无评论~~
  • 请注意单词拼写,以及中英文排版,参考此页
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`, 更多语法请见这里 Markdown 语法
  • 支持表情,可用Emoji的自动补全, 在输入的时候只需要 ":" 就可以自动提示了 :metal: :point_right: 表情列表 :star: :sparkles:
  • 上传图片, 支持拖拽和剪切板黏贴上传, 格式限制 - jpg, png, gif,教程
  • 发布框支持本地存储功能,会在内容变更时保存,「提交」按钮点击时清空
Ctrl+Enter