Ошибка запуска сервера Hadoop-2.4.0 HBase-0.19.18 Region

Недавно я установил hadoop-2.4.0 и hbase-0.95.18, скомпилированные с помощью

sudo mvn clean package assembly:assembly -DskipTests -Dhadoop.profile=2.4

используя приведенные ниже параметры pom.xml.

<protobuf.version>2.5.0</protobuf.version>

и

<id>hadoop-2.4</id>
  <activation>
    <property>
      <name>hadoop.profile</name>
      <value>2.4</value>
    </property>
  </activation>
  <properties>
    <hadoop.version>2.4.0</hadoop.version>
    <slf4j.version>1.7.5</slf4j.version>

Вот моя информация hbase-site.xml.

<configuration>
   <property>
      <name>hbase.rootdir</name>
      <value>hdfs://big7:54310/hbase</value>
   </property>
   <property>
      <name>dfs.replication</name>
      <value>3</value>
   </property>
   <property>
      <name>hbase.cluster.distributed</name>
      <value>true</value>
   </property>
   <property>
      <name>hbase.zookeeper.quorum</name>
      <value>big11,big1,big4</value>
   </property>
   <property>
      <name>hbase.zookeeper.property.clientPort</name>
      <value>2222</value>
   </property>
   <property>
      <name>hbase.zookeeper.property.dataDir</name>
      <value>/home/hduser/hadoop/zookeeper</value>
   </property>
   <property>
      <name>hbase.cluster.distributed</name>
      <value>true</value>
   </property>
</configuration>

HMaster и Zookeepers запускаются успешно, но региональные серверы не запускаются. Я получил ошибку ниже в главном журнале.

2014 -05-09 16:11:59,030 INFO org.apache.hadoop.hbase.master.ServerManager: Registering server=big11,60020,1399632116991
2014 -05-09 16:11:59,038 INFO org.apache.hadoop.conf.Configuration.deprecation: fs.default.name is deprecated. Instead, use fs.defaultFS
2014 -05-09 16:11:59,041 INFO org.apache.hadoop.hbase.master.ServerManager: Waiting for region servers count to settle; currently checked in 1, slept for 100 ms, expecting minimum of 1, maximum of 2147483647, timeout of 4500 ms, interval of 1500 ms.
2014 -05-09 16:11:59,058 **ERROR org.apache.hadoop.hbase.master.HMaster: Region server \00\00big11,60020,1399632116991 reported a fatal error**:
     **ABORTING region server big11,60020,1399632116991: Unhandled exception: Region server startup failed
     Cause:
     java.io.IOException: Region server startup failed**
        at org.apache.hadoop.hbase.regionserver.HRegionServer.convertThrowableToIOE(HRegionServer.java:1279)
        at org.apache.hadoop.hbase.regionserver.HRegionServer.handleReportForDutyResponse(HRegionServer.java:1136)
        at org.apache.hadoop.hbase.regionserver.HRegionServer.run(HRegionServer.java:758)
        at java.lang.Thread.run(Thread.java:744)
     Caused by: java.lang.UnsupportedOperationException: **This is supposed to be overridden by subclasses.**
        at com.google.protobuf.GeneratedMessage.getUnknownFields(GeneratedMessage.java:180)
        at org.apache.hadoop.hbase.protobuf.generated.HBaseProtos$RegionServerInfo.getSerializedSize(HBaseProtos.java:883)
        at com.google.protobuf.AbstractMessageLite.toByteArray(AbstractMessageLite.java:62)
        at org.apache.hadoop.hbase.regionserver.HRegionServer.createMyEphemeralNode(HRegionServer.java:1148)
        at org.apache.hadoop.hbase.regionserver.HRegionServer.handleReportForDutyResponse(HRegionServer.java:1109)
        ... 2 more

2014 -05-09 16:11:59,768 INFO org.apache.hadoop.hbase.master.ServerManager: Registering server=big1,60020,1399632116879
2014 -05-09 16:11:59,777 ERROR org.apache.hadoop.hbase.master.HMaster: Region server \00\00big9,60020,1399632116855 reported a fatal error:
     ABORTING region server big9,60020,1399632116855: Unhandled exception: Region server startup failed
     Cause:
     java.io.IOException: Region server startup failed
        at org.apache.hadoop.hbase.regionserver.HRegionServer.convertThrowableToIOE(HRegionServer.java:1279)
        at org.apache.hadoop.hbase.regionserver.HRegionServer.handleReportForDutyResponse(HRegionServer.java:1136)
        at org.apache.hadoop.hbase.regionserver.HRegionServer.run(HRegionServer.java:758)
        at java.lang.Thread.run(Thread.java:744)
     Caused by: java.lang.UnsupportedOperationException: This is supposed to be overridden by subclasses.
        at com.google.protobuf.GeneratedMessage.getUnknownFields(GeneratedMessage.java:180)
        at org.apache.hadoop.hbase.protobuf.generated.HBaseProtos$RegionServerInfo.getSerializedSize(HBaseProtos.java:883)
        at com.google.protobuf.AbstractMessageLite.toByteArray(AbstractMessageLite.java:62)
        at org.apache.hadoop.hbase.regionserver.HRegionServer.createMyEphemeralNode(HRegionServer.java:1148)
        at org.apache.hadoop.hbase.regionserver.HRegionServer.handleReportForDutyResponse(HRegionServer.java:1109)
        ... 2 more

Может ли кто-нибудь помочь мне решить эту проблему?


person Raja    schedule 09.05.2014    source источник


Ответы (1)


Есть два файла .proto, скомпилированные с использованием версии 2.4.0.

$HBASE_HOME/src/main/protobuf/ErrorHandling.proto $HBASE_HOME/src/main/protobuf/hbase.proto

Поскольку вы изменили protobuf.version, вы перегенерировали файлы .java из файлов .proto с помощью компилятора protobuf версии 2.5.0. Это может быть одной из проблем.

Вы можете сделать это, выполнив следующий шаг.

  1. Установить protobuf-компилятор версии 2.5.0
  2. Выполните следующие команды в папке $HBASE_HOME/src/main/protobuf:

    $>протокол -I./ --java_out=src/main/java ErrorHandling.proto

    $> протокол -I./ --java_out=src/main/java hbase.proto

  3. Перекомпилируйте hbase и запустите сервер.

Вы можете следить за обсуждением здесь, чтобы узнать больше об этом.

person Ghost    schedule 22.05.2014