在hue里面集成spark2,使用oozie的调度

1.Oozie共享库添加Spark2

   1.1查看当前Oozie的share-lib共享库HDFS目录

oozie admin -oozie http://10.100.200.11:11000/oozie -sharelibupdate

 1.2.在Oozie的/user/oozie/share/lib/lib_20181112142531创建spark2目录

sudo -u oozie hdfs dfs -mkdir /user/oozie/share/lib/lib_20181112142531/spark2

1.3.向spark2目录添加spark2的jars和oozie-sharelib-spark*.jar

注意;这里要将mysql和oracle的驱动包提前放在  /opt/cloudera/parcels/SPARK2/lib/spark2/jars 这个目录下。因为后期可能spark-sql可能会用到这个包

进入上图的目录当中,然后执行文件的上传操作

sudo -u oozie hdfs dfs -put *.jar /user/oozie/share/lib/lib_20181112142531/spark2

cd /opt/cloudera/parcels/CDH/lib/oozie/oozie-sharelib-yarn/lib/spark 然后

sudo -u oozie hdfs dfs -put oozie-sharelib-spark*.jar /user/oozie/share/lib/lib_20181112142531/spark2

  1.4.修改目录权限

sudo -u hdfs hdfs dfs -chmod -R 775 /user/oozie/share/lib/lib_20181112142531/spark2

  1.5 .更新Oozie的share-lib

oozie admin -oozie http://10.100.200.11:11000/oozie -sharelibupdate

1.6.确认spark2已经添加到共享库

oozie admin -oozie http://10.100.200.11:11000/oozie -shareliblist

2.创建Spark2的Oozie工作流

     2.1 新建workflow

   

 在命令行将Spark2自带的example例子上传到自己指定的目录当中。

 

sudo -u hdfs hdfs dfs -put spark-examples_2.11-2.1.0.cloudera3.jar /user/gxg/

这里需要注意的是,这样设置的话oozie还是加载不到spark2的程序,还是相当于spark1的程序在调用。所以这个时候,我们需要配置spark的相关参数设置。

 

求pi的主类名称    org.apache.spark.examples.SparkPi

hue里面设置spark运行的参数: oozie.action.sharelib.for.spark spark2

 

 设置完成之后,我们就可以保存然后启动spark2的程序了。

参考文档如下:

https://blog.csdn.net/worldchinalee/article/details/80594593

https://blog.csdn.net/zkf541076398/article/details/79941598

原文地址:https://www.cnblogs.com/gxgd/p/10019500.html