Spark安装和集群部署

来源:互联网 发布:淘宝数据监控 编辑:程序博客网 时间:2024/05/21 10:34

一、搭建Hadoop分布式集群

参考 Hadoop分布式集群安装 进行搭建

二、Spark安装和集群部署

1.安装Scala

Spark对配套的Scala版本有规定,所以要根据自己的实际情况来选择Scala的版本。

如下图所示:

由于Hadoop我们安装的是2.6.4,故我们选择上图中与Hadoop配套的Spark,因而选择Scala的版本为2.11。

我下载的Scala为scala-2.11.8.tgz

(1)解压并放到相应的目录

tar -zxvf scala-2.11.8.tgz -C /opt/     #解压到/opt/目录下cd /opt/mv scala-2.11.8.tgz scala   #重名为scala

(2)配置环境变量

sudo vi /etc/profile

在文件最后添加如下内容:

# set scala envexport SCALA_HOME=/opt/scalaexport PATH=$PATH:$SCALA_HOME/bin

(3)在终端输入scala,进入Scala的命令交互式界面,则安装成功。

注意:

由于Spark需要运行在三台机器上,另外两台同样需要安装Scala。

2.安装Spark和集群部署

Spark需要运行在三台机器上,这里先安装 Spark 到 master 这台机器上,另外两台的安装方法一致,也可以使用SSH的scp命令把master机器上安装好的Spark目录复制到另外两台机器相同目录下。

(1)下载并解压

从Spark官网下载Spark安装包,我下载的是spark-2.0.0-bin-hadoop2.6.tgz。下载完后解压,并存放到自己指定的存储目录下:

sudo tar -zxvf spark-2.0.0-bin-hadoop2.6.tgz -C /optcd /optmv spark-2.0.0-bin-hadoop2.6 spark

(2)配置环境变量

sudo vi /etc/profile

在文件末尾添加:

# set spark envexport SPARK_HOME=/opt/sparkexport PATH=$PATH:$SPARK_HOME/bin

并使配置文件生效:

source /etc/profile

(3)配置Spark,需要配置spark-env.shslaves文件。

配置spark-env.sh文件:

cd /opt/spark/confcp spark-defaults.conf.template spark-env.shvi spark-env.sh

配置内容如下:

export JAVA_HOME=/opt/javaexport SCALA_HOME=/opt/scalaexport HADOOP_HOME=/opt/hadoopexport HADOOP_CONF_DIR=/opt/hadoop/etc/hadoopexport SPARK_MASTER_IP=master

SPARK_MASTER_IP: Spark集群的Master节点的IP地址。

配置slaves文件:

cp slaves.template slavesvi slaves

把Worker节点的主机名都添加进去,修改后的内容为:

slave1slave2

(4) 按照上述配置,将Spark安装到另外两台机器上(slave1、slave2)

(5) 启动并测试集群的情况

1)当前我们只使用Hadoop的HDFS文件系统,所以可以只启动Hadoop的HDFS文件系统。

start-dfs.sh

2)用Spark的sbin目录下的start-all.sh命令启动Spark集群,这里需要注意的是,在命令终端必须写成./start-all.sh,因为在Hadoop的sbin目录下也有一个start-all.sh可执行文件。

3)此时使用JPS在master节点、slave1节点和slave2节点分别可以查看到新开启的Master和Worker进程。

hadoop@master:~$ jps3570 NameNode3908 Master3978 Jps3790 SecondaryNameNode
hadoop@slave1:~$ jps1826 Worker1939 Jps1689 DataNode
hadoop@slave2:~$ jps1826 Worker1939 Jps1689 DataNode

4)可以进入Spark的WebUI页面,访问master:8080,如下如所示(8080为Spark的WebUI监听端口,7077为Spark集群的Master内部监听端口)。

5)进入Spark的bin目录,使用spark-shell命令可以进入spark - shell控制台:

hadoop@master:~$ spark-shell Setting default log level to "WARN".To adjust logging level use sc.setLogLevel(newLevel).16/08/15 13:18:38 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable16/08/15 13:18:40 WARN spark.SparkContext: Use an existing SparkContext, some configuration may not take effect.Spark context Web UI available at http://192.168.1.104:4040Spark context available as 'sc' (master = local[*], app id = local-1471238319919).Spark session available as 'spark'.Welcome to      ____              __     / __/__  ___ _____/ /__    _\ \/ _ \/ _ `/ __/  '_/   /___/ .__/\_,_/_/ /_/\_\   version 2.0.0      /_/Using Scala version 2.11.8 (Java HotSpot(TM) 64-Bit Server VM, Java 1.8.0_91)Type in expressions to have them evaluated.Type :help for more information.scala> 

我们也可以在WebUI页面输入http://master:4040从Web的角度了解Spark-Shell。

这时,Spark集群部署成功。

0 0
原创粉丝点击