注意:Apache Hbase 不能使用 OpenJDK 啟動,需要去 Oracle 網站下載 Server JRE
如果你是第一次安裝Hbase,建議你從單機安裝開始,這樣成功率比較高,不會受挫。Hbase 不比關係型資料庫複雜,只是安裝比較麻煩,一旦安裝號使用起來還是很容易上手的,請直接粘貼複製下面的命令即可完成安裝:
cd /usr/local/src wget http://mirrors.hust.edu.cn/apache/hbase/stable/hbase-1.2.6-bin.tar.gz tar zxf hbase-1.2.6-bin.tar.gz cp hbase-1.2.6/conf/hbase-site.xml{,.original} mv hbase-1.2.6 /srv/apache-hbase-1.2.6 ln -s /srv/apache-hbase-1.2.6 /srv/apache-hbase cp /srv/apache-hbase/conf/hbase-env.sh{,.original} cat > /srv/apache-hbase/conf/hbase-env.sh <<EOF export JAVA_HOME=/srv/java #export HBASE_CLASSPATH= export HBASE_MANAGES_ZK=true EOF cat > /srv/hbase/conf/hbase-site.xml <<EOF <?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration> <property> <name>hbase.rootdir</name> <value>file:///tmp/hbase-${user.name}</value> </property> </configuration> EOF
啟動 Apache Hbase
/srv/apache-hbase/bin/start-hbase.sh
進入 Hbase shell
/srv/apache-hbase/bin/hbase shell
關閉 Hbase
/srv/apache-hbase/bin/stop-hbase.sh
單機模式基本可能滿足我們的學習需要,但無法滿足更複雜的需求,例如整合Hive等其他軟件,這時我們就需要借助 Hadoop 的HDFS功能實現與其他軟件的整合。所謂的偽分散式,就是只有一個Hbase節點,即Master。
這裡我假設 Hadoop 已經正確安裝,無論你採用什麼模式只要能提供 hdfs 服務處即可。Hadoop 安裝可以參考作者的相關文檔。
首先編輯 conf/hbase-site.xml 配置檔案,增加以下配置:
<property> <name>hbase.cluster.distributed</name> <value>true</value> </property>
hbase.cluster.distributed 屬性值設置為 true HBase 將運行于分散式模式
然後配置 hbase.rootdir 屬性值,指向 HDFS 地址。
<property> <name>hbase.rootdir</name> <value>hdfs://localhost:9000/hbase</value> </property>
現在啟動 Hbase , 如果正常使用 jps 可以下面三個綫程
[hadoop@netkiller conf]$ su - hadoop -c "/srv/apache-hbase/bin/start-hbase.sh" [hadoop@netkiller conf]$ jps | egrep "(HMaster|HRegionServer|HQuorumPeer)"
如果啟動正常,你將會看到 HDFS 中的 Hbase目錄。
[hadoop@netkiller ~]$ /srv/hadoop/bin/hdfs dfs -ls /hbase Found 7 items drwxr-xr-x - hadoop supergroup 0 2017-06-28 21:55 /hbase/.tmp drwxr-xr-x - hadoop supergroup 0 2017-06-28 21:55 /hbase/MasterProcWALs drwxr-xr-x - hadoop supergroup 0 2017-06-28 21:55 /hbase/WALs drwxr-xr-x - hadoop supergroup 0 2017-06-28 21:55 /hbase/data -rw-r--r-- 3 hadoop supergroup 42 2017-06-28 21:55 /hbase/hbase.id -rw-r--r-- 3 hadoop supergroup 7 2017-06-28 21:55 /hbase/hbase.version drwxr-xr-x - hadoop supergroup 0 2017-06-28 21:55 /hbase/oldWALs