Spark 1.6.1分布式集群环境搭建

一、软件准备

scala-2.11.8.tgz

spark-1.6.1-bin-hadoop2.6.tgz

二、Scala 安装

1、master 机器

(1)下载 scala-2.11.8.tgz, 解压到 /opt 目录下,即: /opt/scala-2.11.8。

(2)修改 scala-2.11.8 目录所属用户和用户组。

sudo chown -R hadoop:hadoop scala-2.11.8

(3)修改环境变量文件 .bashrc , 添加以下内容。

# Scala Env
export SCALA_HOME=/opt/scala-2.11.8
export PATH=$PATH:$SCALA_HOME/bin

运行 source .bashrc 使环境变量生效。

(4) 验证 Scala 安装

2、Slave机器

slave01 和 slave02 参照 master 机器安装步骤进行安装。

三、Spark 安装

1、master 机器

(1) 下载 spark-1.6.1-bin-hadoop2.6.tgz,解压到 /opt 目录下。

(2) 修改 spark-1.6.1-bin-hadoop2.6 目录所属用户和用户组。

sudo chown -R hadoop:hadoop spark-1.6.1-bin-hadoop2.6

(3)  修改环境变量文件 .bashrc , 添加以下内容。

# Spark Env
export SPARK_HOME=/opt/spark-1.6.1-bin-hadoop2.6
export PATH=$PATH:$SPARK_HOME/bin:$SPARK_HOME/sbin

运行 source .bashrc 使环境变量生效。

(4) Spark 配置

进入 Spark 安装目录下的 conf 目录, 拷贝 spark-env.sh.template 到 spark-env.sh。

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

编辑 spark-env.sh,在其中添加以下配置信息:

export SCALA_HOME=/opt/scala-2.11.8
export JAVA_HOME=/opt/java/jdk1.7.0_80
export SPARK_MASTER_IP=192.168.109.137
export SPARK_WORKER_MEMORY=1g
export HADOOP_CONF_DIR=/opt/hadoop-2.6.4/etc/hadoop

JAVA_HOME 指定 Java 安装目录;
SCALA_HOME 指定 Scala 安装目录;
SPARK_MASTER_IP 指定 Spark 集群 Master 节点的 IP 地址;
SPARK_WORKER_MEMORY 指定的是 Worker 节点能够分配给 Executors 的最大内存大小;
HADOOP_CONF_DIR 指定 Hadoop 集群配置文件目录。

将 slaves.template 拷贝到 slaves, 编辑其内容为:

master
slave01
slave02

即 master 既是 Master 节点又是 Worker 节点。

2、slave机器

slave01 和 slave02 参照 master 机器安装步骤进行安装。

四、启动 Spark 集群

1、启动 Hadoop 集群

Hadoop 集群的启动可以参见之前的一篇文章 Hadoop 2.6.4分布式集群环境搭建,这里不再赘述。启动之后,可以分别在 master、slave01、slave02 上使用 jps 命令查看进程信息。

2、启动 Spark 集群

(1) 启动  Master 节点

运行 start-master.sh,结果如下:

可以看到 master 上多了一个新进程 Master。

(2) 启动所有 Worker 节点

运行 start-slaves.sh, 运行结果如下:

在 master、slave01 和 slave02 上使用 jps 命令,可以发现都启动了一个 Worker 进程

(3) 浏览器查看 Spark 集群信息。

访问:http://master:8080, 如下图:

(4) 使用 spark-shell

运行 spark-shell,可以进入 Spark 的 shell 控制台,如下:

(5) 浏览器访问 SparkUI

访问 http://master:4040, 如下图:

 可以从 SparkUI 上查看一些 如环境变量、Job、Executor等信息。

 至此,整个 Spark 分布式集群的搭建就到这里结束。

五、停止 Spark 集群

1、停止 Master 节点

运行 stop-master.sh 来停止 Master 节点。

使用 jps 命令查看当前 java 进程

可以发现 Master 进程已经停止。

2、停止 Worker 节点

运行 stop-slaves.sh 可以停止所有的 Worker 节点

使用 jps 命令查看 master、slave01、slave02 上的进程信息:

可以看到, Worker 进程均已停止,最后再停止 Hadoop 集群。

六、遗留问题

设置的 SCALA_HOME 没有生效,Spark 启动时用的是自带的 Scala 2.10.5 版本。

猜你喜欢

转载自my.oschina.net/jackieyeah/blog/659741