spark编译

编译spark之前需要的准备。

  1. 操作系统虚拟机

    我的系统是win7 64位,使用VMVare或者Virtualbox,基本不想太折腾的思想,我使用的是VMVare。

  2. Linux

    使用CentOS。

  3. jdk

    使用jdk1.7 linux 64位。

  4. maven3

上面这些都准备好了之后,到spark的网站http://spark.apache.org/downloads.html上下载最新版。目前是1.3.0

使用VMVare安装CentOs,并使用VMVare的共享文件夹功能,将windows上下载的jdk,maven3,spark1.3.0安装包放到CentOs上进行安装。默认的共享文件夹在CentOs的目录是/mnt/hgfs/下。

  1. 安装jdk。

    解压安装包: tar -zvxf   jdk-7u67-linux-x64.gz

    配置环境变量:

    vim ~/.bashrc
    内容:
    export JAVA_HOME=/usr/java/jdk1.7.0_67
    export JRE_HOME=$JAVA_HOME/jre
    export PATH=$JAVA_HOME/bin:$PATH
    export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH

    (注:java环境变量一定要在~/.bashrc配置,这是因为spark的shell脚本会ssh远程执行命令,这种模式属于non-interactive + non-login shell,是不会加载/etc/profile等文件,但会加载~/.bashrc文件,详细见http://www.kuqin.com/shuoit/20141113/343188.html)

  2. 安装maven3

    vim ~/.bashrc

    内容:
    #set maven environment
    M2_HOME=/usr/apache-maven-3.2.5
    export MAVEN_OPTS="-Xms256m -Xmx512m -XX:MaxPermSize=256m"
    export PATH=$M2_HOME/bin:$PATH

    同事建议使用oschina的镜像,但是oschina的不见得就比默认的中央库快,具体原因不明。

    内存建议尽量的多,512好慢,改成1024会快很多。

  3. 编译spark

    解压spark的压缩包,执行里面的make-distribution.sh

    我使用sh make-distribution.sh完全无反应,但直接执行make-distribution.sh就没问题。网上的说法是sh开头的是软连接,指定使用bash shell执行.sh脚本,不需要权限,而直接执行,需要用户有执行权限,并且使用脚本的第一行指定的shell进行执行,第一行不指定默认使用bash shell。

    执行脚本后,如果你的jdk是1.7,会提示编译的代码无法在1.6下执行,是否继续。选择继续后就是漫长的等待。

    maven3本身的依赖加上sprak的依赖,非常的多。期间可能会出现编译错误:

    [error] Required file not found: sbt-interface.jar

    [error] See zinc -help for information about locating necessary files

    网上有人说只要重新编译即可:build/mvn

    但是我的不可以,我是将虚拟机关机之后重新执行脚本才可以。 

  4. 检查编译是否成功

    执行脚本:./sbin/start-master.sh
    浏览器输入:http://ip:8080 可以看到spark运行状况

 

你可能感兴趣的:(安装,spark,编译)