任务背景
在分布式环境中,计算资源(Core和Memory)需要进行管理,为了使得资源利用率高效,则需确保每个作业都有相对公平运行的机会,Spark提出了集群管理器(Cluster Manager)的思想。Spark可以运行在各种集群管理器(Cluster Manager)上,并通过集群管理器(Cluster Manager)访问集群中的机器。
Spark独立集群管理器提供在集群上运行应用的简单方法。Standalone集群管理器由一个主节点(Master)和几个工作节点(Worker)组成,各自都分配有一定量的内存(Memory)和CPU核(Core)。
任务需求
现有已安装JDK的Linux服务器三台,主服务器(master)中存有hadoop-2.7.4.tar.gz、spark-2.2.0-bin-hadoop2.7.tgz压缩包,在三台机器上以事先搭建完Hadoop分布式集群环境,把多个进程分布到不同机器的集群环境。
服务器主机 | master | slave1 | slave2 |
NameNode | 是 | 否 | 否 |
SecondaryNameNode | 是 | 否 | 否 |
dataNode | 否 | 是 | 是 |
ResourceManager | 是 | 否 | 否 |
NodeManager | 否 | 是 | 是 |
任务分析
任务步骤
1.下载版本选型说明
2.解压缩spark-2.2.0-bin-hadoop2.7.tgz
3.修改spark配置文件
4.远程scp分发
5.配置环境变量
6.开启standalone集群守护进程
7.查看各个节点的后台守护线程
8.查看WebUI监控
9.开启spark-shell会话
任务实施过程
1.Spark独立模式集群搭建
知识点
1)Spark独立模式集群搭建
2)Spark运行监控
实验目的
1)掌握Spark独立模式环境搭建及运行监控
实验环境
1)Oracle Linux 7.4
2)JDK 1.8
3)Hadoop 2.7.4
4)Spark 2.2.0
实验步骤
1)实验准备
1.实验准备三台机器分别为master,slave1,slave2
2.单击master机器桌面中的终端
2)Spark独立模式安装与配置
1.解压Spark压缩文件至/opt目录下
[Command 001]
tar -zxvf ~/experiment/file/spark-2.2.0-bin-hadoop2.7.tgz -C /opt
2.修改解压后为文件名为spark
[Command 002]
mv /opt/spark-2.2.0-bin-hadoop2.7 /opt/spark
3.复制spark配置文件,首先在主节点(Master)上,进入Spark安装目录下的配置文件目录{ $SPARK_HOME/conf },并复制spark-env.sh配置文件:
[Command 003]
cd /opt/spark/conf
cp spark-env.sh.template spark-env.sh
4.Vim编辑器打开spark配置文件
[Command 004]
vim spark-env.sh
5.按键Shift+g键定位到最后一行,按键 i 切换到输入模式下,添加如下代码,注意:“=”附近无空格:
[Code 001]
export JAVA_HOME=/usr/lib/java-1.8
export SPARK_MASTER_HOST=master
export SPARK_MASTER_PORT=7077
按键Esc,输入:wq保存退出
6.复制一份spark的slaves配置文件
[Command 005]
cp slaves.template slaves
7.修改spark的slaves配置文件
[Command 006]
vim slaves
8.每一行添加工作节点(Worker)名称,按键Shift+g键定位到最后一行,按键 i 切换到输入模式下,添加如下代码
[Command 007]
slave1
slave2
按键Esc,输入:wq保存退出
9.复制一份spark-defaults.conf
[Command 008]
cp spark-defaults.conf.template spark-defaults.conf
10.通过远程scp指令将Master主节点的Spark安装包分发至各个从节点,即slave1和slave2节点
[Command 009]
scp -r /opt/spark/ root@slave1:/opt/
scp -r /opt/spark/ root@slave2:/opt/
11.配置环境变量:分别在slave1和slave2节点上配置环境变量,修改【/etc/profile】,在文件尾部追加以下内容
[Command 010]
vim /etc/profile
按键Shift+g键定位到最后一行,按键 i 切换到输入模式下,添加如下代码
[Command 011]
#spark install
export SPARK_HOME=/opt/spark
export PATH=$PATH:$SPARK_HOME/bin:$SPARK_HOME/sbin
主节点(master)上执行截图,如下:
从节点1(Slave1)上执行截图,如下:
从节点2(Slave2)上执行截图,如下:
12.按键Esc,按键:wq保存退出
13.分别在Slave1和Slave2上,刷新配置文件
[Command 012]
source /etc/profile
14.开启standalone集群守护进程,分别开启Standalone集群的守护进程:Master和Worker。注意:需要在主节点执行该操作!
[Command 013]
start-master.sh
start-slaves.sh
15.Spark独立集群搭建成功后,查看后台守护线程,如图所示,即Standalone模式搭建成功!!
[Command 014]
jps
16.查看WebUI监控,独立集群管理器开启后,可以通过WebUI监控界面查看集群管理器的相关信息,地址为:http://master:8080 如图所示
17.开启spark-shell会话,向独立集群管理器提交应用,需要把spark://masternode:7070作为主节点参数传–master。指令如下
[Command 015]
spark-shell --master spark://master:7077