hbase分布式安装部署过程

编程语言及工具

99人已加入

描述

hbase分布式安装部署过程

1、 HBase 安装

1) 下载安装包

hbase-090.3.tar.gz版本与hadoop-1.2.1良好兼容,从官网下载hbase-090.3.tar.gz安装包,并将下载的hbase-090.3.tar.gz拷贝到/home/hadoop目录下。hbase官网下载地址:http://archive.apache.org/dist/hbase/

选择HBase-0.94.20版本,下载 HBase Releases.

2) 解压安装包

[hadoop@K-Master ~]$ cd /usr

[hadoop@K-Master usr]$ sudo tar -xvf /home/hadoop/hbase-090.3.tar.gz #解压安装源码包

[hadoop@K-Master usr]$ mv hbase-090.3 hbase #重命名

[hadoop@K-Master usr]$ cd hbase

[hadoop@K-Master hbase]$ sudo chown -R hadoop:hadoop hbase #赋予hbase安装目录下所有文件hadoop权限

3) 配置安装路径

#将hbase下的bin目录添加到系统的path中,在/etc/profile文件尾行添加如下的内容

[hadoop@K-Master usr]$ sudo vim /etc/profile

export PATH=$PATH:/usr/hbase/bin

#执行source命令使上述配置在当前终端立即生效

[hadoop@K-Master usr]$ source /etc/profile

4) 验证是否安装成功

[hadoop@K-Master usr]$ hbase version

14/07/21 18:01:57 INFO util.VersionInfo: HBase 0.94.20

14/07/21 18:01:57 INFO util.VersionInfo: Subversion git://newbunny/home/lars/dev/hbase-0.94 -r 09c60d770f2869ca315910ba0f9a5ee9797b1edc

14/07/21 18:01:57 INFO util.VersionInfo: Compiled by lars on Fri May 23 22:00:41 PDT 2014

看到以上打印消息表示Hbase已经安装成功,接下来将分别进行Hbase单机模式和伪分布式模式的配置。

2、 HBase单机模式

1) 配置/conf/hbase-env.sh

将JAVA_HOME变量设置为Java安装的根目录,配置如下所示:

[hadoop@K-Master hbase]$ vim conf/hbase-env.sh

#对hbase-env.sh文件做如下修改:

export JAVA_HOME=/usr/java/jdk1.7.0_65 #配置本机的java安装根目录

export HBASE_MANAGES_ZK=true #配置由hbase自己管理zookeeper,不需要单独的zookeeper。

2) 配置/conf/hbase-site.xml

在启动Hbase前需要设置属性hbase.rootdir,用于指定Hbase数据的存储位置,此处设置为HBase安装目录下的hbase-tmp文件夹即(file:///usr/hbase/hbase-tmp),配置如下:

[hadoop@K-Master hbase]$ vim conf/hbase-site.sh

《configuration》

《property》

《name》hbase.rootdir《/name》

《value》file:///usr/hbase/hbase-tmp《/value》

《/property》

《/configuration》

特别注意:hbase.rootdir默认为/tmp/hbase-${user.name},这意味着每次重启系统都会丢失数据。

3) 启动Hbase

[hadoop@K-Master hbase]$ start-hbase.sh

starting master, logging to /usr/hbase/bin/。./logs/hbase-hadoop-master-K-Master.localdomain.out

4) 进入shell模式

进入shell模式之后,通过status命令查看Hbase的运行状态,通过exit命令退出shell。

[hadoop@K-Master hbase]$ hbase shell

HBase Shell; enter ‘help《RETURN》’ for list of supported commands.

Type “exit《RETURN》” to leave the HBase Shell

Version 0.94.20, r09c60d770f2869ca315910ba0f9a5ee9797b1edc, Fri May 23 22:00:41 PDT 2014

hbase(main):001:0》 status

1 servers, 0 dead, 2.0000 average load

hbase(main):002:0》 exit

5) 停止HBase

