1. 程式人生 > 其它 >HBase單機環境搭建

HBase單機環境搭建

HBase基本環境搭建

一、安裝前置條件說明

1.1 JDK版本說明

HBase 需要依賴 JDK 環境,同時 HBase 2.0+ 以上版本不再支援 JDK 1.7 ,需要安裝 JDK 1.8+ 。JDK 安裝方式見本倉庫:

Linux 環境下 JDK 安裝

1.2 Standalone模式和偽叢集模式的區別

  • Standalone 模式下,所有守護程序都執行在一個 jvm 程序/例項中;
  • 在偽分佈模式下,HBase 仍然在單個主機上執行,但是每個守護程序 (HMaster,HRegionServer 和 ZooKeeper) 則分別作為一個單獨的程序執行。

說明:兩種模式任選其一進行部署即可,對於開發測試來說區別不大。

二、Standalone 模式

2.1 下載並解壓

官方網站 下載所需要版本的二進位制安裝包,並進行解壓:

# tar -zxvf hbase-2.1.4-bin.tar.gz

2.2 配置環境變數

# vim /etc/profile

新增環境變數:

export HBASE_HOME=/usr/app/hbase-2.1.4
export PATH=$HBASE_HOME/bin:$PATH

使得配置的環境變數生效:

# source /etc/profile

2.3 進行HBase相關配置

修改安裝目錄下的 conf/hbase-env.sh

,指定 JDK 的安裝路徑:

# The java implementation to use.  Java 1.8+ required.
export JAVA_HOME=/usr/java/jdk1.8.0_201

修改安裝目錄下的 conf/hbase-site.xml,增加如下配置:

<configuration>
 <property>
    <name>hbase.rootdir</name>
    <value>file:///home/hbase/rootdir</value>
  </property>
  <property>
    <name>hbase.zookeeper.property.dataDir</name>
    <value>/home/zookeeper/dataDir</value>
  </property>
  <property>
    <name>hbase.unsafe.stream.capability.enforce</name>
    <value>false</value>
  </property>
</configuration>

hbase.rootdir: 配置 hbase 資料的儲存路徑;

hbase.zookeeper.property.dataDir: 配置 zookeeper 資料的儲存路徑;

hbase.unsafe.stream.capability.enforce: 使用本地檔案系統儲存,不使用 HDFS 的情況下需要禁用此配置,設定為 false。

2.4 啟動HBase

由於已經將 HBase 的 bin 目錄配置到環境變數,直接使用以下命令啟動:

# start-hbase.sh

2.5 驗證啟動是否成功

驗證方式一 :使用 jps 命令檢視 HMaster 程序是否啟動。

[root@hadoop001 hbase-2.1.4]# jps
16336 Jps
15500 HMaster

驗證方式二 :訪問 HBaseWeb UI 頁面,預設埠為 16010

三、偽叢集模式安裝(Pseudo-Distributed)

3.1 Hadoop單機偽叢集安裝

這裡我們採用 HDFS 作為 HBase 的儲存方案,需要預先安裝 Hadoop。Hadoop 的安裝方式單獨整理至:

Hadoop 單機偽叢集搭建

3.2 Hbase版本選擇

HBase 的版本必須要與 Hadoop 的版本相容,不然會出現各種 Jar 包衝突。這裡我 Hadoop 安裝的版本為 hadoop-2.6.0-cdh5.15.2,為保持版本一致,選擇的 HBase 版本為 hbase-1.2.0-cdh5.15.2 。所有軟體版本如下:

  • Hadoop 版本: hadoop-2.6.0-cdh5.15.2
  • HBase 版本: hbase-1.2.0-cdh5.15.2
  • JDK 版本:JDK 1.8

3.3 軟體下載解壓

下載後進行解壓,下載地址:http://archive.cloudera.com/cdh5/cdh/5/

# tar -zxvf hbase-1.2.0-cdh5.15.2.tar.gz

3.4 配置環境變數

# vim /etc/profile

新增環境變數:

export HBASE_HOME=/usr/app/hbase-1.2.0-cdh5.15.2
export PATH=$HBASE_HOME/bin:$PATH

使得配置的環境變數生效:

# source /etc/profile

3.5 進行HBase相關配置

1.修改安裝目錄下的 conf/hbase-env.sh,指定 JDK 的安裝路徑:

# The java implementation to use.  Java 1.7+ required.
export JAVA_HOME=/usr/java/jdk1.8.0_201

2.修改安裝目錄下的 conf/hbase-site.xml,增加如下配置 (hadoop001 為主機名):

<configuration>
 <!--指定 HBase 以分散式模式執行-->   
 <property>
    <name>hbase.cluster.distributed</name>
    <value>true</value>
 </property>
 <!--指定 HBase 資料儲存路徑為 HDFS 上的 hbase 目錄,hbase 目錄不需要預先建立,程式會自動建立-->   
 <property>
    <name>hbase.rootdir</name>
    <value>hdfs://hadoop001:8020/hbase</value>
  </property>
    <!--指定 zookeeper 資料的儲存位置-->   
  <property>
    <name>hbase.zookeeper.property.dataDir</name>
    <value>/home/zookeeper/dataDir</value>
  </property>
</configuration>

3.修改安裝目錄下的 conf/regionservers,指定 region servers 的地址,修改後其內容如下:

hadoop001

3.6 啟動

# bin/start-hbase.sh

3.7 驗證啟動是否成功

驗證方式一 :使用 jps 命令檢視程序。其中 HMasterHRegionServer 是 HBase 的程序,HQuorumPeer 是 HBase 內建的 Zookeeper 的程序,其餘的為 HDFS 和 YARN 的程序。

[root@hadoop001 conf]# jps
28688 NodeManager
25824 GradleDaemon
10177 Jps
22083 HRegionServer
20534 DataNode
20807 SecondaryNameNode
18744 Main
20411 NameNode
21851 HQuorumPeer
28573 ResourceManager
21933 HMaster

驗證方式二 :訪問 HBase Web UI 介面,需要注意的是 1.2 版本的 HBase 的訪問埠為 60010