java客户端运行hadoop_JAVA客户端连接部署在docker上的hdfs
docker上已经成功部署了hdfs应用,jps命令也显示了namenode和datanode启动正常。浏览器显示 宿主机ip:50070 页面
我在eclipse使用java连接hdfs,代码如下:
FileSystem hdfs;
Configuration conf = new Configuration();
try {
hdfs = FileSystem.get(new URI("hdfs://10.8.2.11:9999"),conf);
Path des =new Path("E:/AB4/hdfs/worksapce");
String srcPath = "/abcloud";
Path src = new Path(srcPath);
hdfs.copyFromLocalFile(false,true,des, src);
运行结果:
org.apache.hadoop.ipc.RemoteException(java.io.IOException): File /abcloud/test.txt could only be replicated to 0 nodes instead of minReplication (=1). There are 1 datanode(s) running and 1 node(s) are excluded in this operation.
at org.apache.hadoop.hdfs.server.blockmanagement.BlockManager.chooseTarget4NewBlock(BlockManager.java:1559)
at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.getAdditionalBlock(FSNamesystem.java:3245)
at org.apache.hadoop.hdfs.server.namenode.NameNodeRpcServer.addBlock(NameNodeRpcServer.java:663)
at org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolServerSideTranslatorPB.addBlock(ClientNamenodeProtocolServerSideTranslatorPB.java:482)
at org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos$ClientNamenodeProtocol$2.callBlockingMethod(ClientNamenodeProtocolProtos.java)
at org.apache.hadoop.ipc.ProtobufRpcEngine$Server$ProtoBufRpcInvoker.call(ProtobufRpcEngine.java:619)
at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:975)
at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2040)
at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2036)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:415)
at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1692)
at org.apache.hadoop.ipc.Server$Handler.run(Server.java:2034)
at org.apache.hadoop.ipc.Client.call(Client.java:1411)
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.$Proxy7.addBlock(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
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.$Proxy7.addBlock(Unknown Source)
at org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolTranslatorPB.addBlock(ClientNamenodeProtocolTranslatorPB.java:368)
at org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.locateFollowingBlock(DFSOutputStream.java:1449)
at org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.nextBlockOutputStream(DFSOutputStream.java:1270)
at org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.run(DFSOutputStream.java:526)
有没有大神曾在docker上成功部署hdfs,并在可以使用java api操作的,分享下经验
补充:我使用eclipse-hadoop插件连接后,文件系统里有那个文件,但是没有内容
java客户端运行hadoop_JAVA客户端连接部署在docker上的hdfs相关推荐
- pg数据库开启远程连接_如何运行远程客户端连接postgresql数据库
如何运行远程客户端连接 postgresql 数据库 前提条件是 2 个: 1 , pg_hba.conf 里面配置了运行远程客户机连接 pg_hba.conf 配置后需要重新加载 reload 生效 ...
- .NET Core 3.0 部署在docker上运行
自从.NET Core3.0发布之后,写了几篇关于.NET Core 3.0的文章,有助于你快速入门.NET Core3.0. 本篇文章主要讲解如何一步步创建一个mvc项目,然后发布并部署在Docke ...
- 六、.net core (.NET 6)程序部署到Docker上
使用Docker部署应用程序 首先确保已经安装Docker 桌面软件,如下图: 然后,把需要部署到Docker上面的项目,咱们先添加Docker的支持,启动项目右键 -> 添加 -> Do ...
- 【Step By Step】将Dotnet Core部署到Docker上
[Step By Step]将Dotnet Core部署到Docker上 原文: [Step By Step]将Dotnet Core部署到Docker上 本教程的前提是,你已经在Linux服务器上已 ...
- java 自写项目 war包 部署到linux上 本地可以正常运行,部署正常但访问404问题
tomcat 成功开启 2.它的端口也没有和其它服务的端口冲突 3.确认访问路径,查看本机 host 中配置的信息也是正确的 4.项目在 idea 上运行的时候,默认是省略项目名的,所以地址栏为:「 ...
- 2022全新docker安装mysql镜像、tomcat镜像及打包IDEA项目为war包并部署到docker上成功运行
Docker部署web项目 一.推荐提前准备的软件 1.IDEA2022 2.xshell7 3.xftp7 4.Navicat Premium 15 二.docker上安装mysql 1.先从网上拉 ...
- java使用 Socket 作为客户端连接网络键盘 实操
项目情境: 有一个第三方的网络键盘(键盘按键连接后会发送指令)配置到项目上,实现键盘按键,发送的指令经服务层接收封装后发送给各个业务线,实现键盘的交互. 解决思路: 因为交互是持久的,键盘操作命令是断 ...
- Ubuntu20.04下面运行applet与freemind部署到web上(调研+找到替换方案)
环境 Ubuntu 20.04 JDK 1.8 freemind 1.0.1 -------------------------------------------------- Reference里 ...
- java怎么运行安卓程序_在安卓手机上怎么运行java的应用程序
展开全部 一. 安装baiJAVA程序方法: 1.在du网站上搜索一个zhiAPK格式的JAVA虚拟机dao,下载安装回程序后答安装在手机上, 安装后手机上"所有程序"中增加此 ...
最新文章
- Zonbu-售价 99 美元的袖珍电脑
- Javascript笔记02:严格模式的特定要求
- SPI配置8通道ADC128S022
- UEFI下用rufus安装ubuntu16.04 LTS
- 算法笔记--二分图判定
- 判断浏览器是否支持websocket的方法
- wpf控件样式管理示意图
- LeetCode 513. 找树左下角的值(递归)
- RDS binglog
- 远程连接树莓派桌面xrdp
- 2022年对于李一男是关键的一年,这也将决定他的社会地位
- 对应的服务器证书无效。控制台输入 showRequestInfo() 可以获取更详细信息
- 【渝粤教育】国家开放大学2018年秋季 7179-22T文献检索 参考试题
- [Javascript 高级程序设计]学习心得记录10 js函数表达式
- python 动画场景_clarisse电影级CG场景渲染中文教学
- pybullet中欧拉角姿态可视化及顺序记录(画机械臂末端坐标)
- 5大保障思维模型, 揭秘温莎大师如何做生活应用决策
- IC China CEF两展联动,半导体产业大国崛起酝酿电子产业升级大幕
- Oracle培训的一些感受
- 验证码识别的作用 优优云验证码识别软件