教育行业A股IPO第一股(股票代码 003032)

全国咨询/投诉热线:400-618-4000

大数据培训:HDFS的高可用框架

更新时间:2022年06月28日11时27分 来源:传智教育 浏览次数:

好口碑IT培训

  在HDFS中,NameNode是系统的核心节点,它存储了各类元数据的信息,并负责管理文件系统的命名空间和客户端对文件的访问。但是,在Hadoop1.0版本中,NameNode只有一个,一旦这个NameNode发生故障,就会导致整个Hadoop集群不可用,也就是发生了单点故障问题。

  为了解决单点故障问题,Hadoop2.0中的HDFS增加了对高可用的支持。在高可用的HDFS集群中,通常有两台或者两台以上的机器充当NameNode,在任意时间内,都要保证至少有一台机器处于活动(Active)状态。处于活动状态的NameNode负责处理客户端请求,而处于备用状态的NameNode则处于“随时待命”状态。一旦处于活动状态NameNode节点发生故障,那么处于备用状态的NameNode会立即接管它的任务并开始处理客户端请求,保证业务不会出现明显中断,不影响系统的正常对外服务。接下来,通过一张图来描述HDFS的高可用框架,如图6-3所示。

  图6-3所示的高可用框架中,共包含了两个NameNode,其中一个处于活动状态,一个处于备用状态,活跃状态的NameNode将更新的数据写入共享存储系统中,备用状态的NameNode会一直监听共享存储系统,一旦发现有新的数据,就会立即从共享存储系统中将这些数据加载到自己内存中,从而保证与活跃状态的数据同步。

HDFS的高可用框架

  图6-3 HDFS的高可用架构

  Zookeeper是一种在HDFS高可用集群集中提供自动故障转移功能的服务,它为每个NameNode都分配了一个故障恢复控制器(Zookeeper Failover Controller,ZKFC),该控制器用于监控NameNode的健康状态,并通过“心跳”方式定期和Zookeeper保持通信。一旦NameNode发生故障,Zookeeper会通知备用状态的NameNode启动,使其成为活动状态去处理客户端请求,从而实现高可用。

0 分享到:
和我们在线交谈!