Eclipse远程调试Spark

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq626387/article/details/41651337

http://zhangrenhua.com博客已搬家


背景 

在安装好spark的前提下,我们写的代码需要进行远程调试怎么办?看了网上很多文档发现每一个是正确的,今天特分享分享。

修改配置文件

修改${spark_home}/bin/spark-class文件,找到JAVA_OPTS:
参数说明:
-Xdebug 启用调试特性
-Xrunjdwp 启用JDWP实现,包含若干子选项:
transport=dt_socket JPDA front-end和back-end之间的传输方法。dt_socket表示使用套接字传输。
address=8888 JVM在8888端口上监听请求,这个设定为一个不冲突的端口即可。
server=y y表示启动的JVM是被调试者。如果为n,则表示启动的JVM是调试器。
suspend=y y表示启动的JVM会暂停等待,直到调试器连接上才继续执行。suspend=n,则JVM不会暂停等待。


启动Spark Application 

本文以我自己的代码举例说明:
先将写好的代码打包放到服务器上,然后执行下面代码。如参数不懂可查官方文档(注:一定要选择yarn-client模式运行):
spark-submit --class spark.Demo --masteryarn-client /home/hadoop/apptest/spark-demo.jar /tmp/data.txt --executor-memory 1024m

在Eclipse设置远程调试的ip和port






总结

运行的jar文件必须要和Eclipse上的源码保持一致。


展开阅读全文

没有更多推荐了,返回首页