StreamingPro中的 streamingpro-manager 提供了部署,管理Spark任务的Web界面。轻量易用。
编译SF框架:
git clone https://github.com/allwefantasy/ServiceFramework.git
cd ServiceFramework
mvn install -Pscala-2.11 -Pjetty-9 -Pweb-include-jetty-9
编译streamingpro-manager:
git clone https://github.com/allwefantasy/streamingpro.git
mvn clean package -pl streamingpro-manager -am -Ponline -Pscala-2.11 -Pshade
之后你应该在streamingpro-manager/target有个jar包
streamingpro-manager 的resource 目录有个sql文件,大家可以根据其创建表库。
java -cp ./streamingpro-manager-0.4.15-SNAPSHOT.jar streaming.App \
-yarnUrl yarn resource url地址 比如master.host:8080 \
-jdbcPath /tmp/jdbc.properties \
-envPath /tmp/env.properties
jdbcPath指定jdbc连接参数,比如:
url=jdbc:mysql://127.0.0.1:3306/spark_jobs?characterEncoding=utf8
userName=wow
password=wow
你也可以把这些参数写到启动参数里。但是前面加上jdbc.前缀就可。比如:
java -cp ./streamingpro-manager-0.4.15-SNAPSHOT.jar streaming.App \
-yarnUrl yarn resource url地址 比如master.host:8080 \
-jdbc.url a \
-jdbc.userName a \
-jdbc. password b
envPath 里面放置的是你为了使用spark-submit 需要配置的一些参数,比如:
export SPARK_HOME=/opt/spark-2.1.1;export HADOOP_CONF_DIR=/etc/hadoop/conf;cd $SPARK_HOME;
第一个界面是上传Jar包:
WX20170716-165826@2x.png
第二界面是提交任务:
WX20170716-165856@2x.png
勾选依赖的jar包,选择主jar包,然后做一些参数配置,然后点击提交会进入一个进度界面。
第三个界面是管理页面。
WX20170716-165808@2x.png
任务能够被监控是要求已经在Yarn上申请到了applicationid。所以如果提交失败了,点击监控按钮是无效的。如果你的程序已经提交过一次并且获得过applicationid,那么你点击监控后,程序30s会扫描一次,并且自动拉起那些没有在运行的程序(比如失败了或者自己跑完了)。