一.前述。
完全分散式基於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.