Spark on Angel同时支持yarn和local两种运行模型,从而方便用户在本地调试程序。
spark on Angel本质上是一个spark的application,但是多了一个附属的application。在任务提交成功后,集群上会出现两个独立的application,一个是spark application,一个是angel-PS application,两个application不关联,一个spark on Angel的作业删除,需要用户或者外部系统同时kill两个。
Sona部署流程
安装spark
- 参考spark安装
安装sona
编译sona
编译环境依赖
* Jdk >= 1.8
* Maven >= 3.0.5
* Protobuf >= 2.5.0 需要和hadoop环境自带的protobuf版本保持一致。目前hadoop官方发布包使用的是2.5.0版本,所以推荐使用2.5.0版本,除非你自己使用更新的protobuf版本编译了hadoop。
-
- git clone https://github.com/Angel-ML/sona.git
-
- 编译:进入源码根目录
mvn clean package -Dmaven.test.skip=true
编译完成后,在源码根目录dist/target目录下会生成一个发布包:sona-0.1.0-bin.zip
编译时如果没有安装protobuf或者protobuf版本与angle的2.5.0不一致,会出现错误:
我安装官方文档要求安装的Protobuf版本为3.3>2.5.0,但是在编译的时候出现错误,提示如下:
Failed to execute goal com.github.igor-petruk.protobuf:protobuf-maven-plugin:0.6.3:run (default) on project angel-ps-core: Protobuf installation version does not match Protobuf library version
这里235服务器上是3.3版本的protobuf,因此在本机mac上编译,然后把发布包上传到服务器上供集群使用
如果是没有安装protobuf:
mac环境下做如下安装,我就解决了