• 在线客服

  • 扫描二维码
    下载博学谷APP

  • 扫描二维码
    关注博学谷微信公众号

  • 意见反馈

原创 Namenode HA 知识点讲解

发布时间:2019-07-04 16:13:08 浏览 6732 来源:博学谷资讯 作者:照照

    今天,小编准备了今天,小编准备了Namenode HA 知识点讲解,现在分享给大家。

     

    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面试宝典(中) 下一篇: 大数据Hbase面试宝典(下)

相关推荐 更多

热门文章

  • 前端是什么
  • 前端开发的工作职责
  • 前端开发需要会什么?先掌握这三大核心关键技术
  • 前端开发的工作方向有哪些?
  • 简历加分-4步写出HR想要的简历
  • 程序员如何突击面试?两大招带你拿下面试官
  • 程序员面试技巧
  • 架构师的厉害之处竟然是这……
  • 架构师书籍推荐
  • 懂了这些,才能成为架构师
  • 查看更多

扫描二维码,了解更多信息

博学谷二维码