IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    [原]HBase0.96.0 for Hadoop2.2.0编译

    book_mmicky发表于 2014-05-13 15:22:22
    love 0
            HBase部署的时候,lib下的Hadoop jar包要和集群的jar包一致,不然可能会产生各种错误。笔者部署的是Hadoop2.2.0集群,所支持的HBase0.96.0安装包并没有带Hadoop2.2.0的jar 包,虽然可以通过在Hadoop2.2.0的安装目录中找到相应的2.2.0版本jar包进行替换,但还是比较麻烦,不过可以通过编译HBase源码可以获取支持Hadoop2.2.0的Hbase安装包。
            HBase0.96.0不能同时对hadoop1版和hadoop2版进行编译,必须分开编译,编译之前需要使用 dev-support/generate-hadoopX-poms.sh为相应的版本生成pom文件,然后再进行编译。下面为HBase0.96.0 for Hadoop2.2.0的编译过程:

    1:下载HBase源代码,并解压缩,然后赋予读写权限
    [root@hadoop1 hadoop]# tar zxf hbase-0.96.0-src.tar.gz
    [root@hadoop1 hadoop]# mv hbase-0.96.0 /app/hbase096_src
    [root@hadoop1 hadoop]# chown -R hadoop:hadoop /app/hbase096_src
    [root@hadoop1 hadoop]# cd /app/hbase096_src/dev-support
    [root@hadoop1 dev-support]# chmod +x *.sh

    2:修改pom.xml中hadoop2版本信息,并生成pom.xml.hadoop2
    [root@hadoop1 app]# su - hadoop
    [hadoop@hadoop1 ~]$ cd /app/hbase096_src/
    [hadoop@hadoop1 hbase096_src]$ vi pom.xml
    <hadoop-two.version>2.2.0</hadoop-two.version>
    [hadoop@hadoop1 hbase096_src]$ dev-support/generate-hadoopX-poms.sh 0.96.0 0.96.0-hadoop2

    3:编译
    [hadoop@hadoop1 hbase096_src]$ MAVEN_OPTS="-Xmx3g" mvn -f pom.xml.hadoop2 install -DskipTests assembly:single -Prelease
    HBase0.96.0 for Hadoop2.2.0编译 - mmicky - mmicky 的博客
    生成的安装包位于hbase-assembly/target/hbase-0.96.0-hadoop2-bin.tar.gz

    4:tips
    A:HBase0.96.0在编译本地二进制(-Pnative)和编译压缩编码器(-Dsnappy)会出错,留待以后解决。
    B:编译生成的部署包若想带上文档,使用MAVEN_OPTS="-Xmx3g" mvn -f pom.xml.hadoop2 install -DskipTests site assembly:single -Prelease


沪ICP备19023445号-2号
友情链接