错误讯息: 错误:java.io.IOException:表命名空间管理器尚未就绪,请在org.apache.hadoop.hbase.master.HMaster.getNamespaceDesc.java:3092再次尝试
配置: 我的env和xml的配置文件如下。 我从Hortonworks手动安装中精确地遵循了安装说明。我希望在localhost上以伪模式运行。 Hbase状态为sat,但错误由以下方式生成: HBase的>创建'销售','客户','地址'
故障排除: 我关闭了Hbase和ZK。逐行检查配置文件。根据hbase.apache.com的推荐尝试了几种变体。同样的错误。然后我删除了hdfs文件系统/ hbase并使用zkcli删除了zk中的目录。我检查它是写给ZK和HDFS。关闭群集和所有守护程序。我甚至重新启动,以防这是某种内存泄漏。我仍处于同一状态。我知道它试图在某个位置为表创建一个元条目。一些如何不访问此表。我假设这个元表在ZK上。这是真的?我该怎么办?
文件: hbase.rootdir HDFS://本地主机:9000 / HBase的
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>localhost</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/var/data/zookeeper</value>
</property>
# The java implementation to use. Java 1.7 required.
export JAVA_HOME=${JAVA_HOME}
"hbase-env.sh" 82L, 3834C
#
# export HBASE_JMX_BASE="-Dcom.sun.management.jmxremote.ssl=false
- Dcom.sun.management.jmxremote.authenticate=false"
export HBASE_MASTER_OPTS="-Xmx2048m"
export HBASE_REGIONSERVER_OPTS="-Xmn200m -Xms4096m -Xmx4096m"
# export HBASE_THRIFT_OPTS="$HBASE_JMX_BASE
-Dcom.sun.management.jmxremote.port=10103"
# export HBASE_ZOOKEEPER_OPTS="$HBASE_JMX_BASE
-Dcom.sun.management.jmxremote.port=10104"
# File naming hosts on which HRegionServers will run.
$HBASE_HOME/conf/regionservers by default.
export HBASE_REGIONSERVERS=${HBASE_CONF_DIR}/regionservers
# Extra ssh options. Empty by default.
# export HBASE_SSH_OPTS="-o ConnectTimeout=1 -o SendEnv=HBASE_CONF_DIR"
# Where log files are stored. $HBASE_HOME/logs by default.
export HBASE_LOG_DIR=/var/log/hbase
# A string representing this instance of hbase. $USER by default.
# export HBASE_IDENT_STRING=$USER
# The scheduling priority for daemon processes. See 'man nice'.
# export HBASE_NICENESS=10
# The directory where pid files are stored. /tmp by default.
export HBASE_PID_DIR=/var/run/hbase
# Seconds to sleep between slave commands. Unset by default. This
# can be useful in large clusters, where, e.g., slave rsyncs can
# otherwise arrive faster than the master can service them.
# export HBASE_SLAVE_SLEEP=0.1
# Tell HBase whether it should manage it's own instance of Zookeeper or not.
export HBASE_MANAGES_ZK=false
答案 0 :(得分:0)
现在已经更正了。有两个答案。一个是微妙的,另一个是错误的配置。
创建表时,HBase主机需要写出表空间。此空间位于区域服务器上。我的区域服务器文件为空。没有确定服务器。当我运行sudo /etc/init.d/hue启动时,区域服务器deamon将无法启动,从而导致错误。通过将localhost添加到此文件,问题得以解决。
此外,我打断了问题,意味着HBase主机在写入ZooKeeper文件空间时出现问题。所以我不断添加参数以获得连接。我现在支持所有这些。
我在关于HBase的PackT书中找到了一个很好的描述。这让我有了正确解决这个问题的见解。