环境搭建
下载安装包:
1) 官网 wget https://archive.apache.org/dist/spark/spark-2.4.2/spark-2.4.2.tgz
2) GitHub下载
3) git clone https://github.com/apache/spark.git
解压
tar -zxvf spark-2.4.2.tgz
配置环境变量
JAVA_HOME
编译
官网查看编译指南
将cloudera库加入到pom的repository中去(cloudera的不在默认maven库中)
<repository>
<id>cloudera</id>
<url>https://repository.cloudera.com/artifactory/cloudera-repos/</url>
</repository>
修改./dev/make-distribution.sh
脚本
手动修改各个VERSION的值(自动寻找版本比较耗时间,所以手动定义能加快编译时间)
VERSION=$("$MVN" help:evaluate -Dexpression=project.version $@ 2>/dev/null\
| grep -v "INFO"\
| grep -v "WARNING"\
| tail -n 1)
SCALA_VERSION=$("$MVN" help:evaluate -Dexpression=scala.binary.version $@ 2>/dev/null\
| grep -v "INFO"\
| grep -v "WARNING"\
| tail -n 1)
SPARK_HADOOP_VERSION=$("$MVN" help:evaluate -Dexpression=hadoop.version $@ 2>/dev/null\
| grep -v "INFO"\
| grep -v "WARNING"\
| tail -n 1)
SPARK_HIVE=$("$MVN" help:evaluate -Dexpression=project.activeProfiles -pl sql/hive $@ 2>/dev/null\
| grep -v "INFO"\
| grep -v "WARNING"\
| fgrep --count "<id>hive</id>";\
# Reset exit status to 0, otherwise the script stops here if the last grep finds nothing\
# because we use "set -o pipefail"
echo -n)
修改成
VERSION=2.4.2
SCALA_VERSION=2.12.8
SPARK_HADOOP_VERSION=2.6.0-cdh5.14.2
SPARK_HIVE=1
修改成自己的配置信息
原:./dev/make-distribution.sh --name custom-spark --pip --r --tgz -Psparkr -Phadoop-2.7 -Phive -Phive-thriftserver -Pmesos -Pyarn -Pkubernetes
./dev/make-distribution.sh --name 2.6.0-cdh5.14.2 --tgz -Phadoop-2.6 -Phive -Phive-thriftserver -Pyarn -Pkubernetes -Dhadoop.version=2.6.0-cdh5.14.2
编译完成会生成一个spark-2.4.2-bin-2.6.0-cdh5.14.2.tgz文件,解压之后就可以部署使用了。