热度 17
Hadoop 与hbase支持版本
S = 支持并且测试, |
X = 不支持, |
NT = 应该可以,但是没有测试. |
HBase-0.92.x | HBase-0.94.x | HBase-0.96.x | HBase-0.98.x[a] | HBase-1.0.x[b] | |
---|---|---|---|---|---|
Hadoop-0.20.205 | S | X | X | X | X |
Hadoop-0.22.x | S | X | X | X | X |
Hadoop-1.0.0-1.0.2[c] | X | X | X | X | X |
Hadoop-1.0.3+ | S | S | S | X | X |
Hadoop-1.1.x | NT | S | S | X | X |
Hadoop-0.23.x | X | S | NT | X | X |
Hadoop-2.0.x-alpha | X | NT | X | X | X |
Hadoop-2.1.0-beta | X | NT | S | X | X |
Hadoop-2.2.0 | X | NT [d] | S | S | NT |
Hadoop-2.3.x | X | NT | S | S | NT |
Hadoop-2.4.x | X | NT | S | S | S |
Hadoop-2.5.x | X | NT | S | S | S |
[a] Support for Hadoop 1.x is deprecated. [b] Hadoop 1.x is NOT supported [c] HBase requires hadoop 1.0.3 at a minimum; there is an issue where we cannot find KerberosUtil compiling against earlier versions of Hadoop. [d] To get 0.94.x to run on hadoop 2.2.0, you need to change the hadoop 2 and protobuf versions in the pom.xml: Here is a diff with pom.xml changes: $ svn diff pom.xml Index: pom.xml =================================================================== --- pom.xml (revision 1545157) +++ pom.xml (working copy) @@ -1034,7 +1034,7 @@ <slf4j.version>1.4.3</slf4j.version> <log4j.version>1.2.16</log4j.version> <mockito-all.version>1.8.5</mockito-all.version> - <protobuf.version>2.4.0a</protobuf.version> + <protobuf.version>2.5.0</protobuf.version> <stax-api.version>1.0.1</stax-api.version> <thrift.version>0.8.0</thrift.version> <zookeeper.version>3.4.5</zookeeper.version> @@ -2241,7 +2241,7 @@ </property> </activation> <properties> - <hadoop.version>2.0.0-alpha</hadoop.version> + <hadoop.version>2.2.0</hadoop.version> <slf4j.version>1.6.1</slf4j.version> </properties> <dependencies>The next step is to regenerate Protobuf files and assuming that the Protobuf has been installed:
Building against the hadoop 2 profile by running something like the following command: $ mvn clean install assembly:single -Dhadoop.profile=2.0 -DskipTests |
Because HBase depends on Hadoop, it bundles an instance of the Hadoop jar under its lib directory. The bundled jar is ONLY for use in standalone mode. In distributed mode, it is critical that the version of Hadoop that is out on your cluster match what is under HBase. Replace the hadoop jar found in the HBase lib directory with the hadoop jar you are running on your cluster to avoid version mismatch issues. Make sure you replace the jar in HBase everywhere on your cluster. Hadoop version mismatch issues have various manifestations but often all looks like its hung up.
更新内容:
Hadoop version support matrix
· "S" = supported
· "X" = not supported
· "NT" = Not tested
HBase-0.92.x |
HBase-0.94.x |
HBase-0.96.x |
HBase-0.98.x (Support for Hadoop 1.1+ is deprecated.) |
HBase-1.0.x (Hadoop 1.x is NOT supported) |
|
Hadoop-0.20.205 |
S |
X |
X |
X |
X |
Hadoop-0.22.x |
S |
X |
X |
X |
X |
Hadoop-1.0.x |
X |
X |
X |
X |
X |
Hadoop-1.1.x |
NT |
S |
S |
NT |
X |
Hadoop-0.23.x |
X |
S |
NT |
X |
X |
Hadoop-2.0.x-alpha |
X |
NT |
X |
X |
X |
Hadoop-2.1.0-beta |
X |
NT |
S |
X |
X |
Hadoop-2.2.0 |
X |
NT |
S |
S |
NT |
Hadoop-2.3.x |
X |
NT |
S |
S |
NT |
Hadoop-2.4.x |
X |
NT |
S |
S |
S |
Hadoop-2.5.x |
X |
NT |
S |
S |
S |