python hdfs远程上传文件到hdfs

时间:2017-03-22 06:43:56

标签: python hadoop hdfs

我想通过python模块“hdfs”将文件远程上传到我的hdfs。 我的hadoop是在我的linux中运行的,但我想在我的windows(或其他计算机)中远程上传文件。当我使用如下代码时:

client.walk('/')

我可以使用requests.packages.urllib3.exceptions.NewConnectionError: <requests.packages.urllib3.connection.HTTPConnection object at 0x03256BB0>: Failed to establish a new connection: [Errno 10061] 来查看dirs,但我无法上传文件,它会引发错误,如:

    submitButtonLayout.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            int permissionCheck = ContextCompat.checkSelfPermission(context,  android.Manifest.permission.READ_PHONE_STATE);

            if (permissionCheck != PackageManager.PERMISSION_GRANTED) {
                ActivityCompat.requestPermissions((Activity) context, new String[]{ android.Manifest.permission.READ_PHONE_STATE}, Utils.REQUEST_READ_PHONE_STATE);
            } else {
                loginAction();
            }
        }
    });

我认为这是关于许可的问题,但我不知道如何解决它。 你能救我吗?

1 个答案:

答案 0 :(得分:1)

使用client.upload()时,namenode会将datanode的地址返回给客户端,因此您应该确保客户端到达该地址。可能是您为hdfs而不是ip设置了主机名,那么您应该在“/ etc / hosts”文件中添加一个主机名项。