本节书摘来异步社区《Spark Cookbook 中文版》一书中的第1章,第1.2节,作者: 【印度】Rishi Yadav(亚达夫)译者: 顾星竹 , 刘见康 责编: 胡俊英,更多章节内容可以访问云栖社区“异步社区”公众号查看。
1.2 使用二进制文件安装Spark
Spark既可以通过源码安装也可以通过预编译二进制安装,下载地址为http://spark.apache.org。对于标准使用场景来说,二进制安装已经足够了,这里将主要介绍通过二进制文件安装Spark。
1.2.1 准备工作
本书的所有教程都是适用于Ubuntu Linux系统的,不过应该也适用于任何POSIX环境。在安装Spark之前,首先需要安装好Java,并且配置好JAVA_HOME环境变量。
在Linux/Unix系统中,文件和目录的位置是有特定标准的,本书中也同样遵从这些标准,表1-1是一张速查表。
1.2.2 具体步骤
在写作本书时,Spark的当前版本是1.4。请从Spark下载页面http://spark.apache.org/downloads.html查阅最新版本。二进制安装包是使用最新最稳定的Hadoop版本。如果想使用特定的Hadoop版本,推荐使用源码构建,具体请参考下一份教程。
安装步骤如下所示。
1.打开终端,使用如下命令下载二进制安装包。
$ wget http://d3kbcqa49mib13.cloudfront.net/spark-1.4.0-bin-
hadoop2.4.tgz
2.解压二进制安装包。
$ tar -zxf spark-1.4.0-bin-hadoop2.4.tgz
3.重命名包含二进制安装包的文件夹,去除版本信息。
$ sudo mv spark-1.4.0-bin-hadoop2.4 spark
4.把配置文件夹移动到/etc文件夹下,以便之后制作软链接。
$ sudo mv spark/conf/* /etc/spark
5.在/opt目录下新建一个公司名限定的安装目录。本书的本篇教程是使用infoobjects沙盒测试的,所以我们就用infoobjects做目录名。创建目录/opt/infoobjects。
$ sudo mkdir -p /opt/infoobjects
6.把spark目录移动到/opt/infoobjects,因为spark是一个附加软件包。
$ sudo mv spark /opt/infoobjects/
7.设置root为spark主目录的权限用户。
$ sudo chown -R root:root /opt/infoobjects/spark
8.修改spark主目录的权限,0755意味着主用户将拥有读写和执行权限,而群用户和其他用户拥有读和执行权限。
$ sudo chmod -R 755 /opt/infoobjects/spark
9.进入spark主目录。
$ cd /opt/infoobjects/spark
10.创建软链接。
$ sudo ln -s /etc/spark conf
11.在.bashrc文件中添加到PATH变量。
$ echo "export PATH=$PATH:/opt/infoobjects/spark/bin" >> /home/
hduser/.bashrc
12.打开一个新终端。
13.在/var目录下创建log目录。
$ sudo mkdir -p /var/log/spark
14.设置hduser为Spark log目录的权限用户
$ sudo chown -R hduser:hduser /var/log/spark
15.创建Spark tmp目录。
$ mkdir /tmp/spark
16.在以下命令的帮助下配置Spark。
$ cd /etc/spark
$ echo "export HADOOP_CONF_DIR=/opt/infoobjects/hadoop/etc/hadoop"
>> spark-env.sh
$ echo "export YARN_CONF_DIR=/opt/infoobjects/hadoop/etc/Hadoop"
>> spark-env.sh
$ echo "export SPARK_LOG_DIR=/var/log/spark" >> spark-env.sh
$ echo "export SPARK_WORKER_DIR=/tmp/spark" >> spark-env.sh