HBase主状态中显示的重复区域服务器

时间:2012-03-22 04:45:21

标签: hadoop hbase

有两台机器:

  • id-test-n03:hadoop-hbase-master,hadoop-hbase-regionserver,hadoop-hbase-thrift,hadoop-zookeeper-server
  • id-test-i03:hadoop-hbase-regionserver

它们都是Ubuntu Maverick机器,使用Cloudera CDH3存储库安装了所有Hadoop(CDH3u3)和HBase软件包。

仅使用id-test-n03时没有问题。正如预期的那样,HBase主Web控制台(http://id-test-n03:60010/master-status)上有1个区域服务器。

将区域服务器添加到id-test-i03后,我在HBase主Web控制台上发现了重复的区域服务器(两者都具有相同的地址id-test-i03:60030): after_adding_rs

hbase shell中的状态为:

hbase(main):001:0> status 'detailed'
version 0.90.4-cdh3u3
0 regionsInTransition
3 live servers
    id-test-i03:60020 1332390489086
        requests=0, regions=0, usedHeap=24, maxHeap=983
    id-test-n03.daum.net:60020 1332389557235
        requests=0, regions=2, usedHeap=26, maxHeap=983
        .META.,,1
            stores=1, storefiles=0, storefileSizeMB=0, memstoreSizeMB=0, storefileIndexSizeMB=0
        -ROOT-,,0
            stores=1, storefiles=2, storefileSizeMB=0, memstoreSizeMB=0, storefileIndexSizeMB=0
    id-test-i03:60020 1332390489086
        requests=0, regions=0, usedHeap=0, maxHeap=0
0 dead servers

所以,我试图在id-test-i03上停止区域服务器,但发现只有一个区域服务器已经死亡而另一个仍处于活动状态: after_stopping_added_rs

hbase(main):002:0> status 'detailed'
version 0.90.4-cdh3u3
0 regionsInTransition
2 live servers
    id-test-n03.daum.net:60020 1332389557235
        requests=0, regions=2, usedHeap=29, maxHeap=983
        .META.,,1
            stores=1, storefiles=0, storefileSizeMB=0, memstoreSizeMB=0, storefileIndexSizeMB=0
        -ROOT-,,0
            stores=1, storefiles=2, storefileSizeMB=0, memstoreSizeMB=0, storefileIndexSizeMB=0
    id-test-i03:60020 1332390489086
        requests=0, regions=0, usedHeap=0, maxHeap=0
1 dead servers
    id-test-i03.daum.net,60020,1332390489086

根据主Web控制台上的信息,重复区域服务器之间的差异为Start CodeLoad。一个具有主机名,另一个具有启动代码中的FQDN。一个主机名有空载。

/etc/hosts/id-test-n03

id-test-i03是:

127.0.0.1       localhost

192.168.1.1   id-test-n03 id-test-n03.daum.net
192.168.1.2   id-test-i03 id-test-i03.daum.net
这两台机器的

hbase-site.xml是:

<configuration>
<property>
  <name>hbase.cluster.distributed</name>
  <value>true</value>
</property>
<property>
  <name>hbase.rootdir</name>
  <value>hdfs://id-test-n03:8020/hbase</value>
</property>
<property>
  <name>hbase.zookeeper.quorum</name>
  <value>id-test-n03</value>
</property>
</configuration>

感谢您的任何建议。


通过以下步骤解决了问题。

首先,删除两台机器的/etc/hosts中的FQDN:

127.0.0.1       localhost
192.168.1.1   id-test-n03
192.168.1.2   id-test-i03

然后,在search $DOMAIN_NAME中为两台机器注释掉了/etc/resolv.conf

#search daum.net
nameserver 10.20.30.40

最后,重新启动两台计算机上的所有Hadoop和HBase服务。

通过这样做,Hadoop和HBase服务器不再使用FQDN,只与主机名通信。

添加和删除区域服务器会按预期反映在HBase主状态Web控制台和hbase shell中。

1 个答案:

答案 0 :(得分:0)

启动HBase后短时间内显示重复的区域服务器是正常的,在此期间后它会自动删除它们