Hadoop2.0 Federation 和 HA理解笔记

目录

一、Federation:联盟

HDFS的理解

NameSpaces的理解

二、HA:高可用

HA架构


一、Federation:联盟

HDFS的理解

HDFS主要由两部分组成:

   1、 Namespace:

        namespace包含目录、文件、块,它支持所有与命名空间相关的文件系统操作,例如创建,删除,修改和列出文件和目录

   2、Block Storage Service:包含两部分

        Block Management:

            1、所有的Datanode通过心跳机制想所有的Namenode注册

            2、处理block reports和维护block的位置

            3、处理block操作,例如创建,删除,修改和获取块位置

            4、管理副本,处理block的复制和删除过渡复制的快

        Storage:

             Datanodes通过在本地文件系统上存储块并允许读/写访问来提供。

NameSpaces的理解

    通过多NameNode federation(联盟),实现多个Namenode的水平扩展,而且每个NameNode是相互独立,互不干扰,DataNode作为NameNode的公共存储,每个DataNode向集群中每一个NameNode注册,定期发送心跳和block report,并处理来自每一个Namenode的指令

注:每个DataNode中不同Namenode对应的文件通过文件夹进行隔离,可用过ViewFs管理

                                                     

Block Pool:是属于单个命名空间的一组块。 Datanodes存储集群中所有block pool的block信息。 每个Block Pool都是独立管理的。 这允许命名空间为新block生成Block ID,而无需与其他命名空间协调。 Namenode失败不会阻止Datanode为群集中的其他Namenode提供服务。

Namespace Volume:一个Namespace和他的block pool统称为Namespace Volume,它是一个独立的管理单位。 删除Namenode /Namespace时,将删除Datanodes上的相应Block Pool。 在群集升级期间,每个Namespace Volume都作为一个单元升级。

ClusterID:用于标识集群中的所有节点。 格式化Namenode时,将提供或自动生成此标识符。 此ID应用于将其他Namenode格式化为群集。

二、HA:高可用

Quorum Journal Manager(QJM)功能配置和管理HA HDFS群集

在Hadoop2.0之前,Namenode是hdfs集群中的单点故障,每个集群中都有一个Namenode,如果该Namenode不可用,整个集群将不可用。

HA架构

        在HA集群中,有独立的两台计算机配置NameNode(要求具有相同的硬件配置),在任何时间点,其中一个NameNode处于actiove,另一个处于standby。Active NameNode负责集群中的所有客户端操作,而Standby只是充当从属服务器,维持足够的状态以在必要时提供快速故障转移。

        为了Standby保持其状态与Active节点同步,两个节点都与一组称为“JournalNodes”(JN)的单独守护进程通信。当Active节点执行任何namespace修改时,它会将修改记录持久地记录到大多数这些JN中。待机节点能够从JN读取编辑,并且不断观察它们对edit log的更改。当备用节点看到编辑时,它会将它们应用到自己的命名空间。如果发生故障转移,Standby将确保在将自身升级为Active状态之前已读取JounalNodes的所有编辑内容。这可确保在发生故障转移之前完全同步命名空间状态。

        为了提供快速故障转移,备用节点还必须具有关于群集中块的位置的最新信息。为了实现这一点,DataNode配置了两个NameNode的位置,并向两者发送块位置信息和心跳。

        对于HA群集的正确操作而言,一次只有一个NameNode处于活动状态至关重要。否则,命名空间状态将在两者之间快速分歧,冒着数据丢失或其他不正确结果的风险。为了确保这个属性并防止“裂脑”,JournalNodes只允许一个NameNode可以执行写操作。在故障转移期间,要激活的NameNode将简单地接管写入JournalNodes的角色,这将有效地阻止其他NameNode继续处于Active状态,从而允许新的Active安全地进行故障转移。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值