gpt4 book ai didi

java - NoRouteToHostException 而 hadoop fs -copyFromLocal

转载 作者:可可西里 更新时间:2023-11-01 16:56:51 27 4
gpt4 key购买 nike

我在CentOS7.0上安装了hadoop 2.5.1

我正在使用 3 台具有以下主机文件的计算机,与所有 3 台计算机相同

我没有使用 DNS。

XXX.XXX.XXX.65 mccb-com65 #server

XXX.XXX.XXX.66 mccb-com66 #client01

XXX.XXX.XXX.67 mccb-com67 #client02

127.0.0.1 localhost

127.0.1.1 mccb-com65

我执行命令

$hadoop fs -copyFromLocal/home/hadoop/hdfs/hdfs/s_corpus.txt hdfs://XXX.XXX.XXX.65:9000/tmp/

我遇到了以下错误信息

INFO hdfs.DFSClient: Exception in createBlockOutputStream java.net.NoRouteToHostException: No route to host at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method) at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:739) at org.apache.hadoop.net.SocketIOWithTimeout.connect(SocketIOWithTimeout.java:206) at org.apache.hadoop.net.NetUtils.connect(NetUtils.java:529) at org.apache.hadoop.hdfs.DFSOutputStream.createSocketForPipeline(DFSOutputStream.java:1526) at org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.createBlockOutputStream(DFSOutputStream.java:1328) at org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.nextBlockOutputStream(DFSOutputStream.java:1281) at org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.run(DFSOutputStream.java:526) 15/02/27 16:57:40 INFO hdfs.DFSClient: Abandoning BP-1257634566-XXX.XXX.XXX.65-1425014347197:blk_1073741837_1013 15/02/27 16:57:40 INFO hdfs.DFSClient: Excluding datanode XXX.XXX.XXX.67:50010 <-- the same as another salve node XXX.XXX.XXX.66

我关闭了两台计算机 mccb-com66 和 mccb-com67 的所有防火墙,如下所示。

$systemctl status iptables

iptables.service - IPv4 firewall with iptables Loaded: loaded (/usr/lib/systemd/system/iptables.service; disabled)
Active: inactive (dead)

此外,我还关闭了 selinux。

datanode和nodemanager在两台机器上都存活我可以检查状态jps 和 http://mccb-com65:50070http://mccb-com65:8088

我错过了什么?

有人能帮帮我吗???

最佳答案

即使我关闭了 iptables,它也不是有效的解决方案。

我用firewall-cmd一个一个打开端口后,就可以了..

对于所有奴隶(66 和 67)

$firewall-cmd --zone=public --add-port=8042/tcp
$firewall-cmd --zone=public --add-port=50010/tcp
$firewall-cmd --zone=public --add-port=50020/tcp
$firewall-cmd --zone=public --add-port=50075/tcp
$firewall-cmd --reload

然后就可以了。

但是,由于我无法打开所有需要运行Hadoop App的端口,

关闭firewalld是合理的比如

$systemctl stop firewalld
$systemctl disable firewalld

查看状态

$Systemctl status firewalld

关于java - NoRouteToHostException 而 hadoop fs -copyFromLocal,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28760348/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com