hbase shell中执行list命令报错:ERROR: org.apache.hadoop.hbase.PleaseHoldException: Master is initializing

问题描述:

  今天在测试环境中,搭建hbase环境,执行list命令之后,报错:

hbase(main):001:0> list
TABLE                                                                                                                                                                                          

ERROR: org.apache.hadoop.hbase.PleaseHoldException: Master is initializing
	at org.apache.hadoop.hbase.master.HMaster.checkInitialized(HMaster.java:2642)
	at org.apache.hadoop.hbase.master.MasterRpcServices.getTableNames(MasterRpcServices.java:941)
	at org.apache.hadoop.hbase.protobuf.generated.MasterProtos$MasterService$2.callBlockingMethod(MasterProtos.java:63368)
	at org.apache.hadoop.hbase.ipc.RpcServer.call(RpcServer.java:2354)
	at org.apache.hadoop.hbase.ipc.CallRunner.run(CallRunner.java:124)
	at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:297)
	at org.apache.hadoop.hbase.ipc.RpcExecutor$Handler.run(RpcExecutor.java:277)

Here is some help for this command:
List all user tables in hbase. Optional regular expression parameter could
be used to filter the output. Examples:

  hbase> list
  hbase> list 'abc.*'
  hbase> list 'ns:abc.*'
  hbase> list 'ns:.*'

问题解决:

1.在网上找了一下,说的是,底层的使用的是本地的文件系统,没有使用hdfs

2.将base-site.xml文件中的hbase.rootdir进行修改,改为以下的内容:

  <property>
    <name>hbase.rootdir</name>
    <value>hdfs://redhat6:9000/hbase</value>
  </property>

备注:将hbase.rootdir改为hdfs的目录,不是使用本地的目录

3.修改之后,重启hbase,在此执行list,问题解决.

文档创建时间:2018年5月4日10:45:49

原文地址:https://www.cnblogs.com/chuanzhang053/p/8989527.html