Hbase 无法启动问题?

huang_w 2013-12-12 04:22:56
实验环境(完全分布式):

hadoop-1.2.1
hbase-0.96.0-hadoop1
192.168.1.10 master
192.168.1.101 node1
192.168.1.102 node2
192.168.1.103 node3

hbse-env.sh

# The java implementation to use. Java 1.6 required.
export JAVA_HOME=/usr/jdk1.7.0_25

# Extra Java CLASSPATH elements. Optional.
export HBASE_CLASSPATH=/home/hadoop/hadoop-1.2.1/conf

hbase-site.xml

<property>
<name>hbase.rootdir</name>
<value>hdfs://master:9000/hbase</value>
</property>
<!--open hbase distributed-->
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<!-- hbase tmp dir -->
<property>
<name>hbase.tmp.dir</name>
<value>/home/hadoop/hbase-0.96.0-hadoop1/tmp</value>
</property>
<!-- zookeeper node conf-->
<property>
<name>hbase.zookeeper.quorum</name>
<value>master,node1,node2</value>
</property>
<!-- zookeeper tmp dir -->
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/home/hadoop/hbase-0.96.0-hadoop1/zookeeper</value>
</property>

regioservers 内容:

node1
node2
node3


hadoop-core-1.2.1.jar, commons-configuration-1.6.jar都已经拷贝到hbase的lib目录下
在hadoop集群启动后,启动hbase,刚开始在master中jps查看进程还能看到Hmaster和HQuorumPeer 进程
过几秒后Hmaster进程不见了,数据节点也未看到任何hbase的进程只有hadoop进程。
以下是hbase-hadoop-master-master.out启动日志部分报错内容:

13/12/12 02:35:46 INFO util.VersionInfo: HBase 0.96.0-hadoop1
environment:user.home=/home/hadoop
13/12/12 02:35:47 INFO zookeeper.ZooKeeper: Client environment:user.dir=/home/hadoop/hadoop-1.2.1
13/12/12 02:35:47 INFO zookeeper.ZooKeeper: Initiating client connection, connectString=node1:2181,master:2181,node2:2181 sessionTimeout=90000 watcher=hconnection-0x599aa2db
13/12/12 02:35:47 INFO zookeeper.RecoverableZooKeeper: Process identifier=hconnection-0x599aa2db connecting to ZooKeeper ensemble=node1:2181,master:2181,node2:2181
13/12/12 02:35:47 INFO zookeeper.ClientCnxn: Opening socket connection to server node2/192.168.1.102:2181. Will not attempt to authenticate using SASL (unknown error)
13/12/12 02:35:47 WARN zookeeper.ClientCnxn: Session 0x0 for server null, unexpected error, closing socket connection and attempting reconnect
java.net.ConnectException: Connection refused
at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:708)
at org.apache.zookeeper.ClientCnxnSocketNIO.doTransport(ClientCnxnSocketNIO.java:350)
at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1068)
13/12/12 02:35:47 INFO zookeeper.ClientCnxn: Opening socket connection to server node1/192.168.1.101:2181. Will not attempt to authenticate using SASL (unknown error)
13/12/12 02:35:47 WARN zookeeper.RecoverableZooKeeper: Possibly transient ZooKeeper, quorum=node1:2181,master:2181,node2:2181, exception=org.apache.zookeeper.KeeperException$ConnectionLossException: KeeperErrorCode = ConnectionLoss for /hbase/hbaseid
13/12/12 02:35:47 INFO util.RetryCounter: Sleeping 2000ms before retry #1...
13/12/12 02:35:47 WARN zookeeper.ClientCnxn: Session 0x0 for server null, unexpected error, closing socket connection and attempting reconnect
java.net.ConnectException: Connection refused
at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:708)
at org.apache.zookeeper.ClientCnxnSocketNIO.doTransport(ClientCnxnSocketNIO.java:350)
at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1068)
13/12/12 02:35:47 INFO zookeeper.ClientCnxn: Opening socket connection to server master/192.168.1.10:2181. Will not attempt to authenticate using SASL (unknown error)
13/12/12 02:35:47 WARN zookeeper.ClientCnxn: Session 0x0 for server null, unexpected error, closing socket connection and attempting reconnect
java.net.ConnectException: Connection refused
at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:708)
at org.apache.zookeeper.ClientCnxnSocketNIO.doTransport(ClientCnxnSocketNIO.java:350)




