Исключение соединения HBase - PullRequest
8 голосов
/ 22 января 2011

Я пытаюсь запустить HBase в режиме псевдораспределения.Но это не работает после того, как я установил hbase-site.xml.

Каждый раз, когда я пытаюсь запустить команду внутри оболочки hbase, я получаю эту ошибку:

ОШИБКА: org.apache.hadoop.hbase.ZooKeeperConnectionException: org.apache.hadoop.hbase.ZooKeeperConnectionException: org.apache.zookeeper.KeeperException $ ConnectionLossException: KeeperErrorCode = connectionLoss for / hbase

Я настроил ssh и убедитесь, что все порты указаны правильно.

Более того, я не могу остановить hbase, хотя ./bin/stop-hbase.sh.Я получаю только следующий вывод.

stopping hbase........................................................

Ответы [ 4 ]

4 голосов
/ 24 января 2011

Псевдораспределение означает, что вы запускаете все процессы на одной машине.Вам необходимо убедиться, что все необходимые процессы запущены:

Hadoop:

  • NameNode
  • DataNode
  • JobTracker
  • TaskTracker

Зоопарк:

  • HQuorumPeer

HBase:

  • HMaster
  • RegionServer

Вы также должны убедиться, что ваш hbase-site.xml содержит правильные записи для zookeeper, определяющие имя хоста и порт.HBase FAQ и Wiki действительно довольно хороши.Чего тебе там не хватает?

2 голосов
/ 01 октября 2011

Это связано с тем, что в документации HBase вы настраиваете свои параметры HDFS так, чтобы они указывали на порт 8020, но инструкции Hadoop настраивают HDFS для порта 9000.

Измените параметры hbase-site.xml, которые HBase рекомендует указывать на порт9000 вместо:

<property>
  <name>hbase.rootdir</name>
  <value>hdfs://localhost:9000/hbase</value>
  <description>The directory shared by RegionServers.
  </description>
</property>
1 голос
/ 17 марта 2016

Я просто исправил проблему, удалив папки hbase.rootdir и hbase.zookeeper.property.dataDir. например:

more conf/hbase-site.xml

дает мне: hbase.rootdir Файл: /// somepath / HBase / TestUser / HBase hbase.zookeeper.property.dataDir / Somepath / HBase / TestUser / Zookeeper

затем удалите старые данные:

rm -fr /somepath/hbase/testuser/hbase
mkdir -p /somepath/hbase/testuser/hbase
rm -fr /somepath/hbase/testuser/zookeeper
mkdir -p /somepath/hbase/testuser/zookeeper

затем запустить его:

bin/start-hbase.sh    

и, наконец, я могу подключиться к локальному экземпляру:

./bin/hbase shell
1 голос
/ 02 июня 2012

У меня была похожая проблема, и я получил то же сообщение об ошибке, что и выше. В моем случае HMaster не работал. Использование

sudo start-hbase.sh

решил проблему.

...