在上篇文章中Spark应用程序SimpleApp采用的是本地运行模式,该模式通常用于对应用程序的前期调试,以本地运行模式运行正确后,可以进一步尝试以集群模式运行应用程序。
1:设置Spark应用程序启动运行类
首先单击“File”->"Project Structure",在打开的窗口中单击“Artifacts”命令,在右侧显示窗口中单击“+”,并在下拉菜单中选择“JAR”->"From modules from dependences..."
在弹出的对话框中设置“Main Class”,选择SimpleApp的启动运行类
2:去除相应的jar包,选中除了“‘Simple’ compile out”之外所有的包,然后单击“-”,将其删除
3:设置包名与输出路径,为了方便后续操作,更改应用程序打包后的输出路径为“/home/mark”
4:在源文件中设置运行模式,将SimpleApp源文件中的SetMaster(“local[2]”)修改为setMaster("spark://192.168.189.140:7077"),表示该应用程序将发送给Spark集群中该地址所标识的Master节点
5:生成jar包,首先单击“Build”->"Build Artificats...",然后在弹出的菜单中选择“SimpleApp:jar”->"Build"
等编译完成后,查看包输出路径,目录下生成的SimpleApp.jar文件
6:向Spark集群提交应用程序
首先启动Hadoop、Spark,然后通过下述命令向Spark集群提交并运行应用程序
cd spark-1.4.0-bin-hadoop2.4 bin/spark-submit ~/SimpleApp.jar