要使用Spark SQL,必须要安装Spark。Spark有两种运行模式,一种是Spark on Yarn,另一种是Standalone模式。本章将带领大家完成Spark的Standalone模式的安装。
Spark目前的运行环境只能是Linux,本书中的运行环境如下:
●Linux使用的是Ubuntu14.04 LTS。
●Spark为1.6.3版本。
●Hadoop是2.6.0版本。
简要说一下Spark的安装步骤,首先需要一个Linux环境,同时已经安装了Hadoop,然后去Spark官网(http://spark.apache.org/)下载Spark安装包,将它解压并进行配置。
注意,本章中所有安装配置都是最小化运行配置。
1.Spark软件包解压
tar-zxvf spark-1.6.3-bin-hadoop2.6.gz
解压完成后查看Spark下的子目录:
hadoop@hadoop:/opt/software/spark-1.6.3-bin-hadoop2.6$ls
bin conf ec2 lib licenses pythonREADME.mdsbin
CHANGES.txt data examples LICENSE NOTICE R RELEASE
上面的内容就是Spark下的子目录,其中bin和sbin目录中存放Spark的基本命令,例如启动集群、启动spark-sql等,conf目录存放Spark的配置文件。
2.Spark的配置
(1)配置spark-env.sh配置文件
进入Spark的配置目录:
cd spark-1.6.3-bin-hadoop2.6/conf
输入vim命令,编辑spark-env.sh文件:
vim spark-env.sh
在spark-env.sh配置文件中加入以下配置项,设置JAVA、SCALA、HADOOP、HA-DOOP_CONF的环境变量:
SPARK_MASTER_IP设置Master结点地址、SPARK_WORKER_MEMORY设置Worker结点内存大小、SPARK_EXCUTOR_MEMORY设置EXCUTOR的内存大小、SPARK_DRIVER_MEMORY设置DRIVER的内存大小、SPARK_WORK_CORES设置Worker的内核数。
(2)配置系统环境变量
输入vim命令,编辑系统的环境变量文件~/.bashrc:
Shell:vim~/.bashrc
在环境变量中加入以下配置项:
●设置Spark的环境变量SPARK_HOME。
●设置PATH环境变量,将SPARK的bin,sbin目录加入PATH中。(www.xing528.com)
(3)环境变量生效
在命令行输入source~/.bashrc,使修改的~/.bashrc配置文件生效。
source~/.bashrc
(4)配置spark-default.conf文件
输入mv命令,将spark-default.conf.template模板更名为spark-default.conf文件名。
输入vim命令,编辑spark-default.conf配置文件。
mv spark-default.conf.template spark-default.conf
vim spark-default.conf
在spark-default.conf配置文件中加入以下配置项:
●spark.excutor.extraJavaOptions,配置Excutor的JVM选项,输出GC的详细日志;-Dkey=value方式指定系统属性:例如Dnumbers的值可以设置为"one two three"。
●spark.eventLog.enabled设置为true:启动事件日志,记录Spark事件日志。
●spark.event-Log.dir,配置事件日志的目录。
●spark.yarn.historyServer.address,设置historyServer的地址及端口。
●spark.history.fs.logDirectory,设置历史应用程序的日志目录URL。
(5)配置slaves文件
在slaves配置文件中加入worker结点的hostname主机名:
●使用Vim编辑slaves配置文件。
●slaves文件的每一行配置为worker结点的主机名,每行配置一个结点。
(6)启动Spark集群
Spark已经安装完成,输入start-all.sh命令启动Spark集群:
cd$SPARK_HOME/sbin
./start-all.sh
(7)Spark集群启动验证
输入jps命令,Master主机上会显示master进程。
输入jps命令,在worker结点上会显示worker进程。
说明已经成功安装好了Spark。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。