...全文
1004 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
撸大湿 2013-12-13
  • 打赏
  • 举报
回复
引用 3 楼 huang_w 的回复:
[quote=引用 1 楼 tntzbzc 的回复:]
LZ,看这个日志没用

HMASTER挂掉,是因为ZK集群在HMASTER之前就挂了
还有你用的是jdk1.7?
为啥不用1.6,稳定很多。。。

谢谢!请问为什么Hmaster进程起来了后面就自动关闭了呢?
还有我把hbase目录删除重新安装就没问题了,conf目录是复制原来的,为什么用新的安装目录就好了?之前报错是因为哪些数据有问题了?那些错误数据存放在哪个目录下?
[/quote]

Hmaster关闭,是因为找不到ZK集群的主控机
ZK集群拉起来的时候会预选一台节点作为主控
ZK的主控如果选不出,或者ZK启动异常,就会造成ZK全部挂掉

在HBASE第一次启动时,ZK集群如果挂掉了,HMASTER也活不常,会紧跟着挂。。。

建议你多看看ZK的LOG文件,在HBASE的log目录中找找。。



引用 4 楼 huang_w 的回复:
[quote=引用 2 楼 zhao88148201 的回复:]
1。集群间的时间不一致
2。关闭防火墙
3。集群中有的机器/etc/hosts不一致
4。hbase-site.xml中要配置hbase.zookeeper.quorum
5。regionservers中要配置节点主机名,和hbase.zookeeper.quorum一致

前面4点我检查过了都没问题,第五点有点疑问,为什么要保持一致?这两有什么关系?它们作用是什么?谢谢![/quote]

regionservers中要配置节点主机名,和hbase.zookeeper.quorum不一定需要保持一致
ZK集群和HBASE集群完全可以分开部署,甚至借用其他外部ZK集群公用
huang_w 2013-12-12
  • 打赏
  • 举报
回复
引用 2 楼 zhao88148201 的回复:
1。集群间的时间不一致 2。关闭防火墙 3。集群中有的机器/etc/hosts不一致 4。hbase-site.xml中要配置hbase.zookeeper.quorum 5。regionservers中要配置节点主机名,和hbase.zookeeper.quorum一致
前面4点我检查过了都没问题,第五点有点疑问,为什么要保持一致?这两有什么关系?它们作用是什么?谢谢!
huang_w 2013-12-12
  • 打赏
  • 举报
回复
引用 1 楼 tntzbzc 的回复:
LZ,看这个日志没用 HMASTER挂掉,是因为ZK集群在HMASTER之前就挂了 还有你用的是jdk1.7? 为啥不用1.6,稳定很多。。。
谢谢!请问为什么Hmaster进程起来了后面就自动关闭了呢? 还有我把hbase目录删除重新安装就没问题了,conf目录是复制原来的,为什么用新的安装目录就好了?之前报错是因为哪些数据有问题了?那些错误数据存放在哪个目录下?
zhao88148201 2013-12-12
  • 打赏
  • 举报
回复
1。集群间的时间不一致 2。关闭防火墙 3。集群中有的机器/etc/hosts不一致 4。hbase-site.xml中要配置hbase.zookeeper.quorum 5。regionservers中要配置节点主机名,和hbase.zookeeper.quorum一致
撸大湿 2013-12-12
  • 打赏
  • 举报
回复
LZ,看这个日志没用 HMASTER挂掉,是因为ZK集群在HMASTER之前就挂了 还有你用的是jdk1.7? 为啥不用1.6,稳定很多。。。

20,808

社区成员

发帖
与我相关
我的任务
社区描述
Hadoop生态大数据交流社区,致力于有Hadoop,hive,Spark,Hbase,Flink,ClickHouse,Kafka,数据仓库,大数据集群运维技术分享和交流等。致力于收集优质的博客
社区管理员
  • 分布式计算/Hadoop社区
  • 涤生大数据
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