hbase启动后,master启动失败,查看log报错:
java.net.NoRouteToHostException:No route to host
at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
atsun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:717)
atorg.apache.hadoop.net.SocketIOWithTimeout.connect(SocketIOWithTimeout.java:206)
atorg.apache.hadoop.net.NetUtils.connect(NetUtils.java:531)
atorg.apache.hadoop.hdfs.DFSOutputStream.createSocketForPipeline(DFSOutputStream.java:1537)
或
2017-07-2613:41:48,869 FATAL [hbasemaster:16000.activeMasterManager] master.HMaster:Unhandled exception. Starting shutdown.
org.apache.hadoop.ipc.RemoteException(java.io.IOException):File /hbase/.tmp/hbase.version could only be replicated to 0 nodes instead ofminReplication (=1). There are 2datanode(s) running and 2 node(s) are excluded in this operation.
atorg.apache.hadoop.hdfs.server.blockmanagement.BlockManager.chooseTarget4NewBlock(BlockManager.java:1571)
解决方案:关闭集群中所有节点的防火墙,使用如下命令:
$systemctl stop firewalld.service 关闭防火墙,centos7下。
$systemctl disable firewalld.service 关闭开机启动
$firewall-cmd --state 查看防火墙状态
关闭后重新启动hbase,执行如下命令:
1)$ cd /home/hadoop/hbase/bin
2)$ ./stop-hbase.sh
3)$ ./start-hbase.sh