关于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/ConnectionRefused
        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.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。前提:hbase里的lib包必须和自己的hadoop的版本保持一致

尝试过的方案:

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中的


hbase.rootdir
hdfs://hadoop0.com:8020/hbase

要和core-site.xml中的


fs.defaultFS
hdfs://ns1

需要保持一致,故做了如下的修改


hbase.rootdir
hdfs://ns1:8020/hbase

启动hbase之后,发现启动正常了。

希望大家看了之后指出不足指出,或者有疑问的地方,大家可以一起讨论,不要喷就好了!

你可能感兴趣的:(笔记)