hadoop - HBase的主无法启动

标签 hadoop hbase apache-zookeeper

我在Hadoop上以独立模式运行HBase。我已经成功安装了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成功启动,但是当我在shell中运行任何命令(如“列表”)时,我得到以下错误:
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)

另外,我对本地hbase Web URL没有任何响应
localhost:60010

最佳答案

HBase具有仅用于开发环境的Zookeeper的内置实例,默认情况下,当您通过start-hbase.sh命令启动HBase时,它也将启动Zookeeper守护程序。该错误是因为您已经启动了使用端口2181的独立Zookeeper。当您启动HBase时,它也会尝试在2181端口中启动其内置的zookeeper,并且出现了错误!

如果要使用独立的Zookeeper组件,请首先编辑文件hbase-env.sh并添加以下行:export HBASE_MANAGES_ZK=false(也可以在文件中搜索HBASE_MANAGES_ZK变量并将其设置为false)。因此,现在当您启动HBase时,它将仅启动HBase Daemon,而不再启动Zookeeper。请记住,您应该在HBase之前启动Zookeeper守护程序。

关于hadoop - HBase的主无法启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52817815/

相关文章:

apache-kafka - zookeeper-server-start.sh 和 kafka-server-start.sh 的区别

apache-zookeeper - 无法在复制模式下设置动物园管理员

scala - 使用 spark 将 null 设置为 Hive 表中数字数据类型的值

security - HTTPClient从keytab登录访问hadoop jobhistory服务

hadoop - 如何指定应在其上运行mapreduce的各个tasktrackers(节点)?

arrays - 配置单元 : ParseException line 3:23 cannot recognize input near 'from'

hadoop - HBase Hive处理程序不起作用

hadoop - Apache Storm Hbase 版本兼容性,java.lang.NoSuchFieldError : HBASE_CLIENT_PREFETCH_LIMIT

java - 与使用 java 相比,hbase/hadoop 中的流作业是否有任何功能损失?

apache-zookeeper - 从单个 zookeeper 服务器到集群配置