一.前述。
完全分布式基於hadoop集群和Zookeeper集群。所以在搭建之前保證hadoop集群和Zookeeper集群可用。可參考本人博客地址
https://www.cnblogs.com/LHWorldBlog/p/8232935.html搭建hadoop集群
二.集群規划。

說明:因為HMaster主節點和從節點不會自動切換,所以需要互相配置免密,並且配置從主節點到從節點的免密,備節點到從節點的免密。
推薦使用ssh-copy-id 主機名稱 即從當前節點免密到其他節點。當不能用時推薦使用如下命令:
ssh-keygen
ssh-copy-id -i ~/.ssh/id_rsa.pub root@node04
三.搭建流程
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.

