Deploy hbase-0.91.0-SNAPSHOT

来源:互联网 发布:管家婆数据库下载 编辑:程序博客网 时间:2024/06/13 08:01

本文的主要目的就是纪念一下deploy hbase-0.91.0-SNAPSHOT,过程中竟然遇到了两个问题,一个是hbase的bug,另外一个自己config上的问题。

(本文的前提是你已经安装apache-maven-3.0.并且已经安装hadoop-0.20.2-cdh3u1)

1)我主要使用的是https://github.com/larsgeorge/hbase.git提供的hbase repository, 从这里check out源代码,使用mvn打包来生成tar.gz文件

USER@ubuntu:~/workspace/java/hbase$ git clone git://github.com/larsgeorge/hbase.git

mvn package -DskipTests=true
USER@ubuntu:~/workspace/java/hbase$ lsbin  CHANGES.txt  conf  hs_err_pid28004.log  LICENSE.txt  logs  NOTICE.txt  pom.xml  README.txt  src  target
USER@ubuntu:~/workspace/java/hbase$ cd target/USER@ubuntu:~/workspace/java/hbase/target$ lsantrun                classes            generated-sources          hbase-0.91.0-SNAPSHOT-sources.jar  hbase-webapps                   nativelibarchive-tmp           copynativelibs.sh  hbase-0.91.0-SNAPSHOT      hbase-0.91.0-SNAPSHOT.tar.gz       maven-archiver                  test-classescached_classpath.txt  generated-jamon    hbase-0.91.0-SNAPSHOT.jar  hbase-0.91.0-SNAPSHOT-tests.jar    maven-shared-archive-resources
经过上面的步骤以后我们就得到了我们想要的hbase-0.91.0-SNAPSHOT.tar.gz

(我在使用 hbase-0.91.0-SNAPSHOT.tar.gz的时候,通过hbase shell执行命令的时候遇到了https://issues.apache.org/jira/browse/HBASE-4171, 所以重新按照里面fix的方法更改了一下admin.rb,然后重新package一个新的tar.gz)

2)下面就是使用step1生成的hbase-0.91.0-SNAPSHOT.tar.gz deploy hbase了(我使用的hadoop是hadoop-core-0.20.2-cdh3u1.jar)

USER@ubuntu:~/software$ tar -xzf hbase-0.91.0-SNAPSHOT
USER@ubuntu:~/software/hbase-0.91.0-SNAPSHOT$ pwd/home/USER/software/hbase-0.91.0-SNAPSHOT
USER@ubuntu:~/software/hbase-0.91.0-SNAPSHOT$ rm lib/hadoop-core-0.20-append-r1057313.jar
USER@ubuntu:~/software/hbase-0.91.0-SNAPSHOT$ cp /home/USER/software/hadoop-0.20.2-cdh3u1/hadoop-core-0.20.2-cdh3u1.jar ./lib/
3) 配置hbase,我们这里将hbase配置为伪分布式,在conf下面更改hbase-site.xml
    <property>        <name>hbase.rootdir</name>        <value>hdfs://localhost:9000/hbase2</value>    </property>    <property>        <name>dfs.replication</name>        <value>1</value>    </property>

(在这里我开始的时候使用的是hdfs://localhost:9000/hbase,在使用hbase shell执行hbase命令的时候出现org.apache.hadoop.hbase.TableNotFoundException: .META. 产生这个问题的原因是我在这个hadoop上配置的另外一个版本的hbase 0.90.3已经使用了hbase这个目录,所以我更改目录为hbase2)

4) 启动hadoop和hbase(我已经将hadoop-0.20.2-cdh3u1的bin路径加入到PATH中,所以直接可以在任何目录执行start-all.sh,但是hbase-0.91.0-SNAPSHOT的bin目录并没有在PATH中)

USER@ubuntu:~/software/hbase-0.91.0-SNAPSHOT$ start-all.sh
USER@ubuntu:~/software/hbase-0.91.0-SNAPSHOT$ ./bin/start-hbase.sh
5)验证我们的hbase-0.91.0-SNAPSHOT是否已经run起来了

USER@ubuntu:~/software/hbase-0.91.0-SNAPSHOT$ ./bin/hbase shellHBase Shell; enter 'help<RETURN>' for list of supported commands.Type "exit<RETURN>" to leave the HBase ShellVersion 0.91.0-SNAPSHOT, r9f14c5db3078a61d4f4d212312e3cdf95964f49e, Sun Aug  7 22:58:23 CST 2011hbase(main):001:0> listTABLE                                                                                                                                                                   11/08/08 00:23:26 INFO ipc.HBaseRPC: Using org.apache.hadoop.hbase.ipc.WritableRpcEngine for org.apache.hadoop.hbase.ipc.HMasterInterface0 row(s) in 0.5590 secondshbase(main):002:0> create 'user_info', 'city'11/08/08 00:24:14 INFO ipc.HBaseRPC: Using org.apache.hadoop.hbase.ipc.WritableRpcEngine for org.apache.hadoop.hbase.ipc.HRegionInterface0 row(s) in 0.1570 secondshbase(main):003:0> list TABLE                                                                                                                                                                   user_info                                                                                                                                                               1 row(s) in 0.0330 secondshbase(main):004:0> put 'user_info', 'shawn', 'city:name', 'beijing'0 row(s) in 0.1070 secondshbase(main):005:0> scan 'user_info'ROW                                         COLUMN+CELL                                                                                                                  shawn                                      column=city:name, timestamp=1312734296529, value=beijing                                                                    1 row(s) in 0.0510 secondshbase(main):006:0> disable 'user_info'0 row(s) in 2.0550 secondshbase(main):007:0> drop 'user_info'0 row(s) in 1.1180 secondshbase(main):008:0> exit

这样hbase 0.91就搞定了。


原创粉丝点击