Мастер hbase не запускается - PullRequest
0 голосов
/ 15 октября 2018

Я использую HBase на Hadoop в автономном режиме.Я успешно установил hadoop, zookeeper и hbase, но в hbase master не запускается.Ниже мой hbase-site.xml

<configuration>
  <property>
    <name>hbase.rootdir</name>
    <value>hdfs://localhost:9000/hbase</value>
  </property>
  <property>
    <name>hbase.zookeeper.property.dataDir</name>
    <value>/home/kumar/hdata/zookeeper</value>
  </property>
  <property>
    <name>hbase.zookeeper.property.clientPort</name>
    <value>2181</value>
  </property>
</configuration>

Я запустил службы hadoop и zookeeper:

start-all.sh
zkServer.sh start
start-hbase.sh

и процессы, которые я получаю в команде Jps

2133 DataNode
1974 NameNode
2679 NodeManager
2365 SecondaryNameNode
3917 QuorumPeerMain
2527 ResourceManager
3935 Jps

Hbase shell запускается успешно, но когда я запускаю любую команду в оболочке, такую ​​как 'list', я получаю ошибку ниже:

ERROR: KeeperErrorCode = NoNode for /hbase/master

После этого я пытаюсь запустить master с помощью следующей команды

hbase master start

и я получаю сообщение об ошибке ниже:

    2018-10-15 18:51:51,380 ERROR [main] server.ZooKeeperServer: ZKShutdownHandler is not registered, so ZooKeeper server won't take any action on ERROR or SHUTDOWN server state changes
2018-10-15 18:51:51,437 INFO  [NIOServerCxn.Factory:0.0.0.0/0.0.0.0:2182] server.NIOServerCnxnFactory: Accepted socket connection from /127.0.0.1:34034
2018-10-15 18:51:51,479 INFO  [NIOServerCxn.Factory:0.0.0.0/0.0.0.0:2182] server.ServerCnxn: The list of known four letter word commands is : [{1936881266=srvr, 1937006964=stat, 2003003491=wchc, 1685417328=dump, 1668445044=crst, 1936880500=srst, 1701738089=envi, 1668247142=conf, 2003003507=wchs, 2003003504=wchp, 1668247155=cons, 1835955314=mntr, 1769173615=isro, 1920298859=ruok, 1735683435=gtmk, 1937010027=stmk}]
2018-10-15 18:51:51,479 INFO  [NIOServerCxn.Factory:0.0.0.0/0.0.0.0:2182] server.ServerCnxn: The list of enabled four letter word commands is : [[wchs, stat, stmk, conf, ruok, mntr, srvr, envi, srst, isro, dump, gtmk, crst, cons]]
2018-10-15 18:51:51,479 INFO  [NIOServerCxn.Factory:0.0.0.0/0.0.0.0:2182] server.NIOServerCnxn: Processing stat command from /127.0.0.1:34034
2018-10-15 18:51:51,485 INFO  [Thread-2] server.NIOServerCnxn: Stat command output
2018-10-15 18:51:51,491 INFO  [main] zookeeper.MiniZooKeeperCluster: Started MiniZooKeeperCluster and ran successful 'stat' on client port=2182
Could not start ZK at requested port of 2181.  ZK was started at port: 2182.  Aborting as clients (e.g. shell) will not be able to find this ZK quorum.
2018-10-15 18:51:51,497 ERROR [main] master.HMasterCommandLine: Master exiting
java.io.IOException: Could not start ZK at requested port of 2181.  ZK was started at port: 2182.  Aborting as clients (e.g. shell) will not be able to find this ZK quorum.
    at org.apache.hadoop.hbase.master.HMasterCommandLine.startMaster(HMasterCommandLine.java:217)
    at org.apache.hadoop.hbase.master.HMasterCommandLine.run(HMasterCommandLine.java:140)
    at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
    at org.apache.hadoop.hbase.util.ServerCommandLine.doMain(ServerCommandLine.java:149)
    at org.apache.hadoop.hbase.master.HMaster.main(HMaster.java:2983)
2018-10-15 18:51:51,500 INFO  [Thread-2] server.NIOServerCnxn: Closed socket connection for client /127.0.0.1:34034 (no session established for client)

Также я не получаю никакого ответа для локального веб-URL-адреса hbase

localhost:60010

1 Ответ

0 голосов
/ 15 октября 2018

HBase имеет встроенный экземпляр Zookeeper только для сред разработки, и по умолчанию, когда вы запускаете HBase командой start-hbase.sh, он также запускает демон Zookeeper.Ошибка в том, что вы уже запустили автономный Zookeeper, который использует порт 2181.Когда вы запускаете HBase, он пытается запустить встроенный zookeeper в порту 2181, и он получает ошибку!

Если вы хотите использовать автономный компонент Zookeeper, сначала отредактируйте файл hbase-env.sh и добавьтестрока: export HBASE_MANAGES_ZK=false (Вы также можете найти переменную HBASE_MANAGES_ZK в файле и установить для нее false).Так что теперь, когда вы запускаете HBase, он просто запускает HBase Daemon, а не Zookeeper.Помните, что вы должны запустить демон Zookeeper до HBase.

...