windows写spark代码并打包交到集群运行

一.下载spark,hadoop,java,scala,idea

1.spark,本地调试代码需要运行你写的scala,其中引用的所有spark库都需要spark的jar包,使用集群机器上的spark文件夹里面的jars即可,将集群上的spark拷贝下来。

2.hadoop,同spark,但是需要下载winutils.exe在hadoop的bin目录下,否则会报Could not locate executable null\bin\winutils.exe in the Hadoop binaries错误。

地址:https://github.com/sdravida/hadoop2.6_Win_x64/blob/master/bin/winutils.exe 感谢zxzLife老哥!

致谢:https://blog.youkuaiyun.com/weixin_41122339/article/details/81141913

3.一定要安装你hadoop对应的scala版本,开发机上进spark里面会提示你使用的是什么版本的scala

4.安装你scala支持的jdk版本,最好直接对应上,否则会报exception,但是好像不影响运行,我还是调整了我的jdk变成了1.8.

5.下载idea,我用的是专业版,教育邮箱白嫖专业版。

6.配置环境变量:

path

二、使用sbt创建scala工程 

注意:红框里面要选正确的版本号!

然后点击Finish,第一次创建会有一大堆的import,需要耗时比较久,趁机休息一会儿。

 

三、添加spark jars

project structure

里面的JARS or Directory

apply&ok

然后查看External Libraries里面有了spark的jar包

四、创建scala object

因为在创建的时候已经选择了scala版本,这块直接scala文件夹右键新建scala class 选择object即可

 

五、打包

左侧删除掉额外的jars 只保留这两项

查看output文件夹:

jar包有了

解压打开可以看到class名:

注意:test.class 我们一会写的脚本要提交这个class前面的名字也就是test

六、交到集群上执行

运行脚本:

./spark-submit --class test \
--master yarn \
--deploy-mode client \
../examples/jars/example_csdn.jar 

注意:

1.你读取的文件要放在hdfs上

2.client模式提交

3.cluster提交不要指定master!

不要setMaster()!给我删掉!删掉!否则报code 13 的集群冲突!如下:

ERROR yarn.Client: Application diagnostics message: Application application_xxx failed 2 times due to AM Container for appattempt_xxx exited with  exitCode: 13

致谢:http://bcxw.net/article/113.html

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值