Spark自带的集群模式(Standalone),Spark/Spark-ha集群搭建
1、Spark自带的集群模式
对于Spark自带的集群模式,Spark要先启动一个老大(Master),然后老大Master和各个小弟(Worker)进行通信,其中真正干活的是Worker下的Executor。关于提交任务的,需要有一个客户端,这个客户端叫做Driver.这个Driver首先和Master建立通信,然后Master负责资源分配,然后让Worker启动Executor,然后Executor和Driver进行通信。效果图如下:
2、Spark集群搭建(先非HA—>再HA)
2.1. 机器准备
A:准备5台Linux服务器(hadoop1(Master),hadoop2(Master),hadoop3(worker),hadoop4(worker),hadoop5(worker))
B:安装好/usr/local/jdk1.8.0_73
2.2. 下载Spark安装包
下载地址:http://spark.apache.org/downloads.html
https://d3kbcqa49mib13.cloudfront.net/spark-2.1.1-bin-hadoop2.7.tgz
上传解压安装包
上传spark-2.1.1-bin-hadoop2.7.tgz安装包到Linux上的/home/tuzq/software
解压安装包到指定位置
[root@hadoop1 software] cd /home/tuzq/software
[root@hadoop1 software] tar -zxvf spark-2.1.1-bin-hadoop2.7.tgz -C /home/tuzq/software
[root@hadoop1 software]# cd spark-2.1.1-bin-hadoop2.7
[root@hadoop1 spark-2.1.1-bin-hadoop2.7]# ls
bin conf data examples jars LICENSE licenses NOTICE python R README.md RELEASE sbin yarn
[root@hadoop1 spark-2.1.1-bin-hadoop2.7]#
2.3. 配置Spark
进入到Spark安装目录
cd /home/tuzq/software/spark-2.1.1-bin-hadoop2.7
进入conf目录并重命名并修改spark-env.sh.template文件
[root@hadoop1 spark-2.1.1-bin-hadoop2.7]# cd conf/
[root@hadoop1 conf]# pwd
/home/tuzq/software/spark-2.1.1-bin-hadoop2.7/conf
[root@hadoop1 conf]# mv spark-env.sh.template spark-env.sh
[root@hadoop1 conf]# vim spark-env.sh
在该配置文件中添加如下配置
export JAVA_HOME=/usr/local/jdk1.8.0_73
export SPARK_MASTER_IP=hadoop1
export SPARK_MASTER_PORT=7077
保存退出
重命名并修改slaves.template文件
mv slaves.template slaves
vi slaves
在该文件中添加子节点所在的位置(Worker节点)
hadoop3
hadoop4
hadoop5
保存退出
配置环境变量:
vim /etc/profile#set spark env
export SPARK_HOME=/home/tuzq/software/spark-2.1.1-bin-hadoop2.7
export PATH=$PATH:$SPARK_HOME/binsource /etc/profile
将配置好的Spark拷贝到其他节点上
cd /home/tuzq/software
scp -r spark-2.1.1-bin-hadoop2.7 root@hadoop2:$PWD
scp -r spark-2.1.1-bin-hadoop2.7 root@hadoop3:$PWD
scp -r spark-2.1.1-bin-hadoop2.7 root@hadoop4:$PWD
scp -r spark-2.1.1-bin-hadoop2.7 root@hadoop5:$PWD
Spark集群配置完毕,目前是1个Master,3个Work,在hadoop1上启动Spark集群
/home/tuzq/software/spark-2.1.1-bin-hadoop2.7/sbin/start-all.sh
运行结果:
如果想停止,就用:
/home/tuzq/software/spark-2.1.1-bin-hadoop2.7/sbin/stop-all.sh
启动后执行jps命令,主节点上有Master进程,其他子节点上有Work进行,登录Spark管理界面查看集群状态(主节点):http://hadoop1:8080/
2.4.Spark-Ha集群配置
到此为止,Spark集群安装完毕,但是有一个很大的问题,那就是Master节点存在单点故障,要解决此问题,就要借助zookeeper,并且启动至少两个Master节点来实现高可靠,配置方式比较简单:
Spark集群规划:hadoop1,hadoop2是Master;hadoop3,hadoop4,hadoop5是Worker
安装配置zk集群,并启动zk集群(hadoop11,hadoop12,hadoop13)
停止spark所有服务,修改配置文件spark-env.sh,在该配置文件中删掉SPARK_MASTER_IP并添加如下配置
export SPARK_DAEMON_JAVA_OPTS="-Dspark.deploy.recoveryMode=ZOOKEEPER -Dspark.deploy.zookeeper.url=hadoop11,hadoop12,hadoop13 -Dspark.deploy.zookeeper.dir=/spark"
效果如下:
将修改的配置同步到hadoop2,hadoop3,hadoop4,hadoop5这些机器上
[root@hadoop1 conf]# pwd /home/tuzq/software/spark-2.1.1-bin-hadoop2.7/conf
[root@hadoop1 conf]# scp -r * root@hadoop2:$PWD
[root@hadoop1 conf]# scp -r * root@hadoop3:$PWD
[root@hadoop1 conf]# scp -r * root@hadoop4:$PWD
[root@hadoop1 conf]# scp -r * root@hadoop5:$PWD
1. 在hadoop1节点上修改slaves配置文件内容指定worker节点(本篇博客上hadoop3,hadoop4,hadoop5为worker,hadoop1和hadoop2 master)
2. 在hadoop1上执行sbin/start-all.sh脚本,然后在hadoop2上执行sbin/start-master.sh启动第二个Master(注意在启动之前先停止启动了的单集群)
[root@hadoop2 ~]# cd $SPARK_HOME
[root@hadoop2 spark-2.1.1-bin-hadoop2.7]# sbin/start-all.sh
[root@hadoop2 ~]# cd $SPARK_HOME
[root@hadoop2 spark-2.1.1-bin-hadoop2.7]# sbin/start-master.sh
3、接着访问http://hadoop1:8080/:
效果如下:
上面的状态是:ALIVE状态
接着访问http://hadoop2:8080/:
上面的状态是:STANDBY状态,通过上面的这些现象可以知道Spark集群已经搭建成功
Spark自带的集群模式(Standalone),Spark/Spark-ha集群搭建相关推荐
- 2021年大数据Spark(六):环境搭建集群模式 Standalone
目录 环境搭建-Standalone 前言 Standalone 架构 集群规划 修改配置并分发 修改slaves 分发到其他机器 修改spark-env.sh 集群启动和 ...
- 用spark自带的示例SparkPi测试scala和spark集群
在按照王家林的文档安装完scala,spark集群和idea-IC开发工具后,用spark自带的示例SparkPi测试scala和spark集群 1.按照王家林文档中的方法把spark自带的Spark ...
- 2021年大数据Spark(八):环境搭建集群模式 Standalone HA
环境搭建-Standalone HA 高可用HA Spark Standalone集群是Master-Slaves架构的集群模式,和大部分的Master-Slaves结构集群一样,存在着Master单 ...
- 五分钟带你玩转Zabbix6.0容器化HA集群
图片 蔡斯 | Zabbix开源社区签约专家 Zabbix资深玩家,SRE高级运维,架构师.精通服务组件监控.模板制作及告警治理. 擅长领域:Zabbix API定制化开发,对接企业蓝鲸,JMS保垒机 ...
- k8s升级,HA集群1.12.0~HA集群1.13.2
k8s升级,此次升级是1.12.0 至1.13.2 准备 # 首先升级master节点的基础组件kubeadm.kubelet.kubectl apt policy kubeadm 找到相应的版本,如 ...
- standalone集群模式
集群角色介绍 Spark是基于内存计算的大数据并行计算框架,实际中运行计算任务肯定是使用集群模式,那么我们先来学习Spark自带的standalone集群模式了解一下它的架构及运行机制. Standa ...
- 04_Flink-HA高可用、Standalone集群模式、Flink-Standalone集群重要参数详解、集群节点重启及扩容、启动组件、Flink on Yarn、启动命令等
1.4.Flink集群安装部署standalone+yarn 1.4.1.Standalone集群模式 1.4.2.Flink-Standalone集群重要参数详解 1.4.3.集群节点重启及扩容 1 ...
- Spark Standalone -- 独立集群模式、Spark 提交任务的两种模式、spark在yarn上运行的环境搭建、自己写的spark代码如何提交到yarn上并运行...
目录 Spark Standalone -- 独立集群模式 Standalone 架构图 Standalone 的搭建 1.上传.解压.重命名 2.配置环境变量 3.修改配置文件 conf 4.同步到 ...
- Spark 集群模式概述
Spark 集群模式概述 本文档简要概述了Spark如何在群集上运行,以使您更容易理解所涉及的组件.通读应用程序提交指南, 以了解有关在集群上启动应用程序的信息. 组件 Spark应用程序在群集上作为 ...
- pythonspark集群模式运行_有关python numpy pandas scipy 等 能在YARN集群上 运行PySpark
有关这个问题,似乎这个在某些时候,用python写好,且spark没有响应的算法支持, 能否能在YARN集群上 运行PySpark方式, 将python分析程序提交上去? Spark Applicat ...
最新文章
- 此时不应有java_Java 锁的知识总结及实例代码
- 【VBA】点击工作簿中的每个单元格,整行整列变色
- FutureTask 实现预加载数据 在线看电子书、浏览器浏览网页等
- 每日一则----算法----二分查找法
- 95-140-132-源码-transform-算子Join
- 决策树可视化案例python_Python决策树demo可视化
- 深度探索C++对象模型
- 15. 注意string实现的多样性
- Rails中select2 实现多选框的效果
- WRF运行wrf.exe出现forrtl: severe (174): SIGSEGV, segmentation fault occurred问题原因与解决合集
- PostgreSQL安装 弹出Error running
- 数据结构(Java)-排序算法-插入排序
- 听云java探针_性能监控工具的配置及使用 - 听云-Server
- 创新式开发探索(三) —— 反思自己的开发活动
- bios密码解锁软件_你知道自己的电脑还有这么一个BIOS程序吗
- obd协议 混动车_OBD协议介绍
- 服务双管齐下,智能语音机器人帮你say hi~
- 巴西法律和税收报告以及其他法律要求》》》本质上是一种税务监控手段;
- 适用于XP的AMD双核优化补丁集
- Python+Vue计算机毕业设计电子发票管理系统o9979(源码+程序+LW+部署)
热门文章
- OpenCASCADE绘制测试线束:数据交换命令之XDE 通用命令
- boost::mpl::negate相关的测试程序
- boost::proto::display_expr相关的测试程序
- boost::phoenix::switch_相关的测试程序
- boost::multiprecision模块debug_adaptor相关的测试程序
- boost::hana::replicate用法的测试程序
- boost::remove_edge用法的测试程序
- boost::describe模块宏BOOST_DESCRIBE_PP_PARSE的测试程序
- ITK:将所有像素的总和缩放为常数
- DCMTK:从DICOM封装的PDF存储对象中提取PDF文件