1、集群规划
这里假设hadoop集群以及zookeeper集群都安装好了。
2、安装hbase
1、解压缩安装包
[hadoop@hadoop1 ~]$ tar -zxvf hbase-1.2.6-bin.tar.gz -C app
[hadoop@hadoop1 ~]$ cd app
[hadoop@hadoop1 app]$ ls
hadoop-2.6.5 hbase-1.2.6 hive jdk1.8.0_172
[hadoop@hadoop1 app]$
2、配置环境变量
[hadoop@hadoop1 hbase-1.2.6]$ cd
[hadoop@hadoop1 ~]$ vi .bash_profile
export HBASE_HOME=/home/hadoop/app/hbase-1.2.6
export PATH=$HBASE_HOME/bin:$PATH
[hadoop@hadoop1 ~]$ source .bash_profile
3、创建保存hbase临时文件的hbasedata文件夹
[hadoop@hadoop1 ~]$ cd app/hbase-1.2.6/
[hadoop@hadoop1 hbase-1.2.6]$ mkdir hbasedata
[hadoop@hadoop1 hbase-1.2.6]$
4、修改配置文件${HBASE_HOME}/conf/hbase-env.sh
[hadoop@hadoop1 conf]$ vi hbase-env.sh
# The java implementation to use. Java 1.7+ required.
export JAVA_HOME=/home/hadoop/app/jdk1.8.0_172
# Tell HBase whether it should manage it's own instance of Zookeeper or not.
export HBASE_MANAGES_ZK=false
5、修改配置文件${HBASE_HOME}/conf/hbase-site.xml
<configuration>
<!-- Temporary directory on the local filesystem. -->
<property>
<name>hbase.tmp.dir</name>
<value>/home/hadoop/app/hbase-1.2.6/hbasedata</value>
</property>
<!-- The directory shared by region servers and into which HBase persists. -->
<property>
<name>hbase.rootdir</name>
<value>hdfs://ns1/hbase</value>
</property>
<!-- The mode the cluster will be in. -->
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<!-- Comma separated list of servers in the ZooKeeper ensemble -->
<property>
<name>hbase.zookeeper.quorum</name>
<value>hadoop5,hadoop6,hadoop7</value>
</property>
</configuration>
6、修改${HBASE_HOME}/conf/regionservers
A plain-text file containing a list of hosts which should run a RegionServer in your HBase cluster. By
default this file contains the single entry localhost. It should contain a list of hostnames or IP
addresses, one per line, and should only contain localhost if each node in your cluster will run a
RegionServer on its localhost interface.
[hadoop@hadoop1 conf]$ vi regionservers
hadoop5
hadoop6
hadoop7
7、拷贝hadoop配置文件core-site.xml和hdfs-site.xml文件到${HBASE_HOME}/conf目录下
8、复制hadoop1上配置好的hbase-1.2.6文件夹到hadoop5/6/7
[hadoop@hadoop1 app]$ scp -r hbase-1.2.6/ hadoop5:/home/hadoop/app
[hadoop@hadoop1 app]$ scp -r hbase-1.2.6/ hadoop6:/home/hadoop/app
[hadoop@hadoop1 app]$ scp -r hbase-1.2.6/ hadoop7:/home/hadoop/app
3、启动 hbase
[hadoop@hadoop1 ~]$ start-hbase.sh
starting master, logging to /home/hadoop/app/hbase-1.2.6/logs/hbase-hadoop-master-hadoop1.out
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option PermSize=128m; support was removed in 8.0
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=128m; support was removed in 8.0
hadoop6: starting regionserver, logging to /home/hadoop/app/hbase-1.2.6/bin/../logs/hbase-hadoop-regionserver-hadoop6.out
hadoop5: starting regionserver, logging to /home/hadoop/app/hbase-1.2.6/bin/../logs/hbase-hadoop-regionserver-hadoop5.out
hadoop7: starting regionserver, logging to /home/hadoop/app/hbase-1.2.6/bin/../logs/hbase-hadoop-regionserver-hadoop7.out
hadoop6: Java HotSpot(TM) 64-Bit Server VM warning: ignoring option PermSize=128m; support was removed in 8.0
hadoop6: Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=128m; support was removed in 8.0
hadoop5: Java HotSpot(TM) 64-Bit Server VM warning: ignoring option PermSize=128m; support was removed in 8.0
hadoop5: Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=128m; support was removed in 8.0
hadoop7: Java HotSpot(TM) 64-Bit Server VM warning: ignoring option PermSize=128m; support was removed in 8.0
hadoop7: Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=128m; support was removed in 8.0
[hadoop@hadoop1 ~]$
4、验证
[hadoop@hadoop1 ~]$ hostname
hadoop1
[hadoop@hadoop1 ~]$ jps
11264 NameNode
11560 DFSZKFailoverController
19291 HMaster
19519 Jps
[hadoop@hadoop5 ~]$ hostname
hadoop5
[hadoop@hadoop5 ~]$ jps
4898 JournalNode
4418 QuorumPeerMain
4999 NodeManager
4808 DataNode
7998 HRegionServer
8158 Jps
[hadoop@hadoop6 ~]$ hostname
hadoop6
[hadoop@hadoop6 ~]$ jps
4945 JournalNode
4453 QuorumPeerMain
5047 NodeManager
4855 DataNode
7977 HRegionServer
8157 Jps
[hadoop@hadoop7 ~]$ hostname
hadoop7
[hadoop@hadoop7 ~]$ jps
6864 DataNode
7056 NodeManager
10182 Jps
6954 JournalNode
6476 QuorumPeerMain
10012 HRegionServer
hbase(main):004:0> create 't1','c1'
0 row(s) in 2.3150 seconds
=> Hbase::Table - t1
hbase(main):005:0> put 't1','row1','c1:name','zhangsan'
0 row(s) in 0.3920 seconds
hbase(main):006:0> put 't1','row1','c1:sex','f'
0 row(s) in 0.0310 seconds
hbase(main):007:0> scan 't1'
ROW COLUMN+CELL
row1 column=c1:name, timestamp=1529043017926, value=zhangsan
row1 column=c1:sex, timestamp=1529043038971, value=f
1 row(s) in 0.0970 seconds
hbase(main):008:0>