分享

HBase 出现就没的问题

夏洛特猫 发表于 2015-5-11 15:50:42 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 12 28396
在这先谢谢jixianqiuxue,通过他的指点集群改成了奇数个,版本也做了如下对应的更新,但是问题还是那样,实在不知道到底在哪里出问题了,希望知道的大家能帮帮忙
实验环境:
节点数:3个 1主2从
hadoop:hadoop-2.2.0   zookeeper:zookeeper-3.4.5   Hbase: hbase-0.96.2-hadoop2jdk :jkd-1.7.0

对应参数:
Hbase:
hbase-env.sh:
export HBASE_OPTS="-XX:+UseConcMarkSweepGC"
export JAVA_HOME=/usr/java/jdk1.7.0
export HBASE_HOME=/home/hbase-0.98.5-hadoop2
export HADOOP_HOME=/home/hadoop-2.2.0
export HBASE_CLASSPATH=/home/hadoop-2.2.0/etc/hadoop
export PATH=$PATH:$HBASE_HOME/bin

export HBASE_MANAGES_ZK=false
hbase-site:
<property>
<name>hbase.rootdir</name>
<value>hdfs://172.18.11.1:9000/hbase</value>
</property>


<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>


<property>
<name>hbase.tmp.dir</name>
<value>file:/usr/hbase/tmp</value>
</property>


<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>file:/usr/hbase/zookeeper</value>
</property>


<property>
<name>hbase.zookeeper.clientPort</name>
<value>2181</value>
</property>


<property>
<name>hbase.master</name>
<value>hdfs://172.18.11.1:60000</value>
</property>


<property>
<name>hbase.zookeeper.quorum</name>
<value>172.18.11.1,172.18.11.5,172.18.11.73</value>
</property>



在本地对应的/usr 路径下 已经建立了hbase目录,并在其中建立了zookeeper和tmp目录


启动情况:
hadoop可以正常启动
zookeeper可以正常启动 通过./zkServer.sh status 各个节点分别显示了leader和foller
Hbases 启动后主节点HMaster自动消失,并且./stop-hbase.sh时发现 从节点的HRegionServer并不能关闭,并且Hbases的HMaster会突然启动一会上面问题非常奇怪,希望知道的大神给小白科普下


主节点报错信息如下:
org.apache.hadoop.hbase.catalog.CatalogTracker@25f7d3f2013-12-12 09:16:59,827 FATAL [master:master:60000] master.HMaster: Unhandled exception. Starting shutdown.
java.lang.IllegalArgumentException: .META. no longer exists. The table has been renamed to hbase:meta
        at org.apache.hadoop.hbase.TableName.valueOf(TableName.java:292)
        at org.apache.hadoop.hbase.zookeeper.ZKTable.populateTableStates(ZKTable.java:82)
        at org.apache.hadoop.hbase.zookeeper.ZKTable.<init>(ZKTable.java:69)
        at org.apache.hadoop.hbase.master.AssignmentManager.<init>(AssignmentManager.java:281)
        at org.apache.hadoop.hbase.master.HMaster.initializeZKBasedSystemTrackers(HMaster.java:677)
        at org.apache.hadoop.hbase.master.HMaster.finishInitialization(HMaster.java:809)
        at org.apache.hadoop.hbase.master.HMaster.run(HMaster.java:603)
        at java.lang.Thread.run(Thread.java:662)
INFO  [master:master:60000] master.HMaster: HMaster main thread exiting
2013-12-12 09:16:59,878 ERROR [main] master.HMasterCommandLine: Master exiting
java.lang.RuntimeException: HMaster Aborted
        at org.apache.hadoop.hbase.master.HMasterCommandLine.startMaster(HMasterCommandLine.java:192)
        at org.apache.hadoop.hbase.master.HMasterCommandLine.run(HMasterCommandLine.java:134)
        at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
        at org.apache.hadoop.hbase.util.ServerCommandLine.doMain(ServerCommandLine.java:126)
        at org.apache.hadoop.hbase.master.HMaster.main(HMaster.java:2787)


从节点:Hbases日志,从节点状态时一直有HRegionServer但是关闭Hbases脚本时候从节点的HRegionServer要手动kill才行

2015-05-11 15:47:00,717 INFO  [regionserver60020] zookeeper.ZooKeeper: Client environment:java.library.path=/home/hadoop-2.2.0/lib/native
2015-05-11 15:47:00,717 INFO  [regionserver60020] zookeeper.ZooKeeper: Client environment:java.io.tmpdir=/tmp
2015-05-11 15:47:00,717 INFO  [regionserver60020] zookeeper.ZooKeeper: Client environment:java.compiler=<NA>
2015-05-11 15:47:00,717 INFO  [regionserver60020] zookeeper.ZooKeeper: Client environment:os.name=Linux
2015-05-11 15:47:00,717 INFO  [regionserver60020] zookeeper.ZooKeeper: Client environment:os.arch=amd64
2015-05-11 15:47:00,717 INFO  [regionserver60020] zookeeper.ZooKeeper: Client environment:os.version=3.11.10
2015-05-11 15:47:00,717 INFO  [regionserver60020] zookeeper.ZooKeeper: Client environment:user.name=root
2015-05-11 15:47:00,717 INFO  [regionserver60020] zookeeper.ZooKeeper: Client environment:user.home=/root
2015-05-11 15:47:00,717 INFO  [regionserver60020] zookeeper.ZooKeeper: Client environment:user.dir=/home/hbase-0.96.2-hadoop2
2015-05-11 15:47:00,718 INFO  [regionserver60020] zookeeper.ZooKeeper: Initiating client connection, connectString=wc073:2181,wc005:2181 sessionTimeout=90000 watcher=regionserver:60020, quorum=wc073:2181,wc005:2181, baseZNode=/hbase
2015-05-11 15:47:00,733 INFO  [regionserver60020] zookeeper.RecoverableZooKeeper: Process identifier=regionserver:60020 connecting to ZooKeeper ensemble=wc073:2181,wc005:2181
2015-05-11 15:47:00,735 INFO  [regionserver60020-SendThread(wc005:2181)] zookeeper.ClientCnxn: Opening socket connection to server wc005/172.18.11.5:2181. Will not attempt to authenticate using SASL (unknown error)
2015-05-11 15:47:00,736 INFO  [regionserver60020-SendThread(wc005:2181)] zookeeper.ClientCnxn: Socket connection established to wc005/172.18.11.5:2181, initiating session
2015-05-11 15:47:00,746 INFO  [regionserver60020-SendThread(wc005:2181)] zookeeper.ClientCnxn: Session establishment complete on server wc005/172.18.11.5:2181, sessionid = 0x24d41f077970001, negotiated timeout = 40000
2015-05-11 15:47:00,798 INFO  [main] regionserver.ShutdownHook: Installed shutdown hook thread: Shutdownhook:regionserver60020

