Exception in thread “main“ java.net.ConnectException: Call From DESKTOP-09ASUHR/192.168.56.1 to 192.

本文描述了在使用Hadoop时遇到的连接异常问题,详细分析了异常原因,并提供了修改core-site.xml文件中fs.defaultFS参数的具体步骤,以解决Connection refused错误。

问题描述:

#报错语句:
FileSystem fs = FileSystem.get(new URI("hdfs://hadoop000:8020"),new Configuration(),"hadoop");

#异常信息
Exception in thread "main" java.net.ConnectException:
Call From DESKTOP-09ASUHR/192.168.56.1 to 192.168.137.101:8020
failed on connection exception:
java.net.ConnectException: 
Connection refused: 
no further information; 
For more details see: http://wiki.apache.org/hadoop/ConnectionRefused

原因分析:

/root/app/hadoop-2.6.0-cdh5.7.0/etc/hadoop/core-site.xml

fs.defaultFS 参数配置使用了域名 且域名未配置映射。。。。

解决方案:

vim /root/app/hadoop-2.6.0-cdh5.7.0/etc/hadoop/core-site.xml
#8020前使用IP地址,不要使用主机名
<configuration>

    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://192.168.137.101:8020</value>
    </property>

</configuration>

`java.net.ConnectException: Connection refused` 错误通常表示客户端尝试连接到指定的主机和端口,但服务器没有响应。对于 `Call From LAPTOP - UDM5NOLC/10.111.125.69 to localhost:9000 failed on connection exception: java.net.ConnectException: Connection refused` 错误,以下是一些可能的解决方法: #### 检查服务是否正在运行 使用 `jps` 命令查看 Hadoop 进程,确认 NameNode 进程是否正在运行。若 NameNode 进程未正确运行,可停止服务后,重新格式化 NameNode,执行 `hadoop namenode -format` 命令,然后启动所有 Hadoop 服务,执行 `start-all.sh` 命令,使 NameNode 进程正常运行 [^3]。 #### 检查端口是否被占用 使用命令查看端口 `9000` 是否被其他程序占用。在 Linux 系统中,可使用 `netstat -tuln | grep 9000` 命令;在 Windows 系统中,可使用 `netstat -ano | findstr :9000` 命令。若端口被占用,可关闭占用该端口的程序,或者修改 Hadoop 配置文件中的端口号。 #### 检查主机名和 IP 配置 确保 `localhost` 能正确解析到 `127.0.0.1`。可查看系统的 `hosts` 文件(在 Windows 系统中,该文件位于 `C:\Windows\System32\drivers\etc\hosts`;在 Linux 系统中,位于 `/etc/hosts`),确认是否存在类似 `127.0.0.1 localhost` 的配置。 #### 检查防火墙设置 防火墙可能会阻止对端口 `9000` 的访问。可临时关闭防火墙进行测试,在 Linux 系统中,若使用 `iptables` 防火墙,可使用 `sudo service iptables stop` 命令关闭;在 Windows 系统中,可在防火墙设置中允许对端口 `9000` 的访问。 #### 检查 Hadoop 配置文件 检查 `core-site.xml` 文件,确保 `fs.defaultFS` 属性配置正确,例如: ```xml <configuration> <property> <name>fs.defaultFS</name> <value>hdfs://localhost:9000</value> </property> </configuration> ```
评论 5
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值