HDFS原理详解_HA(高可用)

  • Post author:
  • Post category:其他




一.HA的作用

HA(High Available, 高可用)消除了NameNode的单点故障问题,使得整个系统的可用度变高,这是在各种分布式系统中常见的一个名词



二.Hadoop做到高可用的方法

  1. 去掉SecondaryNameNode,添加一个NameNode。
  2. HA的解决方案中要有2个(Hadoop3中可以更多)NameNode
  3. 这些NameNode不能同时起作用,起作用的叫做Active,其余的叫Standby,客户端的文件操作请求只能向Active NameNode发送



三.Standby的作用

  • Standby NameNode有SecondaryNameNode的作用,但是它要做更多的事,当Active NameNode出问题不能再对客户端提供服务时,Standby NameNode会挺身而出变成Active NameNode,当Active NameNode复活时只能屈身做Standby NameNode
  • Standby NameNode的日常工作也是定时合并fsimage与edits,然后把合并后的新fsimage传给Active NameNode。与使用SecondaryNameNode的方案不同,Standby NameNode也要与DataNode通信,DataNode需要把一些重要数据(比如自己的文件副本变化情况、自己的心跳)发给所有的NameNode,这样才能做到在Active 死掉时用Standby NameNode快速代替



四.Standby的更新

与Active共享edits日志文件,当Activity NameNode 向edits文件中写入新的操作日志时,Standby NameNode马上从中读出来,再合并到fsimage中。所以,只有Activate NameNode才可以写edits,Standby NameNode只能读edits



五.edits共享方式

  • NFS文件共享
  • QJM日志共享系统



版权声明:本文为feizuiku0116原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。