浅谈Master的HA

本文深入探讨了Spark集群中Master高可用性的实现方案,包括使用Zookeeper自动管理Master切换、FileSystem手动重启Master、自定义HA机制及默认无持久化配置。阐述了Master切换期间对正在运行的程序无影响,但无法提交新任务的特点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

## 浅谈Master的HA ##

[睡着的水-hzjs-2016.8.21]

一、Master 的HA解析

---1、生产环境下一般采用Zookeeper做HA,且建议为3台Master , Zookeeper会自动管理Master的切换;

---2、采用Zookeeper做HA的时候,Zookeeper会负责保存整个Spark集群运行时候的元数据:Workers \ Driver \ Applications \Executors;

---3、Zookeeper 遇到当前Active级别的Master出现故障的时候会从Standby Masters 中选取出一台作为Active Master,但是要注意:被选举后到成为真正的Active Master 之间需要从Zookeeper中获取集群当前运行状态的元数据信息并进行恢复;

---4、在Master 切换的过程中,所有的已经在运行的程序皆正常运行!因为SparkApplication在运行前就已经通过Cluster Manager 获得了计算资源,所以在运行时Job 本省的调度与处理和Master是没有关系的;

---5、在Master的切换过程中唯一的影响是不能提交新的Job;一方面不能够提交新的应用程序给集群,因为只有Active Master 才能接收新的程序的提交请求;另外一方面,已经运行的程序中也不能因为Action操作触发新的Job的提交请求;

二、Master 的四种方式

---1、四种方式分别是:Zookeeper \ FileSystem \ Custom \ None

---2、需要说明的是:

a、Zookeeper 是自动管理Master

b、FileSystem 的方式在Master出现故障后需要手动重新启动机器,机器重启后会立即成为Active级别的Master来对外提供服务(接收应用程序的提交的请求、接收新的job 运行请求);

c、Custom 的方式是用来自定义的Master HA的实现。对于高级用户特别有用;

d、None 是默认的情况,当我们狭隘安装Spark 集群就是采用的这用方式,该方式不会持久化集群的数据,Master启动后会立即管理集群。






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值