温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

hbase配置与安装

发布时间:2020-07-11 14:23:59 来源:网络 阅读:927 作者:ww51pp 栏目:关系型数据库

 

 

HBase配置安装

 

hbase0.98.5使用hadoop2.2.0安装在rhel6.2系统。

 

下载 hbase-0.98.5-hadoop2-bin.tar.gz并上传到服务器

使用命令进行解压

[root@master soft]# tar -zxvfhbase-0.98.5-hadoop2-bin.tar.gz

 

对解压后的目录cp到指定目录,目前使用的是hdtest用户home目录下

[root@master soft]# cp hbase-0.98.5-hadoop2/home/hdtest/hbase2/

hbase2 目录进行修改所属组及用户

chown hdtest.hdtest hbase2/ -R

 

修改 conf目录下的 3 个配置文件:

1. hbase-env.sh

hadoop-env.sh,该文件设定了 hbase 的环境,修改的部分如下:

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

export HBASE_CLASSPATH=/home/hdtest/hadoop-2.2.0/etc/hadoop/

export HBASE_HEAPSIZE=1000

exportHBASE_MANAGES_ZK=false

其中,HBASE_CLASSPATH指向存放有 Hadoop 配置文件的目录,这样 HBase 可以找到 HDFS的配置信息,由于本文 Hadoop HBase 部署在相同的物理节点,所以就指向了 Hadoop 安装路径下的目录。HBASE_HEAPSIZE 单位为 MB,可以根据需要和实际剩余内存设置,默认为 1000HBASE_MANAGES_ZK=false指示 HBase 使用已有的 Zookeeper 而不是自带的。

 

2. hbase-site.xml

该文件是 hbase 最主要的配置文件,配置如下:

<configuration>

<property>

<name>hbase.rootdir</name>

<value>hdfs://master:9000/hbase</value>

</property>

<property>

<name>hbase.cluster.distributed</name>

<value>true</value>

</property>

<property>

<name>hbase.tmp.dir</name>

<value>/home/hdtest/hbase2</value>

</property>

</configuration>

第一项指定了 hbase 所使用的文件系统为 HDFS,根目录为 hdfs://master:9000/hbase,该目录应该由 HBase 自动创建,只需要指定到正确的 HDFS NameNode 上即可。第二项指定 HBase的工作模式为分布式的,第三项指定 HBase 将元数据存放路径为/home/hdtest/hbase2,需要在 node0(Master)上创建该目录。

 

3. regionservers

此文件指定了HBaseRegionServers,相当于hadoop配置文件中的slaves。本文将slave1/2作为 RegionServer,所以文件内容为:

192.168.200.3

192.168.200.4

HBase 配置完成,将其分发到所有的 Master RegionServer 节点上的相同目录下,如

/home/hdtest/hbase2,并把刚才的 zoo.cfg 拷贝到每个节点的 HBASE_CLASSPATH (/home/hdtest/hadoop-2.2.0/etc/hadoop/),使得 HBase 可以找到 Zookeeper 的配置。

 

首先在NameNode(node0)上将 HDFS启动:

$ ~/hadoop-1.0.2/bin/start-dfs.sh

然后在 Zookeeperensemble的每一个节点(node1/2/3)上分别启动 Zookeeper:

$ ~/zookeeper-3.4.3/bin/zkServer.sh start

Master(node0)上启动 HBase

$ ~/hbase-0.94.0/bin/start-hbase.sh

用浏览器访问:

http://node0:60010

可以看到 HBase 的运行信息,如果 Attributes  ->Load average 中有数字,Tables 中有-ROOT-

.META.两张表,并且 Region Server 中的信息也都正常,则 HBase 正常启动了。

关闭的顺序和启动的顺序相反,先关闭 HBase

$ ~/hbase-0.94.0/bin/stop-hbase.sh

然后关闭 Zookeeper HDFS

 

 

问题解决:

1,时间同步问题导致其他RegionServers启动报错

 

2014-10-16 13:01:11,956 FATAL[regionserver60020] regionserver.HRegionServer: Master rejected startup becauseclock is out of sync

org.apache.hadoop.hbase.ClockOutOfSyncException:org.apache.hadoop.hbase.ClockOutOfSyncException: Serverslave2,60020,1413435669437 has been rejected; Reported time is too far out ofsync with master.  Time difference of 400025ms > max allowed of 30000ms

at org.apache.hadoop.hbase.master.ServerManager.checkClockSkew(ServerManager.java:344)

       atorg.apache.hadoop.hbase.master.ServerManager.regionServerStartup(ServerManager.java:237)

       atorg.apache.hadoop.hbase.master.HMaster.regionServerStartup(HMaster.java:1286)

       atorg.apache.hadoop.hbase.protobuf.generated.RegionServerStatusProtos$RegionServerStatusSe

 

从报错信息上看出时间不同步导致。

 

解决办法:

需要在集群中配置一个ntp服务器(配置方法网络上多得是),然后在master节点使用stop-hbase.sh停止所有hbase服务,查看ntp服务是否生效,即master节点和regionserver节点时间是否一致后,再次启动hbase服务。

 

master服务器使用jps查看hbase进程

[hdtest@master ~]$ jps

6930 HMaster

9638 Jps

14932 JournalNode

4120 QuorumPeerMain

15013 NameNode

15345 ResourceManager

Hamster服务是hbase服务。

JournalnodenamenodeHA时配置的服务。

Quorumpeermainzookeeper启动的服务。

Namenoderesourcemanagerhdfs启动服务

 

slave1节点上查看hbase服务

[hdtest@slave1 ~]$ jps

21281 QuorumPeerMain

26528 Jps

11762 JournalNode

11854 NameNode

23557 HRegionServer

 

 


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI