hbase_异常_04_util.FSUtils: Waiting for dfs to exit safe mode...

一、异常现象

启动hbase的时,hbase的日志中可以发现:

 Waiting for dfs to exit safe mode...

然后就抛异常了

2018-03-22 17:00:28,994 INFO  [rayner:46905.activeMasterManager] util.FSUtils: Waiting for dfs to exit safe mode...
2018-03-22 17:00:39,000 INFO  [rayner:46905.activeMasterManager] util.FSUtils: Waiting for dfs to exit safe mode...
2018-03-22 17:00:49,005 INFO  [rayner:46905.activeMasterManager] util.FSUtils: Waiting for dfs to exit safe mode...
2018-03-22 17:00:59,007 INFO  [rayner:46905.activeMasterManager] util.FSUtils: Waiting for dfs to exit safe mode...
2018-03-22 17:01:09,020 INFO  [rayner:46905.activeMasterManager] util.FSUtils: Waiting for dfs to exit safe mode...
2018-03-22 17:01:19,026 INFO  [rayner:46905.activeMasterManager] util.FSUtils: Waiting for dfs to exit safe mode...
2018-03-22 17:01:29,036 INFO  [rayner:46905.activeMasterManager] util.FSUtils: Waiting for dfs to exit safe mode...
2018-03-22 17:01:39,044 INFO  [rayner:46905.activeMasterManager] util.FSUtils: Waiting for dfs to exit safe mode...
2018-03-22 17:01:49,054 INFO  [rayner:46905.activeMasterManager] util.FSUtils: Waiting for dfs to exit safe mode...
2018-03-22 17:01:59,059 INFO  [rayner:46905.activeMasterManager] util.FSUtils: Waiting for dfs to exit safe mode...
2018-03-22 17:02:09,064 INFO  [rayner:46905.activeMasterManager] util.FSUtils: Waiting for dfs to exit safe mode...
2018-03-22 17:02:19,066 INFO  [rayner:46905.activeMasterManager] util.FSUtils: Waiting for dfs to exit safe mode...
2018-03-22 17:02:29,074 INFO  [rayner:46905.activeMasterManager] util.FSUtils: Waiting for dfs to exit safe mode...
2018-03-22 17:02:39,076 INFO  [rayner:46905.activeMasterManager] util.FSUtils: Waiting for dfs to exit safe mode...
2018-03-22 17:02:49,083 INFO  [rayner:46905.activeMasterManager] util.FSUtils: Waiting for dfs to exit safe mode...
2018-03-22 17:02:59,088 INFO  [rayner:46905.activeMasterManager] util.FSUtils: Waiting for dfs to exit safe mode...
2018-03-22 17:03:09,090 INFO  [rayner:46905.activeMasterManager] util.FSUtils: Waiting for dfs to exit safe mode...
2018-03-22 17:03:19,096 INFO  [rayner:46905.activeMasterManager] util.FSUtils: Waiting for dfs to exit safe mode...
2018-03-22 17:03:29,107 INFO  [rayner:46905.activeMasterManager] util.FSUtils: Waiting for dfs to exit safe mode...
2018-03-22 17:03:39,117 INFO  [rayner:46905.activeMasterManager] util.FSUtils: Waiting for dfs to exit safe mode...
2018-03-22 17:03:39,676 ERROR [main] master.HMasterCommandLine: Master exiting
java.lang.RuntimeException: Master not initialized after 200000ms seconds
    at org.apache.hadoop.hbase.util.JVMClusterUtil.startup(JVMClusterUtil.java:230)
    at org.apache.hadoop.hbase.LocalHBaseCluster.startup(LocalHBaseCluster.java:414)
    at org.apache.hadoop.hbase.master.HMasterCommandLine.startMaster(HMasterCommandLine.java:228)
    at org.apache.hadoop.hbase.master.HMasterCommandLine.run(HMasterCommandLine.java:138)
    at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
    at org.apache.hadoop.hbase.util.ServerCommandLine.doMain(ServerCommandLine.java:127)
    at org.apache.hadoop.hbase.master.HMaster.main(HMaster.java:2806)
2018-03-22 17:03:39,692 INFO  [Shutdown] mortbay.log: Shutdown hook executing
2018-03-22 17:03:39,698 INFO  [Shutdown] mortbay.log: Stopped SelectChannelConnector@0.0.0.0:42281
2018-03-22 17:03:39,702 INFO  [Shutdown] mortbay.log: Shutdown hook complete
2018-03-22 17:03:42,769 INFO  [main] util.VersionInfo: HBase 1.4.2
2018-03-22 17:03:42,777 INFO  [main] util.VersionInfo: Source code repository git://onyx/data/apurtell/src/hbase revision=b4ec89059cc3a7416c2012bb1a9d31f1cd34b78c
2018-03-22 17:03:42,777 INFO  [main] util.VersionInfo: Compiled by apurtell on Wed Feb 21 14:25:53 PST 2018
2018-03-22 17:03:42,777 INFO  [main] util.VersionInfo: From source with checksum fbdf23947e780221d5ac0785f11e9def

 

 

二、异常原因

原来是Hadoop在刚启动的时候,还处在安全模式造成的。

[coder@h1 hadoop-0.20.2]$ bin/  hadoop dfsadmin -safemode get
Safe mode is ON
[coder@h1 hadoop-0.20.2]$ 

 

 

三、异常解决

可等Hadoop退出安全模式后再执行HBase命令,或者手动退出Hadoop的安全模式

[root@Hadoop-NN-01 hadoop-2.6.0-cdh5.6.0]$ bin/  hadoop dfsadmin -safemode leave
Safe mode is OFF

现在再执行HBase的命令就没有问题了。

 

四、知识点总结

hadoop dfsadmin-safemode 命令参数说明:

enter    - 进入安全模式
leave    - 强制NameNode离开安全模式
get      - 返回安全模式是否开启的信息
wait     - 等待,一直到安全模式结束。

 

 

真正的原因是hbase没有真正关闭。

正确的关闭步骤:   

(1) 先关闭hadoop,

(2) kill -9杀掉顽固进程

(3) 关闭 hbase

 

五、参考资料

1.Util.FSUtils: Waiting for dfs to exit safe mode

2.安装hbase后,启动服务正常,但停止服务时出现很诡异的现象

 

 

 

 

 

 

 

 

 

 

 

上一篇:【重新发现PostgreSQL之美】- 23 彭祖的长寿秘诀


下一篇:【重新发现PostgreSQL之美】- 22 黄帝内经