java.net.ConnectException: Call From xxx to localhost:8020 failed on connection exception: java.net.

踩坑记录!!!!
问题描述:
虚拟机上的linux固定IP后无法在物理机使用JAVA API连接HDFS,报错如下:

java.net.ConnectException: Call From xxx to localhost:8020 failed on connection exception: java.net.ConnectException: Connection refused

找教程瞎调了几次又变成这样:

Exception in thread “main” java.net.ConnectException: Call From DESKTOP-API5IFV/192.168.5.1 to hadoop:8020 failed on connection exception: java.net.ConnectException: Connection refused: no further information; For more details see: http://wiki.apache.org/hadoop/ConnectionRefused

TNND
1.首先要确保linux的防火墙是关闭的,如何永久关闭防火墙查看我之前的博客
2.检查 core-site.xml确保是8020端口,并把名称改为你的IP地址

<configuration>
    <property>
        <value>hdfs://192.168.19.3:8020</value>
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/home/japson/app/tmp</value>
    </property>
</configuration>

在这里插入图片描述
补充:连接成功了,若想使用你的主机名登录需要在物理机建立映射关系,linux系统同理。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

注意
如果要使用主机名需要:

  1. 确保物理上即windows上修改了hosts文件,主机名对应那个ip
  2. 修改虚拟机上的etc/hosts文件对应的主机名和ip关系如下:
    在这里插入图片描述
  3. hadoop的core-site.xml中涉及到localhost的改为主机名或者ip都行

有一个问题就是ip地址变化了,那么就需要改变2个地方:

1.java中的URI
2.hadoop的core-site.xml

  • 5
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值