您的位置:首页 > 编程语言 > Java开发

【Hadoop】提交任务时 java.net.ConnectException: 拒绝连接

2017-10-25 18:02 1141 查看

情况描述

[2017/10/25 17:16:17] [WARN] org.apache.hadoop.ipc.Client$Connection.handleConnectionFailure(Client.java:913): Failed to connect to server: master/192.168.16.180:9000: try once and fail.
java.net.ConnectException: 拒绝连接
at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:717)
at org.apache.hadoop.net.SocketIOWithTimeout.connect(SocketIOWithTimeout.java:206)
at org.apache.hadoop.net.NetUtils.connect(NetUtils.java:531)
at org.apache.hadoop.net.NetUtils.connect(NetUtils.java:495)
at org.apache.hadoop.ipc.Client$Connection.setupConnection(Client.java:681)
at org.apache.hadoop.ipc.Client$Connection.setupIOstreams(Client.java:777)
at org.apache.hadoop.ipc.Client$Connection.access$3500(Client.java:409)
at org.apache.hadoop.ipc.Client.getConnection(Client.java:1542)
at org.apache.hadoop.ipc.Client.call(Client.java:1373)


解决方案

首先可以用
telnet
测试每次修改后连接情况:



1.防火墙开放端口

我在集群中配置的端口是
9000
,防火墙是
iptables
,开放该端口:

iptables -A INPUT -p tcp NEW --dport 9000 -j ACCEPT

service iptables save 将操作保存到/etc/sysconfig/iptables ,若提示命令不存在,则先安装 yum install iptables-services

service iptables restart


如果是
firewall
,操作同理:

# 默认空间
firewall-cmd --zone=public --add-port=80/tcp --permanent

firewall-cmd --reload


2.查看启动日志

如果没有更爱默认设置,
hadoop
的启动日志位于
$HADOOP_HOME/logs/
,某次启动情况:



这是我直接将本地的
hadoop
包直接上传到虚拟机后集群的ID不一致,清除data目录后重新
hadoop namenode -format
即可。



这是没有对
hdfs
初始化,也是需要
hadoop namenode -format


3.配置项

所有节点配置时要指定本地的IP,不能填写
localhost
127.0.0.1
(大坑):



最后



提交作业

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