这个错误信息在贴吧已经看到了解决方法:
1.清除tmp目录,不知道什么原因我的/usr/hbase/ 下面的zookeeper和tmp中在启动后并没有内容存储进去,同时也做不了清楚zookeeper的data这一步
2.确定版本,我的这些版本应该是正确的,并且对应的Hbases的lib目录下的.jar文件也对应了hadoop-2.2.0的lib
3.执行权限 权限是root的高级用户应该没问题
4.时间,各个节点的时间已经同步5.hadoop 安全模式已经关闭





已有(12)人评论

跳转到指定楼层
Alkaloid0515 发表于 2015-5-11 15:56:19


看来是配置问题了
楼主对比这个文档,看看那里有问题
hbase 0.96整合到hadoop2.2三个节点全分布式安装高可靠文档
回复

使用道具 举报

夏洛特猫 发表于 2015-5-11 16:05:37
本帖最后由 夏洛特猫 于 2015-5-11 16:17 编辑
Alkaloid0515 发表于 2015-5-11 15:56
看来是配置问题了
楼主对比这个文档,看看那里有问题
hbase 0.96整合到hadoop2.2三个节点全分布式安 ...

谢谢您的回复,那个帖子我已经看过了,照着改也不行。hadoop-2.2.0的配置绝对没问题,因为在上面跑了很多负载
zookeeper的配置也只是修改zoo.cfg中的文件
具体记录如下:
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/home/zookeeper-3.4.5/zookeeper-data
dataLogDir=/home/zookeeper-3.4.5/logs

clientPort=2181
server.1=172.18.11.1:2888:3888
server.2=172.18.11.5:2888:3888
server.3=172.18.11.73:2888:3888



hbase中的hbase-env.sh和hbase-site.xml则是照着你建议的那篇修改的,但是报错一样,都崩溃了,完全不知道哪里的问题。。。
回复

使用道具 举报

bob007 发表于 2015-5-11 16:07:31
夏洛特猫 发表于 2015-5-11 16:05
谢谢您的回复,那个帖子我已经看过了,照着改也不行。hadoop-2.2.0的配置绝对没问题,因为在上面跑了很多 ...

配置的过程中,尽量不要选择home,很容易发生权限问题
dataDir=/home/ljw/zookeeper-3.4.5/zookeeper-data
dataLogDir=/home/ljw/zookeeper-3.4.5/logs

回复

使用道具 举报

bob007 发表于 2015-5-11 16:13:05
夏洛特猫 发表于 2015-5-11 16:05
谢谢您的回复,那个帖子我已经看过了,照着改也不行。hadoop-2.2.0的配置绝对没问题,因为在上面跑了很多 ...


这里改一下

[mw_shl_code=bash,true]export HBASE_MANAGES_ZK=true[/mw_shl_code]


回复

使用道具 举报

bob007 发表于 2015-5-11 16:14:04
zookeeper是使用自带的,还是外部的
回复

使用道具 举报

夏洛特猫 发表于 2015-5-11 16:16:47
bob007 发表于 2015-5-11 16:14
zookeeper是使用自带的,还是外部的

谢谢您的回答,zookeeper使用的自己下载的版本也对应,没使用hbases 自带的,在hbases的变量中hbase-env.sh 中已经关闭了主动启动“export HBASE_MANAGES_ZK=false”
回复

使用道具 举报

bob007 发表于 2015-5-11 16:26:57

<property>
<name>hbase.zookeeper.clientPort</name>
<value>2181</value>
</property>

这个端口hbase.zookeeper.clientPort,是根据那个文档配置的,没有见过啊。



hbase.zookeeper.property.clientPort:ZooKeeper的zoo.conf中的配置。 客户端连接的端口。
来源:
HBase 默认配置说明(收藏版)

回复

使用道具 举报

bob007 发表于 2015-5-11 16:28:28
<property>
<name>hbase.zookeeper.quorum</name>
<value>172.18.11.1,172.18.11.5172.18.11.73</value>
</property>

这里面含有一个中文字符,楼主忽略了,这个是很小的细节。


回复

使用道具 举报

夏洛特猫 发表于 2015-5-11 16:35:15
bob007 发表于 2015-5-11 16:28
hbase.zookeeper.quorum
172.18.11.1,172.18.11.5,172.18.11.73

那个中文字符的“逗号”是我后加的,就是在网页上加的,配置里面没有错,但是我更换了路径 换成不在/home下就可以了 谢谢您的热心帮助
回复

使用道具 举报

12下一页
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条