Window下使用eclipse连接hadoop报错



报错 Exception in thread "main"java.net.SocketTimeoutException: Call to hadoop/192.168.80.110:9000 failed onsocket timeout exception: java.net.SocketTimeoutException: 20000 millis timeoutwhile waiting for channel to be ready for connect. ch : java.nio.channels.SocketChannel[connection-pendingremote=hadoop/192.168.80.110:9000]




一、先检查下master node上的9000端口是否开启了,可以通过telnet的方式测试。


telnet 192.168.80.110



Connection refused Connection refused原因有两个


一个是被防火墙拦截 ---关闭防火墙


另一个原因是该端口的监听地址为本机(127.0.0.1),如果这样的话,只有从本机发起的对端口的访问被允许,而外部主机访问被拒绝。


可以通过“netstat -anp | grep 9000”命令查看该端口的监听地址:


有上图可知,9000端口监听的地址为本地地址(127.0.0.1
解决方法:监听地址为本机地址则修改其监听地址为真是ip地址(如192.168.80.110)。


hadoop中,可以更改本机地址(eglocalhost——>hadoop


Vi /etc/hosts配置文件中加入主机192.168.8.119 hadoop的映射关系


修改core-site.xmlfs.default.name的值为"hdfs://hadoop:9000"


删除hadooptmp/下所有信息重新格式化


成功后启动hadoop


再次输入netstat -anp | grep 9000出现下面界面表示9000端口监听的地址为真实ip地址



 


二、启用Windows telnet功能


Cmd在输入telnet 如果显示不是内部命令执行以下步骤


控制面板-查看方式-类别-单击程序-启用或关闭Windows功能-勾选Telnet服务器、Telnet客户端,单击确定


打开命令提示符,输入telnet,弹出欢迎提示,telnet启用成功




©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页