hbase 解决bug 小记

今天启动hbase集群,查看表时报错

hbase(main):001:0>list

TABLE

ERROR:org.apache.hadoop.hbase.ipc.ServerNotRunningYetException:Serverisnotrunningyet

atorg.apache.hadoop.hbase.ipc.RpcServer$Handler.run(RpcServer.java:1841)

Hereissomehelpforthiscommand:

Listalltablesinhbase.Optionalregularexpressionparametercould

beusedtofiltertheoutput.Examples:

hbase>list

hbase>list'abc.*'

所以去查看日志

morehbase-root-master-hadoop1.log

这里面日志比较多,如果你想查看当天的日志

可以使用/2015-05-23(当天时间)

2015-05-2317:00:17,542INFO[master:hadoop1:60000]catalog.CatalogTracker:Failedverificationofhbase:meta,,1ataddress=hadoop3,60020,1431732531994,exception=org.apache.hadoop.hbase.NotServingRegionException:org.apache.hadoop.hbase.NotServingRegionException:Regionisnotonline:1588230740

atorg.apache.hadoop.hbase.regionserver.HRegionServer.getRegionByEncodedName(HRegionServer.java:2576)

atorg.apache.hadoop.hbase.regionserver.HRegionServer.getRegion(HRegionServer.java:3949)

atorg.apache.hadoop.hbase.regionserver.HRegionServer.getRegionInfo(HRegionServer.java:3366)

atorg.apache.hadoop.hbase.protobuf.generated.AdminProtos$AdminService$2.callBlockingMethod(AdminProtos.java:19789)

atorg.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2146)

atorg.apache.hadoop.hbase.ipc.RpcServer$Handler.run(RpcServer.java:1851)

经查看原因原来是hadoop集群在安全模式的原因

执行命令

hadoopdfsadmin-safemodeleave

再重新启动habase

[root@hadoop1logs]#hbaseshell

2015-05-2317:14:45,609INFO[main]Configuration.deprecation:hadoop.native.libisdeprecated.Instead,useio.native.lib.available

HBaseShell;enter'help<RETURN>'forlistofsupportedcommands.

Type"exit<RETURN>"toleavetheHBaseShell

Version0.96.0-hadoop2,r1531434,FriOct1115:28:08PDT2013

hbase(main):001:0>list

TABLE

gmail

test

2row(s)in4.1420seconds

=>["gmail","test"]

问题解决

-safemodeenter|leave|get|wait安全模式维护命令。安全模式是Namenode的一个状态,这种状态下

1.不接受对名字空间的更改(只读)

2.不复制或删除块

Namenode会在启动时自动进入安全模式,当配置的块最小百分比数满足最小的副本数条件时,会自动离开安全模式。安全模式可以手动进入,但是这样的话也必须手动关闭安全模式。

相关推荐