一、環境介紹
hbase數據存儲在hadoop所以需要在hadoop集羣上運行,同時需要zookeeper選舉mater,存放元數據以及監控HRegionServer節點,所以安裝hbase前需要先安裝hadoop與zk
hadoop集羣搭建:https://blog.csdn.net/qq_35241080/article/details/105850607
zk集羣搭建:https://blog.csdn.net/qq_35241080/article/details/105988912
這裏搭建三臺hbase節點,分別爲hadoop102、103、104
二、集羣搭建
1、將下在hbase安裝包上傳到虛擬機指定位置
解壓Hbase到指定目錄:
[root@hadoop102 software]$ tar -zxvf hbase-1.3.1-bin.tar.gz -C /opt/module
2、修改HBase對應的配置文件 /opt/module/hbase/conf。
1)hbase-env.sh修改內容:
export JAVA_HOME=/opt/module/jdk1.8.0_181
export HBASE_MANAGES_ZK=false
2)hbase-site.xml修改內容:
<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://hadoop102:9000/HBase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<!-- 0.98後的新變動,之前版本沒有.port,默認端口爲60000 -->
<property>
<name>hbase.master.port</name>
<value>16000</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>hadoop102,hadoop103,hadoop104</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/opt/module/zookeeper-3.4.11/zkData</value>
</property>
</configuration>
3)con/regionservers:集羣節點位置
hadoop102
hadoop103
hadoop104
4)軟連接hadoop配置文件到HBase:
[root@hadoop102 module]$ ln -s /opt/module/hadoop-2.7.2/etc/hadoop/core-site.xml /opt/module/hbase/conf/core-site.xml
[root@hadoop102 module]$ ln -s /opt/module/hadoop-2.7.2/etc/hadoop/hdfs-site.xml /opt/module/hbase/conf/hdfs-site.xml
3、分發同步其它節點
[root@hadoop102 module]$ xsync hbase/
4、hbase啓動
啓動hbase前需要先啓動hadoop與zk
啓動hbase:
方式一:
[root@hadoop102 hbase]$ bin/hbase-daemon.sh start master
[root@hadoop102 hbase]$ bin/hbase-daemon.sh start regionserver
提示:如果集羣之間的節點時間不同步,會導致regionserver無法啓動,拋出ClockOutOfSyncException異常。
修復提示:
a、同步時間服務腳本
#!/bin/bash
log_date=$1
for i in hadoop102 hadoop103 hadoop104
do
ssh -t $i "sudo date -s $log_date"
done
b、屬性:hbase.master.maxclockskew設置更大的值
<property>
<name>hbase.master.maxclockskew</name>
<value>180000</value>
<description>Time difference of regionserver from master</description>
</property>
啓動方式二:
啓動服務
[root@hadoop102 hbase]$ bin/start-hbase.sh
停止服務:
[root@hadoop102 hbase]$ bin/stop-hbase.sh
5、查看web界面 http://hadoop102:16010
6、進入hbase客戶端
[root@hadoop102 hbase]$ bin/hbase shell