关于DataNode更改IP地址后所可能引发HDFS集群状态变化的分析

 

    在Apache Hadoop2.0版本中,测试如果DataNode更改HostName或者IP地址,会引起什么样的情况发生。

1 测试环境

操作系统:CentOS 6.2

Hadoop版本:Apache Hadoop2.0.2

Block副本数:2个

节点部署:

NodeType

HostName

IP

NameNode

sdc1

10.28.169.121

NameNode

sdc2

10.28.169.122

DataNode2

Tdatanode0

10.28.169.126

DataNode1

sdc2

10.28.169.122

DataNode0

datanode0

10.28.169.225

2测试类别

    由于机器的限制,在环境中只用了三个DataNode,其中为了方便测试,在DataNode0和DataNode2节点上只部署数据节点,在测试中修改DataNode的HostName和IP只针对DataNode0节点。我们分为两种情况进行测试,在Hadoop集群其中之后:第一种,修改DataNode0的HostName,观察和分析HDFS集群的状态变化;第二种,修改DataNode0的IP地址,观察和分析HDFS集群的状态变化。

2.1 更改DataNode的HostName

    在修改DataNode0节点的HostName之前,首先记录下NN端和DN(DataNode0节点)端的VERSION文件中的版本ID,便于对比。

DN端有两个VERSION文件:

(1)DN-VERSION文件1:

所在路径:

/data/hadoop2.0_dn/current/BP-2147169311-10.28.169.122-1355378443940/current

内容:

namespaceID=1728141100

cTime=0

blockpoolID=BP-2147169311-10.28.169.122-1355378443940

layoutVersion=-40

(2)DN-VERSION文件2:

所在路径:

/data/hadoop2.0_dn/current

内容:

storageID=DS-382431371-10.28.169.225-50010-1355324528657

clusterID=hadoop2.0

cTime=0

storageType=DATA_NODE

layoutVersion=-40

    NN端也有一个版本文件:

(1) NN-VERSION文件1:

路径:

/data/hadoop2.0_nn_edits/current

内容:

namespaceID=1728141100

clusterID=hadoop2.0

cTime=0

storageType=NAME_NODE

blockpoolID=BP-2147169311-10.28.169.122-1355378443940

layoutVersion=-40

(2) NN-VERSION文件2:

路径:

/data/hadoop2.0_nn_fsimage/current

内容:

namespaceID=1728141100

clusterID=hadoop2.0

cTime=0

storageType=NAME_NODE

blockpoolID=BP-2147169311-10.28.169.122-1355378443940

layoutVersion=-40

    更改DataNode0的HostName之前,首先来看下在HDFS的web界面中向NameNode注册的数据节点信息,截图如下:

可以看到三个DataNode都正常提供服务。

    现在,在DataNode0节点上,利用hostname命令更改节点的hostname,并且更改/etc/hosts文件中的hostname列表,新的hostname为ddd。更改之后,web界面上,以及DataNode0本机的日志均未有异常出现,web界面上的数据节点名字未改变还是原来的DataNode名字:

    把DataNode0节点利用hadoop-daemon.sh stop datanode命令停止其服务,之后:

(1)若在web界面上等待约630秒之后,DN判断DataNode0节点已经死去,Live数据节点个数变为2。

                                                                   

    此时,把DataNode0节点利用hadoop-daemon.sh start datanode命令重新开启数据节点服务。DataNode0端无异常情况出现,HDFS的web界面发生变化:

                                                              

    此时,datanode0节点的名字变为ddd,并且NN有如下日志打印,判定DN死亡的时候,会remove掉,DN服务重启的时候,会增加进来:

2012-12-17 17:21:37,697 INFO org.apache.hadoop.net.NetworkTopology: Removing a node: /default-rack/10.28.169.231:50010

2012-12-17 17:21:37,697 INFO org.apache.hadoop.net.NetworkTopology: Removing a node: /default-rack/10.28.169.231:50010

2012-12-17 17:21:37,698 INFO org.apache.hadoop.net.NetworkTopology: <

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值