您的位置:首页 > 编程语言

【分布式编程】三——基于VirtualBox的Spark完全分布式环境

2018-02-07 11:13 337 查看

前言

Spark的搭建依赖于Hadoop,因此本文基于之前分布式Hadoop环境,JDK、Hadoop等已安装好,

系统环境

虚拟机:VirtualBox

Linux:Ubuntu 16.04 LTS

HAdoop 2.7.5

IDE:Intellij IDEA

JDK 1.8.0_151

Scala-2.12.4

Spark-2.2.1

操作步骤

安装Scala

下载Scala-2.12.4

解压到当前目录

tar -zxvf scala-2.12.4.tgz


将解压后的文件夹移动到
/usr


sudo mv scala-2.12.4/ /usr/


配置环境变量

sudo vim /etc/profile


添加如下代码,路径根据情况自己修改

export SCALA_HOME=/usr/scala-2.12.4
export PATH=$SCALA_HOME/bin:$PATH


更新环境变量配置

source /etc/profile


验证是否安装成功

scala -version




安装Spark

下载Spark,由于Spark基于Hadoop,且之前已经安装好Hadoop,所以下载没有绑定Hadoop的版本,所以选择spark-2.2.1-bin-without-hadoop.tgz



解压到当前目录

tar -zxvf spark-2.2.1-bin-without-hadoop.tgz


将解压后的文件夹移动到
/usr/local/


sudo mv spark-2.2.1-bin-without-hadoop/ /usr/


配置环境变量

sudo vim /etc/profile


添加以下代码

export SPARK_HOME=/usr/spark-2.2.1-bin-without-hadoop
export PATH=$PATH:$SPARK_HOME/bin
export PATH=$PATH:$SPARK_HOME/sbin


更新环境变量配置

source /etc/profile


Spark配置

【注】此处以
master
主机为例,其他从机作相应更改

配置
spark-env.sh

cd /usr/spark-2.2.1-bin-without-hadoop/conf/
sudo cp spark-env.sh.template spark-env.sh
sudo vim spark-env.sh


添加以下代码

export SPARK_HOME=/usr/spark-2.2.1-bin-without-hadoop
export SPARK_DIST_CLASSPATH=$(/usr/hadoop-2.7.5/bin/hadoop classpath)
export JAVA_HOME=/usr/jdk1.8.0_151
export SCALA_HOME=/usr/scala-2.12.4
export HADOOP_HOME=/usr/hadoop-2.7.5
export HADOOP_CONF_DIR=/usr/hadoop-2.7.5/etc/hadoop
export SPARK_MASTER_IP=master
export SPARK_MASTER_HOST=master
export SPARK_LOCAL_IP=master
export SPARK_WORKER_MEMEORY=1g
export SPARK_EXECUTOR_MEMEORY=1g
export SPARK_DRIVER_ME
4000
MORY=1g
export SPARK_WORKER_CORES=1


【注】

SPARK_LOCAL_IP
为本地地址,从机需要更改为自己的IP

配置
slaves

sudo cp slaves.template slaves
sudo vim slaves


添加所有从机的主机名

node1
node2


启动集群

因为Spark基于Hadoop,所以需要先启动Hadoop。

start-all.sh


再启动Spark,进入到Spark安装目录下的
sbin
文件夹

cd /usr/spark-2.2.1-bin-without-hadoop/sbin


执行
sbin
文件夹下的
start-all.sh
,若直接执行
start-all.sh
,启动的是Hadoop

./start-all.sh


查看集群

查看进程

jps


主机上显示以下进程



从机显示以下进程



通过Web查看状态

在主机
master
上打开浏览器,访问
http://localhost:8080




运行pyspark

进入到spark安装目录下的
bin
文件夹

cd /usr/spark-2.2.1-bin-without-hadoop/bin/


运行
pyspark


./pyspark




运行spark-shell

进入到spark安装目录下的
bin
文件夹

cd /usr/spark-2.2.1-bin-without-hadoop/bin/


运行
spark-shell


./sparkshell




以上,证明spark配置成功。

关闭集群

同样进入到Spark安装目录下的
sbin
文件夹

cd /usr/spark-2.2.1-bin-without-hadoop/sbin
./stop-all.sh
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: