我想通过python模块" hdfs“远程上传文件到我的hdfs。我的hadoop在我的linux上运行,但我想远程上传文件在我的windows(或其他计算机)。当我使用如下代码时:
from hdfs import InsecureClient
client = InsecureClient('http://xx.xx.xx.xx:50070', user='user')我可以使用client.walk('/')来查看目录,但是我不能上传文件,它会引发如下错误:
requests.packages.urllib3.exceptions.NewConnectionError: <requests.packages.urllib3.connection.HTTPConnection object at 0x03256BB0>: Failed to establish a new connection: [Errno 10061]我认为这是一个关于许可的问题,但我不知道如何解决它。你能帮我吗?
发布于 2017-11-06 16:09:12
在使用client.upload()时,namenode会将datanode的地址返回给客户端,因此您应该确保客户端能够到达该地址。如果您为hdfs设置了主机名,而不是ip,那么您应该将主机名项添加到"/etc/hosts“文件中。
https://stackoverflow.com/questions/42944469
复制相似问题