Hadoop---Hdfs HA即NameNode的高可用

一、为什么引入高可用

因为namenode存在单点失效问题。如果namenode失效了,那么所有的客户端,包括MR作业,均无法读或者写文件,因为你namenode是唯一存储元数据与文件到数据库映射的地方。即使使用了2NN节点,也无法做到做到完全恢复,因为2NN不算是namenode的一个热备。

二、Hdfs的高可用

1、机制

HDFS HA配置了一对活动-备用namenode。当活动namenode失效。备用namendoe就会接管它的任务并开始服务与来自客户端的请求,不会有任何明显的中断。

2、需要做哪些修改

(1)namenode之间需要通过高可用共享存储实现编辑日志的共享

(2)datanode需要同时向两个namenode发送心跳和块汇报信息,因为数据块的映射信息存储在namenode的内存中,而非磁盘。这样发生错误切换时,Standby节点就不需要等待所有的数据节点进行全量数据块汇报,而直接可以切换到Active状态。

(3)辅助namenode的角色被备用namenode所包含,备用namenode为活动的namenode命名空间设置周期性检查点。

3、两种高可用共享存储方式

NFS过滤器和群体日志管理器(QJM)

4、故障转移

默认使用ZooKeeper来确保有且仅有一个活动namenode,每一个namenode运行着一个故障转移控制器,其工作就是监视宿主namenode是否失效(通过一个简单的心跳机制实现)并在namenode失效时进行故障切换。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值