關於hbase分散式環境中遇到的問題---HMaster 啟動後自動關閉
最近在搭建hbase分散式環境中遇到的問題,出現這個問題我也去網上參考別人是怎麼解決的,但是沒有解決我的問題,我不斷的去看日誌為什麼會出現這個,後來我發現日誌不斷提示異常,我就想是不是和這個有關係,嘗試了一下,解決了我的問題,話不多說,先上日誌:
2018-03-26 21:32:36,148 FATAL [master:hadoop0:60000] master.HMaster: Unhandled exception. Starting shutdown.
java.net.ConnectException: Call From hadoop0.com/192.168.10.250 to hadoop0.com:8020 failed on connection exception: java.net.ConnectException: Connection refused; For more details see: http://wiki.apache.org/hadoop/ConnectionRefusedat 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.net.NetUtils.wrapWithMessage(NetUtils.java:783)
at org.apache.hadoop.net.NetUtils.wrapException(NetUtils.java:730)
at org.apache.hadoop.ipc.Client.call(Client.java:1415)
at org.apache.hadoop.ipc.Client.call(Client.java:1364)
at org.apache.hadoop.ipc.ProtobufRpcEngine$Invoker.invoke(ProtobufRpcEngine.java:206)
at com.sun.proxy.$Proxy14.setSafeMode(Unknown Source)
at org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolTranslatorPB.setSafeMode(ClientNamenodeProtocolTranslatorPB.java:639)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.hadoop.io.retry.RetryInvocationHandler.invokeMethod(RetryInvocationHandler.java:187)
at org.apache.hadoop.io.retry.RetryInvocationHandler.invoke(RetryInvocationHandler.java:102)
at com.sun.proxy.$Proxy15.setSafeMode(Unknown Source)
at org.apache.hadoop.hdfs.DFSClient.setSafeMode(DFSClient.java:2364)
at org.apache.hadoop.hdfs.DistributedFileSystem.setSafeMode(DistributedFileSystem.java:1007)
at org.apache.hadoop.hdfs.DistributedFileSystem.setSafeMode(DistributedFileSystem.java:991)
at org.apache.hadoop.hbase.util.FSUtils.isInSafeMode(FSUtils.java:446)
at org.apache.hadoop.hbase.util.FSUtils.waitOnSafeMode(FSUtils.java:894)
以上就是我在配置過程中出現的問題,我配置的是Hadoop HA
嘗試過的方案:
1、不斷重啟hadoop叢集、hbase叢集;
2、刪除zk、hadoop、hbase裡的日誌零時檔案等;
3、複製hadoop裡的core-site.xml和hdfs-site.xml到hbase裡conf中;
4、複製zk裡的zoo.cfg到hbase裡conf中;
以上都要重新啟動,嘗試過無效,
後來看日誌報的異常聯想到自己是ha的配置,故想到hbase-site.xml中的
<property >
<name>hbase.rootdir</name>
<value>hdfs://hadoop0.com:8020/hbase</value>
</property>
要和core-site.xml中的
<property>
<name>fs.defaultFS</name>
<value>hdfs://ns1</value>
</property>
需要保持一致,故做了如下的修改
<property >
<name>hbase.rootdir</name>
<value>hdfs://ns1:8020/hbase</value>
</property>
啟動hbase之後,發現啟動正常了。
希望大家看了之後指出不足指出,或者有疑問的地方,大家可以一起討論,不要噴就好了!