一、基础环境
OS版本:CentOS release 6.4 (Final)
Jjava version "1.8.0_201" (要求1.6+)
ZooKeeper:HBASE自带
安装参考:https://blog.csdn.net/jisen_huang/article/details/48490295
Hadoop:hadoop-2.7.7.tar.gz
http://apache.fayea.com/hadoop/common/hadoop-2.7.7/hadoop-2.7.7.tar.gz
HBase:hbase-2.0.4-bin.tar.gz
https://apache.org/dist/hbase/2.0.4/hbase-2.0.4-bin.tar.gz
主机数:4(要求3+)
服务器列表:
主机名 IP地址 JDK myid
ca 192.168.253.10 1.8.0_201 0
cb 192.168.253.11 1.8.0_201 1
cc 192.168.253.12 1.8.0_201 2
cd 192.168.253.13 1.8.0_201 3
二、hadoop安装
hadoop 安装参考《hadoop-2.7.1 For CentOS6.5安装》
https://blog.csdn.net/jisen_huang/article/details/48490045
三、HBase 安装(自带ZK)
1、下载解压HBase文件
tar zxvf hbase-2.0.4-bin.tar.gz
2、环境变量
vim ~/.bash_profile
export HBASE_HOME=/hadoop/hbase-2.0.4
export PATH=$HBASE_HOME/bin:$PATH
export HBASE_CLASSPATH=/hadoop/hbase-2.0.4/conf
执行 source ~/.bash_profile使环境变量生效
4、配置hbase-env.sh JAVA_HOME
export JAVA_HOME/usr/java/jdk1.8.0_201-amd64/
export HBASE_MANAGES_ZK=true 使用自带zookeeper
5、修改配置文件hbase-site.xml
<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://ca:9000/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>ca,cb,cc,cd</value>
</property>
<property>
<name>hbase.temp.dir</name>
<value>/hadoop/hbase-2.0.4/tmp</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/hadoop/hbase-2.0.4/tmp/zookeeper</value>
</property>
<property>
<name>hbase.master.info.port</name>
<value>60010</value>
</property>
</configuration>
6、配置regionservers
/hadoop/hbase-2.0.4/conf/regionservers
cb
cc
cd
7、各个主机之间复制HBase
scp -r /hadoop/hbase-2.0.4 ca:/hadoop
scp -r /hadoop/hbase-2.0.4 cb:/hadoop
scp -r /hadoop/hbase-2.0.4 cc:/hadoop
scp -r /hadoop/hbase-2.0.4 cd:/hadoop
四、启动HBase
启动之前先启动hadoop和zookeeper集群
HBase只需在一个节点上执行启动HBase命令,与Hadoop一样
$HADOOP_HOME/sbin/start-all.sh
cd /hadoop/hbase-2.0.4/bin
./start-hbase.sh
五、检查hbase启动情况
Slave 进程检查
x NodeManager
x HQuorumPeer
x DataNode
x HRegionServer
x Jps
Master进程检查
x Jps
x NodeManager
x HMaster
x HQuorumPeer
x DataNode
x HRegionServer
六、HBase配置web界面
http://192.168.253.10:60010/master-status
七、HBASE 操作数据
1、HBase shell窗口进入
执行命令hbase shell
2、HBase表的创建
# 语法:create <table>, {NAME => <family>, VERSIONS => <VERSIONS>}
# 例如:创建表t1,有两个family name:f1,f2,且版本数前者为3,后者为1
hbase(main)> create 't1',{NAME => 'f1', VERSIONS => 3},{NAME => 'f2', VERSIONS => 1}
3、创建hbase表emp
localhost:bin $ hbase shell
create 'emp','personal data','professional data'
4、插入数据并查看数据
将第一行的值插入到emp表如下所示。
hbase(main):005:0> put 'emp','1','personal data:name','raju'
0 row(s) in 0.6600 seconds
hbase(main):006:0> put 'emp','1','personal data:city','hyderabad'
0 row(s) in 0.0410 seconds
hbase(main):007:0> put 'emp','1','professional data:designation','manager'
0 row(s) in 0.0240 seconds
hbase(main):007:0> put 'emp','1','professional data:salary','50000'
0 row(s) in 0.0240 seconds
插入完成整个表格,会得到下面的输出。
hbase(main):002:0> scan 'emp'
ROW COLUMN+CELL
1 column=personal data:city, timestamp=1526269334560, value=hyderabad
1 column=personal data:name, timestamp=1526269326929, value=raju
1 column=professional data:designation, timestamp=1526269345044, value=manager
1 column=professional data:salary, timestamp=1526269352605, value=50000
1 row(s) in 0.2230 seconds
HBase表的删除
- disable表
- drop表
hbase(main)> disable 'tmp'
hbase(main)> drop 'tmp'
HBase表的清空
hbase(main)> truncate 't1'