start-hbase.sh执行后,hbase启动不了。

来源:3-1 HBase写流程

五六柒

2020-01-13

一个非常诡异的问题。

  • 修改了hbase-site.xml文件,添加了21个配置项。
  • 执行start-hbase.sh发现启动不了。
  • 删除添加的21个配置项,重新执行start-hbase.sh,hbase启动成功。

结论:21个配置项,有问题。

  • 接着将21个配置项,依次添加进hbase-site.xml文件中。实验是哪个或者哪几个配置项 导致启动hbase失败。
  • 进行了10多次的。start-hbase.sh 和 stop-hbase.sh命令操作。发现hbase.ipc.server.callqueue.read.ratio 当配置这个配置项时。hbase是启动不起来的。其他配置项 是没有问题的。
  • 后来将这个配置项,值设为 默认值:0。hbase启动成功。值大于0,就启动失败。

启动失败就像下面这样,执行start-hbase.sh看不出什么问题。但就是启动不起来。

[hadoop@Master000 code]$ start-hbase.sh 
starting master, logging to /home/hadoop/software/hbase-1.2.4/logs/hbase-hadoop-master-Master000.out
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option PermSize=128m; support was removed in 8.0
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=128m; support was removed in 8.0
Slave003: starting regionserver, logging to /home/hadoop/software/hbase-1.2.4/logs/hbase-hadoop-regionserver-Slave003.out
Slave001: starting regionserver, logging to /home/hadoop/software/hbase-1.2.4/logs/hbase-hadoop-regionserver-Slave001.out
Slave000: starting regionserver, logging to /home/hadoop/software/hbase-1.2.4/logs/hbase-hadoop-regionserver-Slave000.out
Slave002: starting regionserver, logging to /home/hadoop/software/hbase-1.2.4/logs/hbase-hadoop-regionserver-Slave002.out
Slave001: Java HotSpot(TM) 64-Bit Server VM warning: ignoring option PermSize=128m; support was removed in 8.0
Slave001: Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=128m; support was removed in 8.0
Slave003: Java HotSpot(TM) 64-Bit Server VM warning: ignoring option PermSize=128m; support was removed in 8.0
Slave003: Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=128m; support was removed in 8.0
Slave002: Java HotSpot(TM) 64-Bit Server VM warning: ignoring option PermSize=128m; support was removed in 8.0
Slave002: Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=128m; support was removed in 8.0
Slave000: Java HotSpot(TM) 64-Bit Server VM warning: ignoring option PermSize=128m; support was removed in 8.0
Slave000: Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=128m; support was removed in 8.0
localhost: starting regionserver, logging to /home/hadoop/software/hbase-1.2.4/logs/hbase-hadoop-regionserver-Master000.out
Master001: starting master, logging to /home/hadoop/software/hbase-1.2.4/logs/hbase-hadoop-master-Master001.out
Master001: Java HotSpot(TM) 64-Bit Server VM warning: ignoring option PermSize=128m; support was removed in 8.0
Master001: Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=128m; support was removed in 8.0
[hadoop@Master000 code]$ jps
38402 Jps
11364 NameNode
11689 DFSZKFailoverController

问题:这个是什么原因造成的?完全不能理解。

写回答

2回答

五六柒

提问者

2020-01-14


2020-01-13 23:38:17,141 WARN  [main] util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

2020-01-13 23:38:17,782 INFO  [main] regionserver.RSRpcServices: master/Master000/192.168.124.100:16000 server-side HConnection retries=350

2020-01-13 23:38:18,600 INFO  [main] ipc.SimpleRpcScheduler: Using deadline as user call queue, count=2

2020-01-13 23:38:18,632 ERROR [main] master.HMasterCommandLine: Master exiting

java.lang.RuntimeException: Failed construction of Master: class org.apache.hadoop.hbase.master.HMaster. 

at org.apache.hadoop.hbase.master.HMaster.constructMaster(HMaster.java:2426)

at org.apache.hadoop.hbase.master.HMasterCommandLine.startMaster(HMasterCommandLine.java:231)

at org.apache.hadoop.hbase.master.HMasterCommandLine.run(HMasterCommandLine.java:137)

at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)

at org.apache.hadoop.hbase.util.ServerCommandLine.doMain(ServerCommandLine.java:126)

at org.apache.hadoop.hbase.master.HMaster.main(HMaster.java:2436)

Caused by: java.lang.IllegalArgumentException: Queue size is <= 0, must be at least 1

at com.google.common.base.Preconditions.checkArgument(Preconditions.java:92)

at org.apache.hadoop.hbase.ipc.RpcExecutor.getBalancer(RpcExecutor.java:180)

at org.apache.hadoop.hbase.ipc.RWQueueRpcExecutor.<init>(RWQueueRpcExecutor.java:135)

at org.apache.hadoop.hbase.ipc.RWQueueRpcExecutor.<init>(RWQueueRpcExecutor.java:97)

at org.apache.hadoop.hbase.ipc.SimpleRpcScheduler.<init>(SimpleRpcScheduler.java:134)

at org.apache.hadoop.hbase.regionserver.SimpleRpcSchedulerFactory.create(SimpleRpcSchedulerFactory.java:46)

at org.apache.hadoop.hbase.regionserver.RSRpcServices.<init>(RSRpcServices.java:929)

at org.apache.hadoop.hbase.master.MasterRpcServices.<init>(MasterRpcServices.java:231)

at org.apache.hadoop.hbase.master.HMaster.createRpcServices(HMaster.java:534)

at org.apache.hadoop.hbase.regionserver.HRegionServer.<init>(HRegionServer.java:534)

at org.apache.hadoop.hbase.master.HMaster.<init>(HMaster.java:381)

at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)

at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)

at java.lang.reflect.Constructor.newInstance(Constructor.java:423)

at org.apache.hadoop.hbase.master.HMaster.constructMaster(HMaster.java:2419)

... 5 more


叁金老师你好:

看了日志,尝试着解决。但是还是启动不起来。


192.168.124.100 Master000

192.168.124.101 Master001

192.168.124.200 Slave000

192.168.124.201 Slave001

192.168.124.202 Slave002

192.168.124.203 Slave003


0
0

叁金

2020-01-13

优先查看HBase相关服务的日志,看一下是因为什么原因shutdow的。  另外对于配置方面:


首先请检查hbase.ipc.server.num.callqueue的设置。

要将callqueue拆分为单独的读写队列,请将hbase.ipc.server.callqueue.read.ratio的值设置为0和1之间。

  • 默认值为0不拆分队列。

  • 值0.3使用30%的队列进行读取,60%用于写入。如果hbase.ipc.server.num.callqueue的给定值为10,则3个队列将用于读取,7个用于写入。

  • 值0.5使用相同数量的读取队列和写入队列。如果hbase.ipc.server.num.callqueue的给定值为10,则将5个队列用于读取,5个用于写入。

  • 值0.6使用60%的队列进行读取,30%用于写入。如果hbase.ipc.server.num.callqueue的给定值为10,则7个队列将用于读取,3个用于写入。

  • 值1.0使用一个队列来处理写请求,所有其他队列处理读请求。高于的值1.0具有与值相同的效果1.0。如果hbase.ipc.server.num.callqueue的给定值为10,则9个队列将用于读取,1个用于写入。

如果不能解决,还请上传详细日志方便确认问题。

0
0

HBase+Spring Boot实战分布式文件存储(OpenTSDB实战升级)

深入浅出讲解HBase,让你轻松处理海量数据

493 学习 · 167 问题

查看课程