一.前述。

完全分散式基於hadoop叢集和Zookeeper叢集。所以在搭建之前保證hadoop叢集和Zookeeper叢集可用。可參考本人部落格地址

二.叢集規劃。

說明:因為HMaster主節點和從節點不會自動切換,所以需要互相配置免密,並且配置從主節點到從節點的免密,備節點到從節點的免密。

推薦使用ssh-copy-id 主機名稱 即從當前節點免密到其他節點。當不能用時推薦使用如下命令:

ssh-copy-id -i ~/.ssh/id_dsa.pub [email protected]

三.搭建流程

3.1 時間同步ntpdate(一定要注意時間同步!!!)
             yum install ntp -y
             ntpdate 時間伺服器

3.2 hbase-env.sh配置
JAVA_HOME
HBASE_MANAGES_ZK=false(關閉Hbase本身的zookeeper叢集)

3.3 hbase-site.xml配置

<configuration>
<property>
    <name>hbase.rootdir</name>
    <value>hdfs://mycluster/hbase</value><--在HDFS上建立一個乾淨的節點,用於存放元資料-->
  </property>
  <property>
    <name>hbase.cluster.distributed</name><--是否開啟分散式-->
    <value>true</value>
  </property>
  <property>
    <name>hbase.zookeeper.quorum</name><--對應的zookeeper叢集,不用加埠-->
    <value>node02,node03,node04</value>
  </property>
</configuration>

3.4 regionservers配置

node02
node03
node04


3.5 backup-masters配置(注意backup-masters需要手動建立)

node02

3.6 將hdfs當中的hdfs-site.xml 拷貝hbase的conf目錄下(因為儲存資料需要在hdfs上)

實際上以上三種方式將Hdfs和Hbase整合,推薦使用拷貝hdfs.xml到hbase的配置目錄中。

3.7 配置檔案分發
    
  保證叢集當中每一臺伺服器配置檔案相同

3.7 啟動節點

在node01(Master節點) 執行 bin/start-hbase.sh啟動主節點。在node02(backup-Master節點) 執行 bin/start-hbase.sh啟動備份節點。最好配置成全域性,載入到環境變數中去。

主節點:Hmaster

 

從節點:(歸屬於某個主節點)

至此,完全分散式叢集搭建完畢。!!!!

持續更新中。。。。,歡迎大家關注我的公眾號LHWorld.

.