1. 程式人生 > >hbase安裝(使用已經安裝的HDFS和zookeeper)

hbase安裝(使用已經安裝的HDFS和zookeeper)

先啟動zookeeper再啟動hbase

1.在Apache官網上下載HBASE的安裝包

http://hbase.apache.org

我安裝的是Hadoop2.4.1,所以下載了hbase-0.98.11-hadoop2-bin.tar.gz

 

2. 通過winscp將HBASE安裝包上傳到虛擬機器的/usr/local/檔案目錄下

 

3.解壓縮  tar -zxvf hbase-0.98.11-hadoop2-bin.tar.gz

 

4.重新命名hbase-0.98.11-hadoop2

mv hbase-0.98.11-hadoop2 hbase

 

5. 設定環境變數,根據實際路徑修改

vi .bashrc

export HBASE_HOME=/usr/local/hbase

export PATH=$PATH:$HBASE_HOME/bin

 

6.切換到conf目錄下,修改配置檔案

cd /usr/local/hbase/conf

  1. 修改hbase-env.sh

export JAVA_HOME=/usr/local/java

export HBASE_CLASSPATH=/usr/local/hadoop/etc/Hadoop

export HADOOP_HOME=/usr/local/hadoop

export HBASE_MANAGES_ZK=false

第一個引數指定了JDK路徑;第二個引數指定了 hadoop 的配置檔案路徑;第三個引數指定了 hadoop 的安裝路徑;第四個引數設定使用 hbase 預設自帶的 Zookeeper

  1. 修改hbase-site.xml

vi hbase-site.xml

修改hbase-site.xml很重要, 
1hbase.rootdir得和你的hadoop配置的名字和埠一致,你可以檢視http://hadoop50070/顯示主節點的那個,直接複製過來。也可以檢視hadood的配置檔案找。 
2hbase.cluster.distributed

是否是分散式 
32hbase.zookeeper.quorum這個得和zookeeper一致,去zookeeper配置檔案找 
4hbase.zookeeper.property.dataDir同上

 

<property>

<name>hbase.rootdir</name>

<value>hdfs://master:9000/hbase</value>  #hdfs前面不能留空格

</property>

<property>

<name>hbase.cluster.distributed</name>

<value>true</value>

</property>

<property>

<name>hbase.zookeeper.quorum</name>

<value>master,slave1,slave2</value>

</property>

<property>

<name>hbase.zookeeper.property.dataDir</name>

<value>/usr/local/zk/data</value>

</property>

<property> 

<name>hbase.tmp.dir</name> 

<value>/usr/local/hbase/data</value> 

</property>

  • hbase.rootdir: 
    就是來選擇將資料寫入到什麼目錄中,這裡我選擇的就是HDFS,因為我的Hadoop的一個HA的配置,所以我寫的就是叢集的名字cluster了,如果不是HA的話,可以寫上namenode節點名就好。後面的hbase其實就是HDFS中的一個目錄了,以後的hbase資料就會放到這個hbase目錄中的,不需要手動建立,啟動的時候會自動建立的。
  • hbase.cluster.distributed 
    設定為true就是開啟完全分散式。
  • hbase.zookeeper.quorum 
    設定為安裝有ZK的節點。
  • hbase.zookeeper.property.dataDir 
    設定zk的資料存放目錄。
  • hbase.tmp.dir 
    設定臨時檔案存放目錄,最好設定一下,要不預設的/tmp目錄重啟就會清空的。

 

接下來需要hbase能夠知道我的hdfs的配置,需要將hadoop中的hdfs-site.xml拷貝到hbaseconf中,至於解釋我沒有在官方文件中看到,但是在中文版官方文件http://abloz.com/hbase/book.html#standalone_dist有提到,也就是為了保證hbasehdfs的配置一致性。

 

(3)修改regionservers

vi regionservers

 

把localhost修改為你的主機名,一個主機名換一行

我的是:   master

                 slave1

slave2

 

7. 準備工作完成了,拷貝到其他主機上
scp -r hbase [email protected]:/usr/local/
scp -r hbase [email protected]:/usr/local/

 

8. 啟動HBASE

可以切換到hbasebin目錄下執行

./start-hbase.sh

也可以直接執行start-hbase.sh,因為已經在.bashrc配置了hbase的環境變數

如果不成功,去上級目錄的logs檢視錯誤日誌

啟動成功以後有以下守護程序

主節點

[[email protected] ~]# jps

6273 HRegionServer

2244 NodeManager

1892 SecondaryNameNode

2149 ResourceManager

1766 DataNode

1672 NameNode

6141 HMaster

5982 QuorumPeerMain

7583 Jps

 

從節點

[[email protected] ~]# jps

1570 NodeManager

3683 HRegionServer

3605 QuorumPeerMain

4214 Jps

1452 DataNode

9.可以使用hbase shell 進入命令列視窗

10.web訪問地址是 主節點ip:16010/ 

             我的是:http://master:16010/master-status

            <其中master是主節點的名稱>