今天尝试了一下HBase和Hadoop的集成。我的环境为hadoop2.2.0 hbase-0.96.1.1-hadoop2,均为伪分布模式。
系统为CentOS 6.4,64位,已安装好hadoop的伪分布式安装并启动。机器名为admin,用户名为hadoop2.
1.下载hbase-0.96.1.1-hadoop2-bin.tar.gz,并解压到安装目录。
2.修改~/hbase-0.96.1.1-hadoop2/conf目录下的hbase-env.sh文件
export JAVA_HOME=/usr/java/jdk1.7.0_25(修改为自己配置的java路径)
export HBASE_MANAGES_ZK=true(启用hbase管理zookeeper的形式)
3.修改~/hbase-0.96.1.1-hadoop2/conf目录下的hbase-site.xml文件。
<configuration> <property> <name>hbase.rootdir</name> <value>hdfs://admin:9000/hbase</value> </property> <property> <name>hbase.cluster.distributed</name> <value>true</value> </property> <property> <name>dfs.replication</name> <value>1</value> </property> <property> <name>hbase.zookeeper.quorum</name> <value>localhost</value> </property> </configuration>
其中,hbase.rootdir中的地址要跟hadoop2.2.0中配置的目录相同,然后加上自己要新建的目录hbase。
对于hbase.zookeeper.quorum的配置,我初始写的是机器名admin,但老是报错,之后改为localhost,貌似写成admin找不到解析地址。
4.启动
cd ~/hbase-0.96.1.1-hadoop2/bin
start-hbase.sh
5.检测是否启动
在shell下输入jps,即可看到增加了3个进程。HRegionServer,HQnorumPeer,HMaster
也可在浏览器查看http://admin:60010。(admin为配置的机器名)