Hadoop2 上HDFS HA 筹建过程

Hadoop2 上HDFS HA 搭建过程

简介

    HADOOP2的HDFS上引入HA机制以解决单点故障,引入Fedaration机制以解决HDFS拓展性问题。博客将介绍HA机制的原理,以及HDFS HA配置过程。
    HA中有两个NameNode:Active NameNode、Standby NameNode。其中Active NN当做主节点,而Standby NN当做备份的主节点,当Active NN崩掉时,可以将Standby NN切换为主节点。而Active NN和Standby NN之间的元数据信息通过第三方服务JournalNode进程进行同步。
   如果Active NN崩溃之后,可以手动将Standby NameNode切换成Active NameNode,也可以通过Zookeeper服务进行自动切换。

配置

   集群共有5个节点sist17、sist18、sist19、sist20、sist21,由于NameNode的负载较大,因此将其配置在一个节点上,具体配置如下图所示。
   具体参数可以参考:http://pan.baidu.com/s/1dDGc1f7
Hadoop2 上HDFS HA 筹建过程

启动

   所有配置均在Hadoop部署目录${yarn.home.dir}下进行。
   step1.在各个Journal Node节点上,输入以下命令启动Journal Node
         sbin/hadoop-daemon.sh start journalnode
   step2.在[nn1]上,进行格式化,并启动
         bin/hdfs namenode -format
         sbin/hadoop-daemon.sh start namenode
   step3.在[nn2]上,同步nn1的元数据信息,并启动
         bin/hdfs namenode -bootstrapStandby
         sbin/hadoop-daemon.sh start namenode
   经过以上3步,[nn1]和[nn2]均处在standby状态
   step4.[nn1]节点上,将其转换为active状态
         bin/hdfs haadmin -transitionToActive nn1
   step5.在[nn1]上,启动所有datanode
         sbin/hadoop-daemons.sh start datanode
  step6.在[nn1]上,启动yarn
         sbin/start-yarn.sh
 如果要关闭集群,在[nn1]上输入sbin/stop-all.sh即可。
 集群的最终运行效果,如下

Hadoop2 上HDFS HA 筹建过程
Active NN
Hadoop2 上HDFS HA 筹建过程
Standby NN

总结

   HA通过引入Standby Namenode,解决了Hadoop1上HDFS单点故障。如果读者有兴趣的话,可以参考博客,进行HA的配置安装。