前提
- 已经配置好java环境
- 已经搭建zookeeper集群
- 已经搭建Hadoop集群
- 准备3台机器
步骤
- 拷贝hadoop的
hdfs-site.xml
和core-site.xml
放到hbase/conf
下.
cp hdfs-site.xml /root/hbase/hbase-1.2.0/conf/
cp core-site.xml /root/hbase/hbase-1.2.0/conf/
- 配置hbase-env.sh
export JAVA_HOME=/usr/local/java/jdk1.8.0_171
# 告诉hbase使用外部的zk
export HBASE_MANAGES_ZK=false
- 配置hbase-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<!-- hdfs://data1:9000注意和core-site里保持一致 -->
<value>hdfs://data1:9000/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>data1:2181,data2:2181,data3:2181</value>
</property>
</configuration>
- 配置regionservers
[root@data1 conf]# cat regionservers
data2
data3
- 配置backup-masters
echo data2 > backup-masters
- 将hbase程序及配置拷贝到其它机器
scp -r hbase-1.2.0 root@data2:/root/hbase/
scp -r hbase-1.2.0 root@data3:/root/hbase/
- 启动hbase
# 在master节点启动即可
bin/start-hbase.sh
- 配置环境变量
vim /etc/profile
export HBASE_HOME=/root/hbase/hbase-1.2.0
export PATH=$PATH:$HBASE_HOME/bin
source /etc/profile
- 进入hbase
hbase shell
测试
- UI
http://master:16010/master-status
- 测试
hbase(main):001:0> create 'test','cf'
0 row(s) in 1.3920 seconds
#
=> Hbase::Table - test
hbase(main):002:0> list
TABLE
test
1 row(s) in 0.0170 seconds
#
=> ["test"]
hbase(main):003:0> put 'test', 'row1', 'cf:a', 'value1'
0 row(s) in 0.1200 seconds
#
hbase(main):004:0> scan 'test'
ROW COLUMN+CELL
row1 column=cf:a, timestamp=1629967515721, value=value1
1 row(s) in 0.0210 seconds
#
hbase(main):005:0>