往期博文讲过Hadoop集群的搭建,这次分享下Spark的安装和配置,Spark是基于HDFS的大规模数据处理引擎。
Spark的特点
- 是基于内存的大数据综合处理框架,速度至少数倍于MapReduce
- 适用于处理较多迭代次数的任务
- 基于RDD(弹性分布式数据集)实现容错和并行
- 提出了DAG(Directed Acyclic Graph有向无环图)
- 支持多种语言的API(如Java、Scala、Python等)
- 提供大数据处理的一栈式解决方案:Spark SQL、Spark Streaming、MLlib(machine learning)、GraphX
- 多种运行模式:local、Standalone、cluster 等,可运行在Yarn、Mesos、EC2上
Spark环境搭建
博主是三台Ubuntu虚拟机搭建的集群:
一、安装JDK(建议JDK7以上)
二、安装Hadoop 2.x
三、安装Scala(2.10.4)
四、安装Spark Standalone
由于第一和二步之前已经分享过,可以翻下我的博文,这里不再赘述。
安装Scala
1.获取并解压安装包,在用户主目录下
tar –zvxf ~/scala-2.10-2.10.4.tgz
2.配置环境变量
sudo gedit /etc/profile
加入如下代码:
export SCALA_HOME=/home/hduser/scala-2.10.4
export PATH=$PATH:$SCALA_HOME/bin
使文件生效:
source /etc/profile
3.发送至slave1, slave2
scp -r scala-2.10.4 node02:~/
scp -r scala-2.10.4 node03:~/
分别在node02, node03上重复步骤2
4.在三个节点上分别验证
scala –version
安装spark
1.获取并解压安装包
tar –zvxf spark-1.4.0-bin-hadoop2.4.tgz
2.配置环境变量
sudo gedit /etc/profile
加入如下代码:
export SPARK_HOME=/home/hduser/spark-1.4.0-bin-hadoop2.4/
export PATH=$PATH:$SPARK_HOME/bin
使文件生效:
source /etc/profile
3.配置文件
cd spark-1.4.0-bin-hadoop2.4/conf
(1) 配置spark-env.sh
cp spark-env.sh.template spark-env.sh
在spark-env.sh中追加如下代码:
export HADOOP_CONF_DIR=/home/hduser/hadoop-2.2.0
export JAVA_HOME=/usr/local/java/jdk1.7.0_51
export SCALA_HOME=/home/hduser/scala-2.10.4
export SPARK_MASTER_IP=192.168.71.129
export SPARK_MASTER_PORT=7077
export SPARK_MASTER_WEBUI_PORT=8080
export SPARK_WORKER_PORT=7078
export SPARK_WORKER_WEBUI_PORT=8081
export SPARK_WORKER_CORES=2
export SPARK_WORKER_INSTANCES=1
export SPARK_WORKER_MEMORY=2g
export SPARK_JAR=/home/hduser/spark-1.4.0-bin-hadoop2.4/lib/spark-assembly-1.4.0-hadoop2.4.0.jar
推荐四个端口参数不变,环境路径及其他参数根据实际配置自行更改。
(2) 配置spark-defaults.conf
cp spark-defaults.conf.template spark-defaults.conf
在spark-defaults.conf中追加下面代码
spark.master=spark://192.168.71.129:7077
(3) 配置spark-slaves
cp slaves.template slaves
在slaves中追加下面代码
192.168.149.133
192.168.149.134
删除原有的localhost,不然本机同时作为一台worker。
4.发送至slave1, slave2
scp –r ~/spark-1.4.0-bin-hadoop2.4 node02:~/
scp –r ~/spark-1.4.0-bin-hadoop2.4 node03:~/
分别在每个节点上重复步骤2
启动spark
先启动Hadoop
start-all.sh
可用jps
命令查看进程是否正常启动
进入spark文件目录
cd spark-1.4.0-bin-hadoop2.4
和Hadoop相同,spark支持分步启动和懒人启动
分布:
sbin/start-master.sh
sbin/start-slaves.sh
懒人(博主 ==’)
sbin/start-all.sh
sbin/stop-all.sh
最后是shell界面
bin/spark-shell
jps
web界面