Spark-2.4.2编译安装

本文详细介绍Spark的下载、编译及配置流程,包括Scala、Maven的安装,环境变量的配置,解决编译过程中的常见问题,以及如何生成Spark环境。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

下载

下载安装包:https://spark.apache.org/downloads.html
官网编译文档:http://spark.apache.org/docs/2.2.0/building-spark.html
在这里插入图片描述
也可以linux:

wget https://www.apache.org/dyn/closer.lua/spark/spark-2.4.5/spark-2.4.5.tgz

安装scala

版本:scala-2.11.8

wget https://downloads.lightbend.com/scala/2.11.8/scala-2.11.8.tgz

解压文件:

tar -zxvf scala-2.11.8.tgz

配置环境变量

vim /etc/profile

#添加内容:
export SCALA_HOME=/wwwzyy/java/spark/scala-2.11.8/
PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HIVE_HOME/bin:$MAVEN_HOME/bin:$SCALA_HOME/bin


#生成配置
source /etc/profile

用到编译自然少不了Maven

注意:版本兼容问题
参考地址:https://www.cnblogs.com/cannel/p/11104190.html

maven 安装后修改mvn 执行文件
指定jvm 参数

export MAVEN_OPTS="-Xmx2g -XX:ReservedCodeCacheSize=512m"

也可以设置临时

[root@hadoop000 spark]# export MAVEN_OPTS="-Xmx2g -XX:ReservedCodeCacheSize=512m"
[root@hadoop000 spark]# echo $MAVEN_OPTS

主角来了spark编译

解压下载的spark

tar -zxvf spark-2.4.2.tgz 
cd spark-2.4.5

修改版本号为固定版本,避免编译时脚本自动获取

vim dev/make-distribution.sh

修改文件中:

**修改**
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.5 #spark 版本
SCALA_VERSION=2.11.8 #scala 版本
SPARK_HADOOP_VERSION=2.6.0-cdh5.9.3 #对应的hadoop版本
SPARK_HIVE=1 #支持的hive
 

在pox.xml 文件中添加

  <repository>
      <id>cloudera</id>
      <name>cloudera Repository</name>
      <url>https://repository.cloudera.com/artifactory/cloudera-repos</url>
   </repository>
#jar包
<dependency>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>build-helper-maven-plugin</artifactId>
    <version>3.0.0</version>
</dependency>
 

开始编译 …编译时间有点长

./dev/make-distribution.sh --name 2.6.0-cdh5.9.3 --tgz -Phadoop-2.6 -Phive -Phive-thriftserver -Pyarn -Pkubernetes -Dhadoop.version=2.6.0-cdh5.9.3

编译完成后生成文件spark-2.4.5-bin-2.6.0-cdh5.9.3

解压文件

tar -zxvf spark-2.4.5-bin-2.6.0-cdh5.9.3.tgz

配置对应的环境变量

vim /etc/profile

PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HIVE_HOME/bin:$MAVEN_HOME/bin:$SCALA_HOME/bin:${SPARK_HOME}/bin

export SPARK_HOME=/wwwzyy/java/spark/spark-2.4.5-bin-2.6.0-cdh5.9.3
source /etc/profile

最后启动spark

[root@hadoop000 bin]# spark-shell

在这里插入图片描述

编译坑点

Could not resolve dependencies for project org.apache.spark:spark-network-yarn_2.11:jar:2.4.5:

1 spark 编译支持的maven 版本是有要求指定以上版本,建议用最新版本

2 有时编译的机器内存不够
注意编辑机器的内存 一般推荐4G以上的内存
export MAVEN_OPTS="-Xmx2g -XX:ReservedCodeCacheSize=512m"
3报错提示:Could not resolve dependencies for project org.apache.spark:spark-launcher_2.11:jar:2.4.5:

./dev/change-scala-version.sh 2.11.8

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

菜鸟-要努力

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值