CDH6.3.2集成Spark3.X
准备工作
java 8,maven3.4以上
开始编译
- 从gitee上面拉取对应的分支
git clone -b v3.1.2 https://gitee.com/apache/Hudi.git# 编译./dev/make-distribution.sh --name 3.0.0-cdh6.3.2 --tgz -Pyarn -Phadoop-3.0 -Phive -Phive-thriftserver -Dhadoop.version=3.0.0-cdh6.3.2 -X --settings=/root/software/settings.xml
- 修改pom文件
增加cloudera maven仓库<repositories><repository><id>central</id><!-- This should be at top, it makes maven try the central repo first and then others and hence faster dep resolution --><name>Maven Repository</name><url>https://repo1.maven.org/maven2</url><releases><enabled>true</enabled></releases><snapshots><enabled>false</enabled></snapshots></repository><repository><id>cloudera</id><url>https://repository.cloudera.com/artifactory/cloudera-repos/</url></repository></repositories>
修改pom文件中的hadoop版本
默认是带的hadoop 3.2 ,需要将 hadoop.version 属性改为 3.0.0-cdh6.3.2
注意3:如果scala 版本为2.10.x ,需要进行
./dev/change-scala-version.sh 2.10
如果为2.11.x,需要进行
./dev/change-scala-version.sh 2.11
注意4:
推荐使用一下命令编译:
./dev/make-distribution.sh --name 3.0.0-cdh6.3.2 --tgz -Pyarn -Phadoop-3.0 -Phive -Phive-thriftserver -Dhadoop.version=3.0.0-cdh6.3.2 -X
我们用的是spark的make-distribution.sh脚本进行编译,这个脚本其实也是用maven编译的,
- –tgz 指定以tgz结尾
- –name后面跟的是我们Hadoop的版本,在后面生成的tar包我们会发现名字后面的版本号也是这个(这个可以看make-distribution.sh源码了解)
- -Pyarn 是基于yarn
- -Dhadoop.version=3.0.0-cdh6.3.2 指定Hadoop的版本。
spark-3.1.2-bin-3.0.0-cdh6.3.2.tgz
部署
tar -zxvf spark-3.1.2-bin-3.0.0-cdh6.3.2.tgz -C /opt/spark3/
cp /etc/spark/conf/spark-env.sh /opt/spark3/conf/
vim /opt/spark3/conf/spark-env.sh

ln -s /etc/hive/conf/hive-site.xml ./conf/hive-site.xml
测试

