首页 > 编程语言 >Python hdfs 读取文件报错 Temporary failure in name resolution

Python hdfs 读取文件报错 Temporary failure in name resolution

时间:2023-12-22 11:25:09浏览次数:38  
标签:hdfs Temporary read client 报错 txt hello

问题背景

本人按照菜鸟教程的步骤,在windows系统布置了ubuntu虚拟机环境,并使用centos容器镜像搭建出单节点的hdfs服务。

欲使用Python hdfs api测试hdfs服务的功能,遂在ubuntu中编写以下代码准备测试

from hdfs import Client

client = Client(url='http://172.17.0.3:9870', root='/')

print(client.list('/'))
print(client.status(hdfs_path='/hello/hello.txt', strict=False))
with client.read('/hello/hello.txt') as f:
    print(f.read().decode())
client.download('/hello/hello.txt', '/home/luca/test.txt')

在运行的时候,client.list和client.status这2个方法可以正常返回,列出根路径下的所有目录和/hello/hello.txt这个文件的状态信息。但是涉及到文件读取的client.read和download都会报错,如下
image

问题解决

在先后检查了hdfs的client和防火墙无果后,我刷到了这篇帖子https://cloud.tencent.com/developer/article/1406347
虽然没有直接解决我的问题,但是引导我把目光锁定在hosts相关的配置上。
结合报错信息,我将hdfs服务容器的ip和container id配置进/etc/hosts中,成功解决问题
/etc/hosts

172.17.0.3 hdfs_single
172.17.0.3 decad80d3cb7

docker ps (hdfs容器信息)

decad80d3cb7   hadoop_proto   "/usr/sbin/init"   19 hours ago   Up 19 hours             hdfs_single

测试脚本执行成功
image

标签:hdfs,Temporary,read,client,报错,txt,hello
From: https://www.cnblogs.com/zhaixuwen/p/17920877.html

相关文章

  • 前端 vue项目启动报错 spawn cmd ENOENT 的原因以及解决方案
    前端项目启动到一半的时候卡在跳转浏览器出现了这个问题 那么问题大概率就是你环境刚配置或者配置错了的问题,这个时候只需要找到我的电脑=>属性=>高级系统设置=>环境变量=>系统变量=>PATH环境=>双击进去=>添加环境变量=> 添加这俩个 C:\Windows\System......
  • Vue + Django 使用wangeditor 上传图片 显示跨域报错
    报错:newsDetailed:1 AccesstoXMLHttpRequestat'http://www.py32api.com:8000/users/uploadFile/'fromorigin'http://localhost:8080'hasbeenblockedbyCORSpolicy:RequestheaderfieldtokenisnotallowedbyAccess-Control-Allow-Head......
  • core-js引起的报错
    从git上获取的代码突然运行不起来,报错提示含有[email protected]:core-js@<3.23.3isnolongermaintainedandnotrecommendedforusageduetothenumberofissues.BecauseoftheV8enginewhims,featuredetectioninoldcore-jsversionscouldcause......
  • 今日bug之配置项值为中文逗号报错
    启动报错org.springframework.beans.factory.UnsatisfiedDependencyException:Errorcreatingbeanwithname'slymUrlController':Unsatisfieddependencyexpressedthroughfield'qlrlxZjzlDzMap';nestedexceptionisorg.springframework.beans.......
  • 解决Python中main运行报错的方法
    在Python开发中,main函数是程序的入口,是程序执行的起点。然而,有时候我们在运行main函数时可能会遇到各种报错。本文将介绍一些常见的Pythonmain运行报错,并提供相应的解决办法。1.ModuleNotFoundError:这个错误表示Python无法找到指定的模块。解决方法如下:-确保模块已经正确安装。可......
  • Windows10 卸载WSL Ubuntu (解决Docker Desktop 报错问题)
    首先在“程序”里面卸载“WindowsSubsystemforLinuxUpdate”然后使用命令行卸载已安装的子系统1、查看当前环境安装的wslwsl--list2、注销(卸载)当前安装的Linux的Windows子系统wsl--unregisterUbuntu3、卸载成功,查看当前安装的Linux的Windows子系统wsl--list4......
  • rabbitmq添加延时通道时报错
    rabbitmq添加延时通道时报错'x-delayed-type'mustbeanexistingexchangetype解决方案:我实际用的是x-delayed-type:topic ......
  • Android安卓打包app应用程序编译shrinkResources true报错解决方案
    Hello各位同学们好,我是咕噜铁蛋!在Android开发中,当我们需要打包应用程序时,经常会遇到一些问题。其中一个常见的问题是在使用shrinkResources设置为true时出现的编译错误。这个选项是在AndroidGradle插件的build.gradle文件中设置的,用于减少最终APK文件的大小。然而,如果设置不正确,可......
  • 记录一次openpyx使用rich_text报错AttributeError: 'TextBlock' object has no attrib
    先说解决办法:pipinstalllxml报错截图:当时在两个环境中分别使用相同版本openpyxl,相同的代码,一个环境中能成功,另外一个一直报错。排查结果如下:根据报错找到文件:File"\openpyxl\worksheet_writer.py",line147,inwrite_row在155行到158行看到如下代码:ifLXML:......
  • Mysql报错:too many connections原因及解决方法
    原因是mysql连接数过多解决方案一:1、linux登录mysql:mysql-uroot-p;2、查看mysql允许的最大连接数showvariableslike'%max_connections%';3、查看这次mysql服务启动到现在,同一时刻最多mysql有多少连接showstatuslike'Max_used_connections';4、修改mysql最大连......