Spark编译

2018-08-16  本文已影响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/

上一篇下一篇

猜你喜欢

热点阅读