hbase的集群安裝過程
1.HBASE是cs結構,包含主節點和從節點。
namenode1作為主節點,datanode1、datanode2作為從節點。
1.1 前提條件是什么?
已經安裝了hadoop集群、zookeeper集群。
1.2 hbase的安裝版本
一定要匹配hadoop的版本。我們安裝的是hbase-0.98.8-hadoop2
1.3 hbase的配置
1.3.1 修改環境變量
# vim /etc/profile
export HBASE_HOME=/usr/local/hadoop/hbase
export PATH=$PATH:$JAVA_HOME/bin;$HBASE_HOME/bin;
1.3.2 hbase-env.sh
修改 export JAVA_HOME=/usr/java/jdk1.7.0_75
修改 export HBASE_MANAGES_ZK=false
1.3.3 hbase-site.xml
<property>
<name>hbase.rootdir</name>
<value>hdfs://namenode1:9000/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>namenode1,datanode1,datanode2</value>
</property>
1.3.4 執行命令hdfs dfs -mkdir /hbase 創建hbase存放數據的目錄
1.3.5 編輯regionservers(存放從節點的地址信息),增加如下兩行內容
datanode1
datanode2
1.3.6 復制HBase到其他節點
scp -rq /usr/local/hadoop/hbase datanode01:/usr/local/hadoop
scp -rq /usr/local/hadoop/hbase datanode02:/usr/local/hadoop
1.3.7 驗證
執行命令./start-hbase.sh
在datanode1節點執行jps命令,可以觀察到HMaster進程,說明啟動成功。
在datanode2和datanode3節點執行jps命令,可以觀察到HRegionServer進程。
1.3.8 遇到的問題及解決方案
第一次啟動時日志中輸出如下信息:
SLF4J: Found binding in [jar:file:/usr/local/hbase/lib/slf4j-log4j12-1.6.4.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/usr/local/hadoop-2.6.0/share/hadoop/common/lib/slf4j-log4j12-1.7.5.jar!/org/slf4j/imp
這說明HBase中的slf4j-log4j12-1.6.4.jar文件和hadoop-2.6.0中的沖突了,刪掉HBase中的重啟即可,如有其它jar沖突,做法一樣。
1.3.9 hbase客戶端shell啟動命令
./hbase shell