首页 > 其他分享 >Spark基础入门-第四章:Spark环境搭建-StandAlone-HA

Spark基础入门-第四章:Spark环境搭建-StandAlone-HA

时间:2023-01-24 13:31:13浏览次数:61  
标签:StandAlone Standby 集群 node1 Master Spark HA spark


Spark是大数据体系的明星产品,是一款高性能的分布式内存迭代计算框架,可以处理海量规模的数据。下面就带大家来学习今天的内容!


一、StandAlone HA 运行原理

导论

Spark Standalone集群是Master-Slaves架构的集群模式,和大部分的Master-Slaves结构集群一样,存在着Master 单点故障(SPOF)的问题。

Spark基础入门-第四章:Spark环境搭建-StandAlone-HA_spark

高可用HA

如何解决这个单点故障的问题, Spark提供了两种方案:

1.基于文件系统的单点恢复(Single-Node Recovery with Local File System)--只能用于开发或测试环境。

2.基于zookeeper的Standby Masters(Standby Masters with ZooKeeper)--可以用于生产环境。

ZooKeeper提供了一个Leader Election机制,利用这个机制可以保证虽然集群存在多个Master,但是只有一个是Active 的,其他的都是Standby。当Active的Master出现故障时,另外的一个Standby Master会被选举出来。由于集群的信息 ,包括Worker, Driver和Application的信息都已经持久化到文件系统,因此在切换的过程中只会影响新Job的提交,对 于正在进行的Job没有任何的影响。加入ZooKeeper的集群整体架构如下图所示。

Spark基础入门-第四章:Spark环境搭建-StandAlone-HA_文件系统_02

二、基于Zookeeper实现HA

官方文档: ​​http://spark.apache.org/docs/3.1.2/spark-standalone.html#standby-masters-with-zookeeper​

Spark基础入门-第四章:Spark环境搭建-StandAlone-HA_大数据_03

此时大家可以直接参考部署文档<<spark部署文档.doc>> 中的HA构造方案

查看WebUI

默认情况下,先启动Master就为Active Master,如下截图所示:

Spark基础入门-第四章:Spark环境搭建-StandAlone-HA_zookeeper_04

如果将node1的Master进程Kill掉, node2的Master在1Min-2Min左右会接替node1的Master作用。 也就是在执行过程中,使用jps查看Active Master进程ID,将其kill,观察Master是否自动切换与应用运行完成结束。(需要等待1-2min)。

三、测试运行

3.1 Wordcount测试

resultRDD = sc.textFile("hdfs://node1:8020/pydata/words.txt") \

.flatMap(lambda line: line.split(" ")) \

.map(lambda x: (x, 1)) \

.reduceByKey(lambda a, b: a + b)

resultRDD .collect()

Spark基础入门-第四章:Spark环境搭建-StandAlone-HA_zookeeper_05

停止集群: /export/server/spark/sbin/stop-all.sh

3.2 关闭Master验证HA

关闭活跃的Master进程, 等待30秒左右

查看standby是否接管集群.

标签:StandAlone,Standby,集群,node1,Master,Spark,HA,spark
From: https://blog.51cto.com/u_8238263/6022250

相关文章

  • ScreenFlow.app 打开显示 you don't have permission to open the application 解决方
    问题:当打开screenflow时提示youdon'thavepermissiontoopentheapplication解决:在控制台执行如下命令sudoxattr-drcom.apple.quarantine/Applications/Sc......
  • kaptcha验证码不显示解决办法
    前端Vue+后端Springboot、Mybatis的弱鸡项目不显示具体情况:前后端启动项目都不报错且验证码请求200,但是验证码无法显示后端配置类如下:CorsConfig:packagecom......
  • 创建harbor镜像仓库密钥
    1、创建密钥kubectlcreatesecretdocker-registryharbor-keys--docker-server=skg.harbor.bjshxg.com:80--docker-username=admin--docker-password=harbor123456......
  • 大数据必知必会:Hadoop(4)高可用集群安装
    (大数据必知必会:Hadoop(4)高可用集群安装)安装前准备高可用集群环境下,至少需要3台服务器,这里准备5台。IP地址主机名称角色10.0.0.5node1NameNode10.0.0.6n......
  • [20221227]Adaptive Cursor Sharing & 直方图.txt
    [20221227]AdaptiveCursorSharing&直方图.txt--//前一阵子在做优化时我想当然以为重新分析取消某个日期字段的直方图信息,就不会出现大量子光标问题,结果发现我错了.--......
  • [20221228]Adaptive Cursor Sharing & 直方图2.txt
    [20221228]AdaptiveCursorSharing&直方图2.txt--//前一阵子在做优化时我想当然以为重新分析取消某个日期字段的直方图信息,就不会出现大量子光标问题,结果发现我错了.-......
  • 玩客云安装hassio
    docker版安装hass镜像,首次安装比较慢需要等几分钟启动(10分钟左右)dockerrun-d--restart=always--name="home-assistants"-v/data/homeassistant/config:/config......
  • [AGC031E] Snuke the Phantom Thief
    ProblemStatementAmuseumexhibits$N$jewels,Jewel$1,2,...,N$.ThecoordinatesofJewel$i$are$(x_i,y_i)$(themuseumcanberegardedasatwo-dimen......
  • having
    having的使用作用:用来过滤数据练习:查询部门10,20,30,40,这4个部门中最高工资比10000高的部门信息selectdepartment_id,max(salary)fromemployeesgroupbydepartment_id......
  • el-input聚焦失效Autofocus processing was blocked because a document already has
    问题目前是想实现双击元素时,切换元素,显示出input框,输入新title,失去焦点再切换回去<div@dblclick="editTitle()"><spanv-if="draggable">{{title}}</span><el-input......