美文网首页
Spark编译

Spark编译

作者: 糊涂蟲 | 来源:发表于2018-08-16 13:56 被阅读0次

一、所需环境

1、CentOS 6.5

2、jdk1.8.0_4.5

3、maven 3.3.9

4、scala 2.11.8 

5、git:直接输入命令:sudo yum install git

二、下载源码,安装依赖

官网:http://spark.apache.org

在download页面选择2.2.0源码下载,右键复制链接,在linux中下载:

[hadoop@hadoop001 source]$ wget https://archive.apache.org/dist/spark/spark-2.2.0/spark-2.2.0.tgz

下载页面

官方文档要求,编译spark之前环境要求:

Maven版本:Maven-3.3.9 or newer 安装链接

Java版本:Java 8+  安装链接 

Scala:2.10+  安装链接

三、编译源码

1、解压 

[hadoop@hadoop001 source]$ tar -xzvf spark-2.2.0.tgz

2、设置maven使用内存

添加至环境变量,一劳永逸

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

3、spark自带的编译方式

cd spark 2.2.0

./build/mvn -DskipTests clean package  不指定版本编译出来全根据pom.xml

./build/mvn -Pyarn -Phadoop-2.7 -Dhadoop.version=2.7.3 -DskipTests clean package

-Phive -Phive-thriftserver 带hive

-Pdocker-integration-tests -pl :spark-docker-integration-tests_2.11  docker

由于前面Hadoop版本是cdh

mvn -Pyarn -Phive -Phive-thriftserver -Phadoop-2.6 -Dhadoop.version=2.6.0-cdh5.7.0 -DskipTests clean package

4、make-distribution编译

由于上面的编译方式不会生成.tgz文件, 使用make-distribution编译,会产成一个tgz包,拷贝到生产环境安装。spark根目录下的make-distribution.sh已经封装好了方法一中maven的命令,以及MAVEN_OPTS的配置,所以编译时只需要把hadoop和yarn相关参数传进去即可。本次我们选择使用这种方式来编译spark

修改/dev/make-distribution.sh,将maven检查的步骤全部注释掉,并且增加变量配置各软件的版本号(修改以上配置是为了让spark编译过程跳过一些版本检查,加快编译速度)

[hadoop@hadoop001 spark-2.2.0]$ vi dev/make-distribution.sh

注释掉vesion一段,添加如下内容

VERSION=2.2.0

SCALA_VERSION=2.11

SPARK_HADOOP_VERSION=2.6.0-cdh5.7.0

SPARK_HIVE=1

然后在修改pom.xml文件添加clouderad repos(默认使用apache官方的仓库)

<repository>

        <id>cloudera</id>

        <name>Cloudera Repository</name>

        <url>https://repository.cloudera.com/artifactory/cloudera-repos/</url>

</repository>

然后编译

[hadoop@hadoop001 spark-2.2.0]$ ./dev/make-distribution.sh \

--name 2.6.0-cdh5.7.0 \

--tgz \

-Dhadoop.version=2.6.0-cdh5.7.0 \

-Dhadoop2.6 \

-Phive -Phive-thriftserver \

-Pyarn

四、spark安装

1.解压并安装到~/app

[hadoop@hadoop001 software]$ tar -zxvf spark-2.2.0-bin-2.6.0-cdh5.7.0.tgz -C ~/app/

2.配置环境变量

vi ~/.bash_profile

export SPARK_HOME=/home/hadoop/app/spark-2.2.0-bin-2.6.0-cdh5.7.0

export PATH=$SPARK_HOME/bin:$PATH

source ~/.bash_profile

3.目录说明

    bin:存放客户端相关脚本

    conf:存放配置文件

    data:存放测试数据

    examples:存放spark自带测试用例   *****

    jars:存放spark响应的jar包   最佳实践

    sbin:存放服务端相关的脚本:启停集群

    yarn:存放yarn相关的jar包

4.启动

[hadoop@hadoop001 ~]$ spark-shell

web页面:http://localhost:4040/jobs/

相关文章

  • Spark Streaming实时流处理-2. Spark实战环

    0. 目录 Spark源码编译 Spark环境搭建 Spark简单使用 1. Spark源码编译 http://s...

  • Spark On Hive 部署和配置

    Spark On Hive,通过spark sql模块访问和使用Hive,默认Spark预编译(pre-built...

  • Spark3源码在IDEA中的编译

    Spark3源码编译 之前可以在linux环境进行spark源码的修改和编译,没有在笔记本上走通过编译流程,今天使...

  • 源码编译搭建Spark3.x环境

    Spark源码编译 官方文档: https://spark.apache.org/docs/latest/buil...

  • 编译Spark源码支持Hive并部署

    1、Spark源码下载 Spark官网提供了预编译版本的Spark,但是要获得hive支持的Spark版本必须自己...

  • Spark 编译

    选择的最新版的Spark,目前是2.3.0。编译Spark源码,使用自己安装的maven进行编译,其中-T参数是设...

  • 【Spark】Spark 编译调试

    自动补全CLASSPATH 参数:export SPARK_PREPEND_CLASSES=1在编译完Spark源...

  • spark编译

    背景   通常来讲,spark的使用离不开hadoop生态,在spark的官网中已经有针对hadoop通用版本(比...

  • Spark编译

    一、所需环境 1、CentOS 6.52、jdk1.8.0_4.53、maven 3.3.94、scala 2.1...

  • Spark编译

    Spark编译有三种方式:SBT(Simple Build Tool),Maven,Make-distribut...

网友评论

      本文标题:Spark编译

      本文链接:https://www.haomeiwen.com/subject/vbevpftx.html