在线客服
扫描二维码
下载博学谷APP
扫描二维码
关注博学谷微信公众号
今天,小编准备了今天,小编准备了Namenode HA 知识点讲解,现在分享给大家。

HA(High Available), 高可用,是保证业务连续性的有效解决方案,一般有两个或两个以上的节点,分为 活动节点( Active )及 备用节点( Standby))。用于实现业务的不中断或短暂中断 NN 是 HDFS 集群的单点故障点。在 HA 具体实现方法不同情况下,HA 框架的流程是一致的,不一致的就是如何存储、管理、同步 edits 编辑日志文件。
QJM/Qurom Journal Manager,基本原理就是用 2N+1 台 JournalNode 存储EditLog,每次写数据操作有>=N+1 返回成功时即认为该次写成功,数据不会丢失了在 HA 模式下,datanode 需要确保同一时间有且只有一个 NN 能命令DN。
FailoverController 主要包括三个组件:
HealthMonitor:监控 NameNode 是否处于 unavailable 或 unhealthy 状态。当前通过 RPC 调用 NN 相应的方法完成。
ActiveStandbyElector: 监控 NN 在 ZK 中的状态。
ZKFailoverController: 订阅 HealthMonitor 和 ActiveStandbyElector 的事件,并管理 NN 的状态,另外 zkfc 还负责解决 fencing(也就是脑裂问题)。
ZKFailoverController 主要职责:
健康监测:周期性的向它监控的 NN 发送健康探测命令,从而来确定某个NameNode 是否处于健康状态,如果机器宕机,心跳失败,那么 zkfc 就会标记它处于一个不健康的状态
会话管理:如果 NN 是健康的,zkfc 就会在 zookeeper 中保持一个打开的会话,如果 NameNode 同时还是 Active 状态的,那么 zkfc 还会在Zookeeper 中占有一个类型为短暂类型的 znode,当这个 NN 挂掉时,这个 znode 将会被删除,然后备用的 NN 将会得到这把锁,升级为主 NN,同时标记状态为 Active。
当宕机的 NN 新启动时,它会再次注册 zookeper,发现已经有 znode 锁了,便会自动变为 Standby 状态,如此往复循环,保证高可靠,需要注意,目前仅仅支持最多配置 2 个 NNmaster 选举:通过在 zookeeper 中维持一个短暂类型的 znode,来实现抢占式的锁机制,从而判断那个NameNode 为 Active 状态。
以上就是Namenode HA 知识点讲解,希望可以为帮助到这方面有疑问的同学。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
大数据Hbase面试宝典(上)
经历了水深火热的大数据学习,终于拨开云雾见天明了,同学们离成功就差了一步,那就是拿到大数据工程师的Offer。本文详细为同学们整理了一份大数据Hbase面试宝典。
9791
2019-07-03 19:05:17
大数据面试题 Hadoop的联邦机制
大数据学习需要掌握很多技术知识点,包括Linux、Zookeeper、Hadoop、Redis、HDFS、MapReduce、Hive、lmpala、Hue、Oozie、Storm、Kafka、Spark、Scala、SparkSQL、Hbase、Flink、机器学习等。今天主要和大家分享一下Hadoop的联邦机制。
16860
2019-07-18 23:40:42
大数据面试题 Hive数仓开发的基本流程
数据仓库是面向主题的、集成的、不可更新的、随时间的变化而不断变化的,这些特点决定了数据仓库的系统设计不能采用同开发传统的OLTP数据库一样的设计方法。数据仓库的设计大体上可以分为以下几个步骤:概念模型设计、技术准备工作、逻辑模型设计、物理模型设计、数据仓库生成、数据仓库运行与维护。下面我们来看看Hive数仓开发的基本流程。
13837
2019-07-15 16:07:11
大数据面试题之分布式资源调度框架Yarn
Yarn作为一个资源管理、任务调度的框架,其重要性不言而喻。尤其是在近些年的大数据面试中,更是面试题的重点知识之一。为了大家在面试的时候,能够准备的更加充分,小编整理了一份有关分布式资源调度框架Yarn的大数据面试题,内容包括Yarn的架构、工作流程、调度器Scheduler。
10539
2019-09-12 11:00:53
大数据工程师常见面试题 编程模型
在大数据工程师的面试过程中,编程模型的相关问题常常是绕不过去的一个考点。同时编程模型也是大数据工程师工作中非常重要的知识技能。下面就来讲讲Spout、Bolt、并行度、消息不丢失这几方面的内容,感兴趣的小伙伴就赶紧接着看下去吧!
9035
2019-10-14 18:46:44
