在Ubuntu下搭建Spark群集

Posted pypygo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Ubuntu下搭建Spark群集相关的知识,希望对你有一定的参考价值。

这篇文章教你如何搭建Spark的群集:

首先打开三个虚拟机,现在我们需要安装Scala,因为Spark是基于Scala开发的,所以需要安装Scala。在Ubuntu下安装Scala很简单,我们只需要运行

sudo apt-get install scala

就可以安装Scala了。

安装完成后运行scala -version可以看到安装的Scala的版本,我现在2.11版,安装目录是在/usr/share/scala-2.11 。

接下来下载Spark。到官方网站,找到最新版的Spark的下载地址,选择Hadoop版本,

http://spark.apache.org/downloads.html

wget http://spark下载地址

当下载完毕后解压文件:

tar xvf spark-2.0.2-bin-hadoop2.7.tgz

接下来我们需要将解压的文件夹移动到指定目录,因为之前我们Hadoop安装到/usr/local/hadoop,所以我们也可以把Spark放在/usr/local/spark下:

sudo mv spark-2.0.2-bin-hadoop2.7 /usr/local/spark

进入spark文件夹下的conf文件夹,里面有个spark-env.sh.template文件,是spark环境变量设置的目标,我们可以复制一个出来:

cp spark-env.sh.template spark-env.sh

然后编辑该文件

vi spark-env.sh

在文件的末尾我们添加上以下内容:

技术图片
export SCALA_HOME=/usr/share/scala-2.11 
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 
export HADOOP_HOME=/usr/local/hadoop 
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop 
SPARK_MASTER_IP=master 
SPARK_LOCAL_DIRS=/usr/local/spark 
SPARK_DRIVER_MEMORY=1G 
export LD_LIBRARY_PATH=/usr/local/hadoop/lib/native/:$LD_LIBRARY_PATH
技术图片

这里的内容是根据我虚拟机的环境来的,如果安装的版本和路径不一样,可以根据实际情况更改。

接下来设置slaves文件。

cp slaves.template slaves
vi slaves

将内容改为

slave01

slave02

Spark在一台机器上就算配置完毕,接下来在另外两台机器上也做一模一样的配置即可。

启动Spark

在master上,我们先启动Hadoop,然后运行

/usr/local/spark/sbin/start-all.sh

便可启动Spark。

运行jps看看Java进程:

2929 Master 
2982 Jps 
2294 SecondaryNameNode 
2071 DataNode 
1929 NameNode 
2459 ResourceManager 
2603 NodeManager

发现比Hadoop启动的时候多了Master进程。

切换到slave01节点上,运行JPS,看看进程:

1889 Worker 
1705 NodeManager 
1997 Jps 
1551 DataNode

这里比Hadoop的时候多了一个Worker进程。说明我们的Spark群集已经启动成功。

下面访问Spark的网站:

http://192.168.100.40:8080/

可以看到2个worker都启动。

技术图片

最后,我们运行一下Spark的示例程序:

/usr/local/spark/bin/run-example SparkPi 10 --slave01 local[2]

可以在结果中找到

Pi is roughly 3.14XXXXX

说明我们运行成功了。

 

以上是关于在Ubuntu下搭建Spark群集的主要内容,如果未能解决你的问题,请参考以下文章

如何在Ubuntu下搭建Spark集群

Ubuntu下搭建单机Hadoop和Spark集群环境

使用 Docker 搭建 Hadoop 集群 和 Spark On Yarn

Intellij Idea搭建Spark开发环境

在 Ubuntu16.04 中搭建 Spark 单机开发环境 (JDK + Scala + Spark)

Spark|Ubuntu环境搭建