本文记录了自己在本地一台LINUX server上,搭建 standalone方式的hbase测试环境的过程。
一 server环境描述:
软件 | 版本 | 备注 |
---|---|---|
JDK | 1.8 | |
hadoop | hadoop-2.6.0-cdh5.7.1 | standalone方式安装,单节点 |
zk cluster | zookeeper-3.4.5-cdh5.7.1 | 伪分布式集群环境,3个节点 |
hbase | 1.2.5 | 社区版 |
二 安装过程
下载解压hbase
tar -xf hbase-1.2.5-bin.tar.gz
安装hbase
a). 配置环境变量
① 进入~/.bashrc,配置HBASE_HOME,配完后,方便执行bin目录下的命令
export HBASE_HOME=/home/david/cloudera/lib/hbase-1.2.5
② 配置conf/hbase-env.sh
使用外部zk集群,并设置合适的堆大小。
export JAVA_HOME=/home/david/JAVA_DEV/JDK/jdk1.8.0_40
export HBASE_HEAPSIZE=4G
export HBASE_MANAGES_ZK=false
③配置conf/hbase-site.xml
<property>
<name>hbase.rootdir</name>
<!--<value>file:///home/david/test_install/hbase</value>-->
<value>hdfs://hadoop1:8020/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>hadoop1:2181,hadoop1:2182,hadoop1:2183</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/home/david/test_install/zookeeper</value>
</property>
其中:
* hbase.rootdir:指定Hbase数据存储目录,可以为本地目录,也可以为hdfs目录
* hbase.cluster.distributed :指定是否是完全分布式模式,单机模式和伪分布式模式需要将该值设为false
* hbase.zookeeper.quorum:指定zookeeper的集群,多台机器以逗号分隔,我这里配的为伪分布式zk集群
④配置regionservers文件
这里为单节点部署,无需修改,或将默认的localhost修改为本机host即可
⑤添加hadoop文件到hbase配置目录中
因为需要指定hdfs作为hbase存储目录,为简化环境依赖配置,拷贝 HADOOP_HOME/etc/hadoop目录中的hdfs-site.xml和core-site.xml文件,到 $HBASE_HOME/conf中。
三 测试过程情况
默认hadoop,zk伪分布式集群已经提前启动,jps查看启动的进程。
6645 SecondaryNameNode
4808 QuorumPeerMain
4937 QuorumPeerMain
4970 QuorumPeerMain
17770 Jps
6475 DataNode
6350 NameNode执行$HBASE_HOME/bin/start-hbase.sh启动脚本,观察日志输出,确保没有启动错误项。
重新执行jps查看启动的进程,发现多了hbase的master与regionserver进程,如下:7025 HMaster
7171 HRegionServer启动hbase shell环境,测试建表语句
david@hadoop1:~/cloudera/lib/hbase-1.2.5/conf$ hbase shell
HBase Shell; enter ‘help’ for list of supported commands.
Type “exit<>>” to leave the HBase Shell
Version 1.2.5, rd7b05f79dee10e0ada614765bb354b93d615a157, Wed Mar 1 00:34:48 CST 2017
hbase(main):001:0> create ‘tbl_1’,’cf_1’,’cf_2’,’cf_3’
0 row(s) in 2.4170 seconds
=> Hbase::Table - tbl_1