cdh4b1之HDFS的HA(High Availability)原理简介

0 引入

         以前Hadoop版本中,NameNodeHDFS集群的单点故障(single point of failure,SPoF)SPoF指系统中这个部件失效或停止运转将会导致整个系统不能工作。而这在下面两种情况出现:

         (1) 意外事件如机器crash,集群直到重启NameNode操作执行后才可用;

         (2) 计划维修事件,如NameNode上的软硬件升级会导致NameNode一段宕机时间。

         HDFS HA提供在一个集群中配置两台冗余NN来解决上述问题,是一种双机热备。这可以在NN崩溃时快速的故障恢复,同时在自发管理的计划维修时快速失效备援。当前hadoop版本是hadoop-0.23.0-cdh4b1

         HA主要机制是:两个单独机器运行NN,在所有时刻只有一台出于active状态,而另外一台出于standby状态。active NN负责客户端对集群的所有操作,而Standby NN作为从设备只是保存足够的状态来进行快速的故障恢复。

 

HA总体流程图

         Block location: 为了快速failoverstandby NN必须知道这个的相关信息。为了达到此目的,所有DN上都配置了此两个NN,并且发送block locationheartbeat到两个NN上。

         至关重要的一点:只有一个Active NN.两个NN都是active即所谓脑裂情景(split-brain scenario),因此管理员必须设置一个对共享存储的fencing method(绝缘方法),当不能确定前Active NN不会自己重新变成active时,需要切断其对共享存储的访问权限,如此便能使新active NN安全的故障恢复。

         standby NN也执行namespace的状态检查,因此HA集群不需要运行Secondary NN, Checkpoint Node, Backup Node

 

下面是详细的配置安装,请参见CDH4_High_Availability_Guide_b1.pdf。cloudera 官网有 http://www.cloudera.com/.或者在我资源里下载看(免费):http://download.csdn.net/detail/liuxingjiaofu/4238395

1 软硬件配置

1.1硬件配置

(1)NN机器,两台配置相同的机器来运行active standby NN, 并且这两台机器的配置和用non-HA集群时 NN的配置相同。

(2)两个NN都有读写权限的共享存储:多路径到存储,自身的冗余(disk, network, power)。鉴于上面这些,推荐共享存储服务器用高级专用的网络连接式存储(NAS)设备,而非简单的LinuxServer

1.2 软件配置

NamesService ID

NameNode ID

2 HA部署

3 HA管理

 

你可能感兴趣的:(Hadoop)