Hadoop 双机热备-AvatarNode部署

Hadoop 双机热备

--AvatarNode部署

部署环境

虚拟机5台(1G内存,40G硬盘,ubuntu操作系统,Hadoop-0.20.2

hadoop1-virtual-machine  10.10.11.250 AvatarNode(primary)

hadoop2-virtual-machine  10.10.11.152 AvataDataNode

hadoop3-virtual-machine  10.10.11.160 AvataDataNode

hadoop4-virtual-machine  10.10.11.184 AvataDataNode

hadoop5-virtual-machine  10.10.12.25  AvatarNode(standby)

 

相关资源及描述

以下是Avatar方案部署相关的简单介绍。

1.首先关于Avatar方案对于Hadoop的备份是对Dfs的的单点备份,并不包括Mapred,因为Hadoop本身就不存在处理jobtracker单点故障的机制。

2.AvatarNode继承自Namenode,而并非对Namenode的修改,AvatarDataNode同样亦如此。故Avatar的启动机制是独立于Hadoop本身的启动机制。

3.在Avatar方案中,SecondaryNamenode的职责已包括在Standby节点中,故不需要再独立启动一个SecondaryNamenode

4.AvatarNode必须有NFS的支持,用以实现两个节点间事务日志(editlog)的共享。

5.FB提供的Avatar源码中暂时并不能实现PrimaryStandby之间的自动切换,可以借助于Zookeeperlease机制来实现自动切换。

6.PrimaryStandby之间的切换只包括从Standby切换到Primary,并不支持从Primary状态切换到Standby状态。

7.AvatarDataNode并不使用VIPAvatarNode通信,而是直接与PrimaryStandby通信,故需要使用VIP漂移方案来屏蔽两个节点间切换过程中的IP变换问题。有关与Zookeeper的整合,官方称将在之后的版本发布。

关于AvatarNode更详细的介绍,请参考http://blog.csdn.net/rzhzhz/article/details/7235789

部署

一、下载补丁包

         下载地址[HDFS-976]

         在主页面下载AvatarNode.20.patch这个补丁包(基于Hadoop-0.20.2),其他补丁包请参考官方介绍。

          

二、安装补丁包

1.     把下载好的AvatarNode.20.patch补丁包,放到hadoop的根目录下

2.     在hadoop根路径下输入命令patch –p0< AvatarNode.20.patch, 会把相关源码的修改写入java文件中。

3.  因为该补丁包中的Standby类(341行)中有一行代码调用了0.20.2中没有的方法fsImage.saveNamespace(true);把该行注释掉并改成0.20.2中方法fsImage.saveFSImage();

4.     修改org.apache.hadoop.hdfs.server.namenode.FSNamesystem类(4310行),注释掉checkSuperuserPrivilege();因为后面在启动standby的时候会因为ugi=null的错误导致standby无法正常启动。

三、编译

1.  首先修改hadoop根目录下build.xml,注释掉904行和908行。如下:

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值