Spark之本地部署,编译打包以及远程提交

Spark之本地部署,编译打包以及远程提交,第1张

Spark:2.4.0、maven:3.6.3、scala:2.11.12、猜空斗scalatest:3.0.4(版本要自己去查查对应的)

编译命令:

打包成Spark可运行版:

集群中的Hadoop的各个配置文件拷贝过来A的 HADOOP_CONF_DIR 中,core-site.xml 需要修改以下内容即,将net.topology.script.file.name对应的 值 注释掉,否则会报错亏渣。

WSL Ubuntu 的.bashrc文件追加内容:

任务提交:

结果,看app_ID:

猜测:

(补充) 关于Maven的配置问题:穗磨

简介

由于spark有多种运行模式,远程调试的时候,虽然大体步骤相同,但是还是有小部分需要注意的地方,这里记录一下调试运行在spark on yarn模式下的程序

环境准备

需要完好的Hadoop,spark集群,以便于提交spark on yarn程序。我这里是基于CDH的环境

步骤

1.随便写个spark程序,比大颂如序列化一个集合,然后求和。然后使用maven打包,上传至滚搜郑集群漏缺。可以先提交运行一次,确保可以运行成功。

[root@kjtlxsvr5 bin]# ./spark-submit --class cn.spark.study.core.ParallelizeCollection --master yarn-cluster --num-executors 3 --executor-cores 2 --executor-memory 1G --driver-java-options "-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8787" /home/spark-study-scala-0.0.1-SNAPSHOT-jar-with-dependencies.jar

现在有两个办法可以解决这个问题。

第一个办法是节点少的话,通过修改上面IDEA远程主机地址来一个一个试。

第二办法可以精确知道ApplicationMaster在哪里:

①通过CDH进入yarn的应用程序界面

②然后点击进入该程序的详细信息界面,如下图就可以知道Applicationmaster在哪台NodeManager上:

③可以去该节点查看进程,的确有一个ApplicationMaster,然后在IDEA中修改为该远程主机地址,开始debug程序看源码吧!


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12325944.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存