在开发环境(比如idea)调试通过以后,测试或者生产环境需要在独立的集群环境中允许。此时需要打包成jar。
1、打包jar当项目中用到了集群环境中没有的jar包时,就需要通过maven-assembly-plugin插件将依赖的jar包添加到打包文件中。
2、代码中允许环境变动在本地开发环境,通常可以使用local[*]设置执行环境配置,代码中如下:
SparkConf sc = new SparkConf().setMaster("local[*]") .setAppName("online count");
在提交的jar包的代码中,不应设置本地环境,而是通过提交命令指定执行环境。
SparkConf sc = new SparkConf().setAppName("online count");
3、提交任务提交jar使用spark-submit程序。
./spark-submit --class com.demo.SSKafkaWordCountSA --master spark://bogon:7077 --deploy-mode cluster /opt/spark/demo/spark-demo-1.0-jar-with-dependencies.jar
--class com.demo.SSKafkaWordCountSA ,表示启动类--master spark://bogon:7077,表示集群主节点地址和端口--deploy-mode cluster,部署模式,参数可以是client和cluster,client表示客户端模式,此时提交程序终端不会退出,cluster表示集群模式,提交完成,submit终端程序退出。/opt/spark/demo/spark-demo-1.0-jar-with-dependencies.jar,程序jar包。4、任务监控
master节点web查看:
worker节点查看:
job运行任务情况查看: