1. 程式人生 > >部署Hadoop環境(四)HBase分散式叢集部署與設計

部署Hadoop環境(四)HBase分散式叢集部署與設計

HBase是一個高可靠、高效能、面向列、可伸縮的分散式儲存系統,利用Hbase技術可在廉價PC Server上搭建 大規模結構化儲存叢集。

HBase 是Google Bigtable 的開源實現,與Google Bigtable 利用GFS作為其檔案儲存系統類似, HBase 利用Hadoop HDFS 作為其檔案儲存系統;Google 執行MapReduce 來處理Bigtable中的海量資料, HBase 同樣利用Hadoop MapReduce來處理HBase中的海量資料;Google Bigtable 利用Chubby作為協同服務, HBase 利用Zookeeper作為對應。

1.下載HBase並安裝

http://ke.dajiangtai.com/content/6906/1.png

1)下載Apache版本的HBase。

2)下載Cloudera版本的HBase。

3)這裡選擇下載cdh版本的hbase-0.98.6-cdh5.3.0.tar.gz,然後上傳至bigdata-pro01.kfk.com節點/opt/softwares/目錄下

4)解壓hbase

tar -zxf hbase-0.98.6-cdh5.3.0.tar.gz -C /opt/modules/

2.分散式叢集的相關配置

1)HBase架構體系

http://ke.dajiangtai.com/content/6906/2.png

a.Zookeeper

Zookeeper Quorum中除了儲存了-ROOT-表的地址和HMaster的地址,HRegionServer也會把自己以Ephemeral方式註冊到Zookeeper中,使得HMaster可以隨時感知到各個HRegionServer的健康狀態。此外,Zookeeper也避免了HMaster的單點問題。

b.HBase Master

每臺HRegion伺服器都會和HMaster伺服器通訊,HMaster的主要任務就是要告訴每臺HRegion伺服器它要維護哪些HRegion。   當一臺新的HRegion伺服器登入到HMaster伺服器時,HMaster會告訴它先等待分配資料。而當一臺HRegion宕機時,HMaster會把它負責的HRegion標記為未分配,然後再把它們分配到其他HRegion伺服器中。

c.HRegionServer

HRegionServer主要負責響應使用者I/O請求,向HDFS檔案系統中讀寫資料,是HBase中最核心的模組。 

2)HBase叢集規劃

http://ke.dajiangtai.com/content/6906/3.png

3)分散式叢集相關配置

a.hbase-env.sh
#配置jdk

export JAVA_HOME=/opt/modules/jdk1.7.0_67
#使用獨立的Zookeeper

export HBASE_MANAGES_ZK=false

b.hbase-site.xml 

<configuration>

        <property>

               <name>hbase.rootdir</name>

               <value>hdfs://ns/hbase</value>

        </property>

        <property>

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

               <value>true</value>

        </property>

        <property>

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

               <value>bigdata-pro01.kfk.com,bigdata-pro02.kfk.com,

                       bigdata-pro03.kfk.com</value>

        </property>

</configuration>

c.regionservers

bigdata-pro01.kfk.com

bigdata-pro02.kfk.com

bigdata-pro03.kfk.com

d.backup-masters

bigdata-pro02.kfk.com

4)將hbase配置分發到各個節點

scp -r hbase-0.98.6-cdh5.3.0 bigdata-pro02.kfk.com:/opt/modules/

scp -r hbase-0.98.6-cdh5.3.0 bigdata-pro03.kfk.com:/opt/modules/

3.啟動HBase服務

1)各個節點啟動Zookeeper

zkServer.sh start

2)主節點啟動HDFS

bin/start-dfs.sh

3)啟動HBase

bin/start-hbase.sh

4)檢視HBase Web介面

bigdata-pro01.kfk.com:60010/

如果各個節點啟動正常,那麼HBase就搭建完畢。

4.通過shell測試資料庫

1)選擇主節點進入HBase目錄,啟動hbase-shell

cd hbase-0.98.6-cdh5.3.0

bin/hbase-shell

2)檢視所有表命令

list

3)使用help幫助命令

help

4)建立表

create 'test','info'

5)新增資料

put 'test','0001','info:userName','laocao'

6)全表掃描資料

scan 'test'

7)查看錶結構

describe 'test'

8)刪除表

disable 'test'

drop 'test'

5.根據業務需求建立表結構

1)下載資料來源檔案

2)HBase上建立表

create 'weblogs','info'