JAVA程序连接hadoop HDFS服务报无法连接。
2019独角兽企业重金招聘Python工程师标准>>>
在虚拟机部署hadoop的HDFS系统,在centos系统中敲各种操作命令,对文件读取、上传、删除等都没什么问题。但用JAVA写了代码去操作HDFS文件时,出现奇怪的现象:
代码写是写到获取fileSystem对象:
Configuration configuration=new Configuration(); FileSystem fileSystem=FileSystem.get(configuration);
报了以下异常现象:
Exception in thread "main" java.net.ConnectException: Call From DESKTOP-1A7JSVH/192.168.139.1 to hadoop.node.master:8020 failed on connection exception: java.net.ConnectException: Connection refused: no further information; For more details see: http://wiki.apache.org/hadoop/ConnectionRefused
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
at org.apache.hadoop.net.NetUtils.wrapWithMessage(NetUtils.java:783)
at org.apache.hadoop.net.NetUtils.wrapException(NetUtils.java:730)
at org.apache.hadoop.ipc.Client.call(Client.java:1415)
at org.apache.hadoop.ipc.Client.call(Client.java:1364)
at org.apache.hadoop.ipc.ProtobufRpcEngine$Invoker.invoke(ProtobufRpcEngine.java:206)
at com.sun.proxy.$Proxy14.getBlockLocations(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.hadoop.io.retry.RetryInvocationHandler.invokeMethod(RetryInvocationHandler.java:187)
at org.apache.hadoop.io.retry.RetryInvocationHandler.invoke(RetryInvocationHandler.java:102)
at com.sun.proxy.$Proxy14.getBlockLocations(Unknown Source)
at org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolTranslatorPB.getBlockLocations(ClientNamenodeProtocolTranslatorPB.java:225)
at org.apache.hadoop.hdfs.DFSClient.callGetBlockLocations(DFSClient.java:1165)
at org.apache.hadoop.hdfs.DFSClient.getLocatedBlocks(DFSClient.java:1155)
at org.apache.hadoop.hdfs.DFSClient.getLocatedBlocks(DFSClient.java:1145)
at org.apache.hadoop.hdfs.DFSInputStream.fetchLocatedBlocksAndGetLastBlockLength(DFSInputStream.java:268)
at org.apache.hadoop.hdfs.DFSInputStream.openInfo(DFSInputStream.java:235)
at org.apache.hadoop.hdfs.DFSInputStream.<init>(DFSInputStream.java:228)
at org.apache.hadoop.hdfs.DFSClient.open(DFSClient.java:1318)
at org.apache.hadoop.hdfs.DistributedFileSystem$3.doCall(DistributedFileSystem.java:293)
at org.apache.hadoop.hdfs.DistributedFileSystem$3.doCall(DistributedFileSystem.java:289)
at org.apache.hadoop.fs.FileSystemLinkResolver.resolve(FileSystemLinkResolver.java:81)
at org.apache.hadoop.hdfs.DistributedFileSystem.open(DistributedFileSystem.java:289)
at org.apache.hadoop.fs.FileSystem.open(FileSystem.java:764)
at com.my.hadoop.HadoopTest.main(HadoopTest.java:28)
Caused by: java.net.ConnectException: Connection refused: no further information
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.net.NetUtils.connect(NetUtils.java:493)
at org.apache.hadoop.ipc.Client$Connection.setupConnection(Client.java:606)
at org.apache.hadoop.ipc.Client$Connection.setupIOstreams(Client.java:700)
at org.apache.hadoop.ipc.Client$Connection.access$2800(Client.java:367)
at org.apache.hadoop.ipc.Client.getConnection(Client.java:1463)
at org.apache.hadoop.ipc.Client.call(Client.java:1382)
... 24 more
检查过程如下:
一开始以为HDFS的8020服务端口,在虚拟机服务器上敲了netstat -ntlp | grep 8020,出现如下结果 :
tcp 0 0 127.0.0.1:8020 0.0.0.0:* LISTEN 4753/java
服务端口正常,防火墙也已经关闭,何况打开http://hadoop.node.master:50070显示HDFS服务也正常,一时摸不着头脑。
最后,分析了一下netstat命令的结果,里面显示的是127.0.0.1,感觉8020端口绑定的是本地端口,有可能是这个原因引起,于是,敲vim /etc/hosts命令,
将127.0.0.1 hadoop.node.master改成192.168.139.130 hadoop.node.master
然后重启了namenode和datanode服务,然后运行上述java程序,居然正常了。
转载于:https://my.oschina.net/u/3771618/blog/1610751
JAVA程序连接hadoop HDFS服务报无法连接。相关推荐
- Hadoop HDFS启动报异常:We expected txid 130043, but got txid 229381
目录 1. 背景 2. 解决办法 1. 背景 在服务器断电重启后,重新启动HDFS, 访问http://bigdata001:9870不能访问,而http://bigdata002:9870和http ...
- java操作hadoop hdfs,实现文件上传下载demo
本文主要参考了Hadoop HDFS文件系统通过java FileSystem 实现上传下载等,并实际的做了一下验证.代码与引用的文章差别不大,现列出来作为备忘. import java.io.*; ...
- java共享文件夹SMB1服务报错jcifs.smb.SmbException: Failed to connect: 0.0.0.0<00>/122.168.23.26
java共享文件处理 两台电脑,其中一台开启共享文件(局域网环境).利用jcifs-1.3.19.jar包. String ip = "192.168.1.58";String u ...
- Atittit HDFS hadoop 大数据文件系统java使用总结 目录 1. 操作系统,进行操作 1 2. Hdfs 类似nfs ftp远程分布式文件服务 2 3. 启动hdfs服务start
Atittit HDFS hadoop 大数据文件系统java使用总结 目录 1. 操作系统,进行操作 1 2. Hdfs 类似nfs ftp远程分布式文件服务 2 3. 启动hdfs服务start- ...
- 用eclips连hadoop报Unknown protocol to job tracker: org.apache.hadoop.hdfs.protocol.ClientProtoco
win7上开发hadoop 在eclips连接hadoop时,报Unknown protocol to job tracker: org.apache.hadoop.hdfs.protocol.Cli ...
- 【Hadoop/Java】基于HDFS的Java Web网络云盘
[Hadoop/Java]基于HDFS的Java Web网络云盘 本人BNUZ大学生萌新,水平不足,还请各位多多指教! 实验目的 熟悉HDFS Java API的使用: 能使用HDFS Java AP ...
- JAVA怎么连接华为的HDFS系统_Java使用连接池管理Hdfs连接
记录一下Java API 连接hadoop操作hdfs的实现流程(使用连接池管理). 以前做过这方面的开发,本来以为不会有什么问题,但是做的还是坑坑巴巴,内心有些懊恼,记录下这烦人的过程,警示自己切莫 ...
- BigData:大数据开发的简介、核心知识(linux基础+Java/Python编程语言+Hadoop{HDFS、HBase、Hive}+Docker)、经典场景应用之详细攻略
BigData:大数据开发的简介.核心知识(linux基础+Java/Python编程语言+Hadoop{HDFS.HBase.Hive}+Docker).经典场景应用之详细攻略 BigData:大数 ...
- java连服务器mysql报错_tomcat程序连接服务器mysql数据库报错
tomcat程序连接服务器mysql数据库,报 错误,后来用java程序直接连接数据库,发现可以连得上,可以操作数据库, 在网上查了设置数据库连接等待时间(wait_timeout)设置,也没用. 奇 ...
最新文章
- Why I Love My Virtual PCs
- Redis 一个key-value存储系统 简介
- lichee linux nfs,SPI Flash 系统编译
- linux之fail2ban之预防暴力破解
- Python模拟分析演员之间亲密程度
- android渲染是skia与egl,Huang_Dongsung
- 图片的色彩空间转换、简单色彩跟踪与通道分离、合并(三)
- 单片机 c语言百位加上小数点,51单片机水温控制LCD显示加VB上位机温度曲线绘制...
- python3的spyder安装_Python开发环境Spyder安装教程
- 5.8Gwifi串口服务器、485转wifi多功能串口转WIFI 、232转wifi、Modbus转RTU、工业自动化系统
- html面中select下拉框回显,select下拉框数据回显
- python学习——python平台搭建
- word中段落里面的选项“如果定义了文档网格,则对齐到网格”起什么作用?
- 用 justify-content 属性设置子元素两端对齐
- 关于intellij idea的
- idea debug 第二次进不去断点问题
- goland 左右分屏_vim分屏功能 - 米扑博客
- 远程服务器返回urlto龙,,一个简单的Get请求 老是出现【远程服务器返回异常:501】错误...
- 修改linux屏幕大小,在Linux Mint上更改屏幕分辨率
- C/S、B/S与RIA