CentOS下配置Hadoop集群:java.net.NoRouteToHostException: No route to host问题的解决
我用的是hadoop 1.2.1
遇到的问题是:
hadoop中datanode无法启动,报Caused by: java.net.NoRouteToHostException: No route to host
2013-06-11 02:22:13,637 INFO org.apache.hadoop.hdfs.server.datanode.DataNode: STARTUP_MSG: /************************************************************ STARTUP_MSG: Starting DataNode STARTUP_MSG: host = slave2/192.168.137.112 STARTUP_MSG: args = [] STARTUP_MSG: version = 0.20.2 STARTUP_MSG: build = https://svn.apache.org/repos/asf/hadoop/common/branches/branch-0.20 -r 911707; compiled by 'chrisdo' on Fri Feb 19 08:07:34 UTC 2010 ************************************************************/ 2013-06-11 02:22:14,931 INFO org.apache.hadoop.ipc.Client: Retrying connect to server: master/192.168.137.110:9000. Already tried 0 time(s). 2013-06-11 02:22:15,932 INFO org.apache.hadoop.ipc.Client: Retrying connect to server: master/192.168.137.110:9000. Already tried 1 time(s). 2013-06-11 02:22:16,934 INFO org.apache.hadoop.ipc.Client: Retrying connect to server: master/192.168.137.110:9000. Already tried 2 time(s). 2013-06-11 02:22:17,952 INFO org.apache.hadoop.ipc.Client: Retrying connect to server: master/192.168.137.110:9000. Already tried 3 time(s). 2013-06-11 02:22:18,954 INFO org.apache.hadoop.ipc.Client: Retrying connect to server: master/192.168.137.110:9000. Already tried 4 time(s). 2013-06-11 02:22:19,957 INFO org.apache.hadoop.ipc.Client: Retrying connect to server: master/192.168.137.110:9000. Already tried 5 time(s). 2013-06-11 02:22:20,959 INFO org.apache.hadoop.ipc.Client: Retrying connect to server: master/192.168.137.110:9000. Already tried 6 time(s).
2013-06-11 02:22:23,978 ERROR org.apache.hadoop.hdfs.server.datanode.DataNode: java.io.IOException: Call to master/192.168.137.110:9000 failed on local exception: java.net.NoRouteToHostException: No route to host at org.apache.hadoop.ipc.Client.wrapException(Client.java:775) at org.apache.hadoop.ipc.Client.call(Client.java:743) at org.apache.hadoop.ipc.RPC$Invoker.invoke(RPC.java:220) at $Proxy4.getProtocolVersion(Unknown Source) at org.apache.hadoop.ipc.RPC.getProxy(RPC.java:359) at org.apache.hadoop.ipc.RPC.getProxy(RPC.java:346) at org.apache.hadoop.ipc.RPC.getProxy(RPC.java:383) at org.apache.hadoop.ipc.RPC.waitForProxy(RPC.java:314) at org.apache.hadoop.ipc.RPC.waitForProxy(RPC.java:291) at org.apache.hadoop.hdfs.server.datanode.DataNode.startDataNode(DataNode.java:269) at org.apache.hadoop.hdfs.server.datanode.DataNode.<init>(DataNode.java:216) at org.apache.hadoop.hdfs.server.datanode.DataNode.makeInstance(DataNode.java:1283) at org.apache.hadoop.hdfs.server.datanode.DataNode.instantiateDataNode(DataNode.java:1238) at org.apache.hadoop.hdfs.server.datanode.DataNode.createDataNode(DataNode.java:1246) at org.apache.hadoop.hdfs.server.datanode.DataNode.main(DataNode.java:1368)
Caused by: java.net.NoRouteToHostException: No route to host at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method) at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:692) at org.apache.hadoop.net.SocketIOWithTimeout.connect(SocketIOWithTimeout.java:206) at org.apache.hadoop.net.NetUtils.connect(NetUtils.java:404) at org.apache.hadoop.ipc.Client$Connection.setupIOstreams(Client.java:304) at org.apache.hadoop.ipc.Client$Connection.access$1700(Client.java:176) at org.apache.hadoop.ipc.Client.getConnection(Client.java:860) at org.apache.hadoop.ipc.Client.call(Client.java:720) ... 13 more
切换root用户将所有机器上的防火墙都关闭。
重新启动。成功。
一定要从新启动,是因为没有启动,我一直就没有配置好!