spark主节点Master挂掉后,备用节点(standby)如何恢复集群状态
2017-08-20 23:37
666 查看
作为master-slave模式的spark集群,主节点难免会有挂掉的情况,但是在生产上,这是无法忍受的,需要有备用的Master节点,即master-standby,访问master:808,其中Status的值为STANDBY的即为备用master节点。
那么备用节点在恢复集群的时候,得依靠zookeeper,zookeeper中保存了集群中所有的的Worker(管理自己所在的slave节点的应用)、Driver(记录正在运行的程序)、Application(应用程序本身),主节点Master挂掉之后,zookeeper依靠自身的选主机制,从standby节点中选取一个节点作为leader,即作为Master(active),其他的standby作为fllower,那么原来挂掉的Master再启动后,会变为standby状态,也作为fllower。
在这里值得注意的是:Master故障挂掉,在切换standby的节点的时候,集群是不接收客户端发送过来的作业的,要直到standby节点恢复集群状态并状态更新为active状态时才接收提交的作业。在集群切换恢复Master的过程中,是不会影响worker中作业的运行的,因为整个过程Master不参与,并且Master分配资源的方式为粗粒度(一次性分配完所需要的资源,缺点:如果一个应用程序还有一个stage没运行完,这整个应用的所有资源都无法释放。细粒度:每次需要的时候再去请求资源,缺点:启动慢、没办法复用、通信会消耗时间。)不过一般大数据集群都使用粗粒度方式(效率至上)
那么备用节点在恢复集群的时候,得依靠zookeeper,zookeeper中保存了集群中所有的的Worker(管理自己所在的slave节点的应用)、Driver(记录正在运行的程序)、Application(应用程序本身),主节点Master挂掉之后,zookeeper依靠自身的选主机制,从standby节点中选取一个节点作为leader,即作为Master(active),其他的standby作为fllower,那么原来挂掉的Master再启动后,会变为standby状态,也作为fllower。
在这里值得注意的是:Master故障挂掉,在切换standby的节点的时候,集群是不接收客户端发送过来的作业的,要直到standby节点恢复集群状态并状态更新为active状态时才接收提交的作业。在集群切换恢复Master的过程中,是不会影响worker中作业的运行的,因为整个过程Master不参与,并且Master分配资源的方式为粗粒度(一次性分配完所需要的资源,缺点:如果一个应用程序还有一个stage没运行完,这整个应用的所有资源都无法释放。细粒度:每次需要的时候再去请求资源,缺点:启动慢、没办法复用、通信会消耗时间。)不过一般大数据集群都使用粗粒度方式(效率至上)
相关文章推荐
- Spark Master 如何分配集群资源?
- 恢复spark挂掉的节点
- Spark集群master节点实现HA配置
- 如何在Spark集群的work节点上启动多个Executor?
- greenplum如何激活,同步,删除standby和恢复原始master
- 大数据:Spark Standalone 集群调度(三)多Master节点的可用性
- 无法从节点 XXX 状态 2 获取集群磁盘 3 的 SCSI 第 83h 页 VPD 描述符
- Spark技术内幕:Master的故障恢复
- Spark系列(六)Master注册机制和状态改变机制
- Coherence代理节点在离开集群时的恢复
- SQL恢复master数据库方法 只有mdf文件的数据库如何恢复
- es集群master节点配置组合
- winform如何保持TreeView节点展开和折叠的状态
- hadoop HA中active节点挂掉standby节点不自动切换问题
- 一步一步完成如何在现有的CDH集群中部署一个与CDH版本不同的spark
- 如何解决恢复DC备份(状态)墓碑时间限制?
- Spark技术内幕:Master的故障恢复
- 如何一步一步删除(linux & UNIX)环境下 oracle 11g 集群节点
- Hadoop集群异常:两个NameNode全部为StandBy状态
- 如何记住ASPxTreeView节点的展开状态