Spark 1.6.1分佈式集羣環境搭建

1、軟件準備

scala-2.11.8.tgzjava

spark-1.6.1-bin-hadoop2.6.tgzshell

2、Scala 安裝

一、master 機器

(1)下載 scala-2.11.8.tgz, 解壓到 /opt 目錄下,即: /opt/scala-2.11.8。瀏覽器

(2)修改 scala-2.11.8 目錄所屬用戶和用戶組。bash

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 使環境變量生效。oop

(4) 驗證 Scala 安裝spa

二、Slave機器

slave01 和 slave02 參照 master 機器安裝步驟進行安裝。.net

3、Spark 安裝

一、master 機器

(1) 下載 spark-1.6.1-bin-hadoop2.6.tgz,解壓到 /opt 目錄下。scala

(2) 修改 spark-1.6.1-bin-hadoop2.6 目錄所屬用戶和用戶組。code

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 節點。

二、slave機器

slave01 和 slave02 參照 master 機器安裝步驟進行安裝。

4、啓動 Spark 集羣

一、啓動 Hadoop 集羣

Hadoop 集羣的啓動能夠參見以前的一篇文章 Hadoop 2.6.4分佈式集羣環境搭建,這裏再也不贅述。啓動以後,能夠分別在 master、slave0一、slave02 上使用 jps 命令查看進程信息。

二、啓動 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 分佈式集羣的搭建就到這裏結束。

5、中止 Spark 集羣

一、中止 Master 節點

運行 stop-master.sh 來中止 Master 節點。

使用 jps 命令查看當前 java 進程

能夠發現 Master 進程已經中止。

二、中止 Worker 節點

運行 stop-slaves.sh 能夠中止全部的 Worker 節點

使用 jps 命令查看 master、slave0一、slave02 上的進程信息:

能夠看到, Worker 進程均已中止,最後再中止 Hadoop 集羣。

6、遺留問題

設置的 SCALA_HOME 沒有生效,Spark 啓動時用的是自帶的 Scala 2.10.5 版本。

相關文章
相關標籤/搜索