HBase安装

(1) 编辑$HBASE_HOME/conf/hbase-env.sh文件,设置JAVA_HOME和HBASE_CLASSPATH变量

        export JAVA_HOME=/usr/java/jdk1.6.0_31

       export HBASE_CLASSPATH=/root/hadoop/conf (Hadoop目录)

   export HBASE_MANAGES_ZK=false  #不使用自带的ZooKeeper

(2) 编辑$HBASE_HOME/conf/hbase-site.xml文件,增加以下内容

      

<property>
<name>hbase.rootdir</name>
<value>hdfs://NamenodeMachineName:54310/hbase</value>      <!--file root directory-->
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.master</name>
<value>NamenodeMachineName:60000</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>Node IP</value>  //奇数个
</property>

(3) 替换Hbase中的jar包

      需要用$HADOOP_HOME下的hadoop-x.x.x-core.jar替换掉$HBASE_HOME/lib目录下的hadoop-x.x.x-core.jar。

   如果不替换jar文件Hbase启动时可能会因为hadoop和Hbase的客户端协议不一致而导致HMaster启动异常。

   报错如下:  localhost: Exception in thread "main" org.apache.hadoop.ipc.RPC$VersionMismatch:

         Protocol org.apache.hadoop.hdfs.protocol.ClientProtocol version mismatch. (client = 42, server = 41)

       所以如果遇到以上错误,就通过替换jar包解决。

(4)修改 $HBASE_HOME/conf/regionservers

将对应的DataNode IP加入该文件  

(5)完成以上操作,就可以正常启动Hbase了,启动顺序:先启动Hadoop——>再启动Hbase,关闭顺序:先关闭Hbase——>再关闭Hadoop。

       启动Hbase的命令,进入到hbase安装主目录的bin目录下

       $ ./start-hbase.sh    //启动hbase

       $ ./hbase shell     //进入shell模式

       $ ./stop-habse.sh    //停止hbase

       如果在操作Hbase的过程中发生错误,可以通过hbase安装主目录下的logs子目录查看错误原因。

 

注意:

       hbase的运行需要用到zookeeper,而hbase自带了zookeeper,所以可以使用hbase自带的zookeeper,在conf/hbase-env.sh 文件中

   export HBASE_MANAGES_ZK=true, true表示使用hbase自带的zookeeper, 如果不想使用其自带的zookeeper, 自己下载包安装的化, 该项设置为false.

   当然如果自己安装zookeeper, 启动及关闭先后顺序为:启动Hadoop—>启动ZooKeeper集群—>启动HBase—>停止HBase—>停ZooKeeper集群—>停Hadoop。

posted @ 2012-12-13 13:09  shileiw  阅读(388)  评论(0编辑  收藏  举报