[hadoop@K-Master hbase]$ stop-hbase.sh

stopping hbase

特别注意:如果在操作Hbase的过程中发生错误,可以通过{HBASE_HOME}目录(/usr/hbase)下的logs子目录中的日志文件查看错误原因。

3、 HBase伪分布式模式

1) 配置/conf/hbase-env.sh

添加变量HBASE_CLASSPATH,并将路径设置为本机Hadoop安装目录下的conf目录(即{HADOOP_HOME}/conf)。修改完成后,hbase-env.sh的配置如下:

[hadoop@K-Master hbase]$ vim conf/hbase-env.sh

export JAVA_HOME=/usr/java/jdk1.7.0_65

export HBASE_CLASSPATH=/usr/hadoop/conf

export HBASE_MANAGES_ZK=true

2) 配置/conf/hbase-site.xml

修改hbase.rootdir,将其指向K-Master(与hdfs的端口保持一致),并指定HBase在HDFS上的存储路径。将属性hbase.cluter.distributed设置为true。假设当前Hadoop集群运行在伪分布式模式下,且NameNode运行在9000端口;

[hadoop@K-Master hbase]$ vim hbase-site.xml

《configuration》

《property》

《name》hbase.rootdir《/name》

《value》hdfs://K-Master:9000/hbase《/value》

《/property》

《property》

《name》hbase.cluster.distributed《/name》

《value》true《/value》

《/property》

《/configuration》

3) 启动HBase

完成以上操作后启动HBase,启动顺序:先启动Hadoop–》再启动HBase,关闭顺序:先关闭HBase–》再关闭Hadoop。

第一步:启动hadoop集群

[hadoop@K-Master hbase]$ start-all.sh #启动hadoop

[hadoop@K-Master hbase]$ jps #查看进程

9040 DataNode

18205 Jps

9196 SecondaryNameNode

10485 JobTracker

10620 TaskTracker

8902 NameNode

特别注意:读者可先通过jps命令查看Hadoop集群是否启动,如果Hadoop集群已经启动,则不需要执行Hadoop集群启动操作。

第二步:启动HBase

[hadoop@K-Master lib]$ start-hbase.sh #启动Hbase

K-Master: starting zookeeper, logging to /usr/hbase/bin/。./logs/hbase-hadoop-zookeeper-K-Master.localdomain.out

starting master, logging to /usr/hbase/bin/。./logs/hbase-hadoop-master-K-Master.localdomain.out

K-Master: starting regionserver, logging to /usr/hbase/bin/。./logs/hbase-hadoop-regionserver-K-Master.localdomain.out

[hadoop@K-Master lib]$ jps #查看进程

9040 DataNode

18889 HMaster

19201 Jps

9196 SecondaryNameNode

19073 HRegionServer

10485 JobTracker

10620 TaskTracker

18818 HQuorumPeer

8902 NameNode
       
      进入shell模式

进入shell模式之后,通过list命令查看当前数据库所有表信息,通过create命令创建一个member表,其拥有member_id,address,info三个列族,通过describe命令查看member表结构,通过exit命令退出HBase shell模式。

[hadoop@K-Master hadoop]$ hbase shell

HBase Shell; enter ‘help《RETURN》’ for list of supported commands.

Type “exit《RETURN》” to leave the HBase Shell

Version 0.94.20, r09c60d770f2869ca315910ba0f9a5ee9797b1edc, Fri May 23 22:00:41 PDT 2014

hbase(main):001:0》 create ‘member’,‘member_id’,‘address’,‘info’

0 row(s) in 2.7170 seconds

hbase(main):002:0》 list

TABLE

member

1 row(s) in 0.0550 seconds

hbase(main):003:0》 describe ‘member’

DESCRIPTION ENABLED

‘member’, {NAME =》 ‘address’, DATA_BLOCK_ENCODING = true》 ‘NONE’, BLOOMFILTER =》 ‘NONE’, REPLICATION_SCOPE

=》 ‘0’, VERSIONS =》 ‘3’, COMPRESSION =》 ‘NONE’, MIN_VERSIONS =》 ‘0’, TTL =》 ‘2147483647’, KEEP_DELETED

_CELLS =》 ‘false’, BLOCKSIZE =》 ‘65536’, IN_MEMORY=》 ‘false’, ENCODE_ON_DISK =》 ‘true’, BLOCKCACHE =》

‘true’}, {NAME =》 ‘info’, DATA_BLOCK_ENCODING =》 ‘NONE’, BLOOMFILTER =》 ‘NONE’, REPLICATION_SCOPE =》

‘0’, VERSIONS =》 ‘3’, COMPRESSION =》 ‘NONE’, MIN_VERSIONS =》 ‘0’, TTL =》 ‘2147483647’, KEEP_DELETED_CE

LLS =》 ‘false’, BLOCKSIZE =》 ‘65536’, IN_MEMORY =》‘false’, ENCODE_ON_DISK =》 ‘true’, BLOCKCACHE =》 ‘t

rue’}, {NAME =》 ‘member_id’, DATA_BLOCK_ENCODING =》‘NONE’, BLOOMFILTER =》 ‘NONE’, REPLICATION_SCOPE =

》 ‘0’, VERSIONS =》 ‘3’, COMPRESSION =》 ‘NONE’, MIN_VERSIONS =》 ‘0’, TTL =》 ‘2147483647’, KEEP_DELETED_

CELLS =》 ‘false’, BLOCKSIZE =》 ‘65536’, IN_MEMORY =》 ‘false’, ENCODE_ON_DISK =》 ‘true’, BLOCKCACHE =》

‘true’}1 row(s) in 0.1040 secondshbase(main):004:0》 exit

查看HDFS的HBase数据库文件

通过hadoop fs –ls /hbase命令查看HBase分布式数据库在HDFS上是否成功创建,/hbase/member文件夹即为上一步我们所建立的member数据库在HDFS上的存储位置。

[hadoop@K-Master conf]$ hadoop fs -ls /hbase

Found 8 items

drwxr-xr-x - hadoop supergroup 0 2014-07-21 19:46 /hbase/-ROOT-

drwxr-xr-x - hadoop supergroup 0 2014-07-21 19:46 /hbase/.META.

drwxr-xr-x - hadoop supergroup 0 2014-07-22 11:38 /hbase/.logs

drwxr-xr-x - hadoop supergroup 0 2014-07-22 11:39 /hbase/.oldlogs

drwxr-xr-x - hadoop supergroup 0 2014-07-22 11:40 /hbase/.tmp

-rw-r--r-- 1 hadoop supergroup 38 2014-07-21 19:46 /hbase/hbase.id

-rw-r--r-- 1 hadoop supergroup 3 2014-07-21 19:46 /hbase/hbase.version

drwxr-xr-x - hadoop supergroup 0 2014-07-22 11:40 /hbase/member

停止HBase

完成上述操作后,执行关闭HBase操作,关闭顺序:先关闭HBase —》再关闭Hadoop。

[hadoop@K-Master hadoop]$ stop-hbase.sh #停止Hbase

stopping hbase

K-Master: stopping zookeeper.

[hadoop@K-Master hadoop]$ stop-all.sh #停止Hadoop

stopping jobtracker

K-Master: stopping tasktracker

stopping namenode

K-Master: stopping datanode

K-Master: stopping secondarynamenode

4、 HBase的用户界面

1) HDFS主页

输入http://{主机名}:50070/dfshealth.jsp 进入HDFS主页,在该主页点击“Browse the filesystem”超链接,选择hbase目录,可以查看HBase在HDFS上生成的/hbase目录结构,该目录用于存放Hbase数据,如下图所示;

 Hbase

2) Master页面

通过地址http://{主机名}:60010/master.jsp 可以查看HBase的相关信���,如下图所示。

Hbase

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分