복붙노트

[HADOOP] 어떻게 원격 HDFS에 연결

HADOOP

어떻게 원격 HDFS에 연결

내가 원격 시스템에서 실행되는 HDFS 인스턴스에 연결하려합니다.

나는 윈도우 머신에 이클립스를 실행하고와 HDFS는 유닉스 박스에서 실행되고 있습니다. 여기에 내가 시도 것입니다

         Configuration conf = new Configuration();
         conf.set("fs.defaultFS", "hdfs://remoteHostName:portNumber");
         DFSClient client = null;
         System.out.println("try");
         try 
         {
             System.out.println("trying");   
             client = new DFSClient(conf);

        System.out.println(client);
         } 
         catch (IOException e) {

             e.printStackTrace();
        }

         finally {
             if(client!=null)
                 try {
                    client.close();
                } catch (IOException e) {

                    e.printStackTrace();
                }


         }

그러나 이것은 나에게 다음과 같은 예외를 제공합니다

Exception in thread "main" java.lang.NoSuchMethodError: org.apache.hadoop.ipc.RPC.getProxy(Ljava/lang/Class;JLjava/net/InetSocketAddress;Lorg/apache/hadoop/security/UserGroupInformation;Lorg/apache/hadoop/conf/Configuration;Ljavax/net/SocketFactory;ILorg/apache/hadoop/io/retry/RetryPolicy;Z)Lorg/apache/hadoop/ipc/VersionedProtocol;
    at org.apache.hadoop.hdfs.DFSClient.createRPCNamenode(DFSClient.java:135)
    at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:280)
    at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:245)
    at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:235)
    at org.apache.hadoop.hdfs.DFSClient.<init>(DFSClient.java:226)

그런데, 내가 원격 시스템에서 HDFS-site.xml 파일에서 portNumber를 가지고

이 방법은 정확합니까?

또한, 파이썬에서이 작업을 수행하는 것이 더 쉽습니다?

편집하다

난 내 창에 압축을 푼 하둡 바이너리를해야합니까 내가 따라 HADOOP_HOME 환경 변수를 설정합니다. 이 문제의 원인이 될 수 있을까요?

해결법

  1. ==============================

    1.참조 : 하둡 사용자의 특정 문제에 대한 탐색 파일 시스템 자바 2.6.0.

    참조 : 하둡 사용자의 특정 문제에 대한 탐색 파일 시스템 자바 2.6.0.

    그건 그렇고, 당신은 원격 상호 작용을위한 REST 사용을 고려할 수 있습니다. 아파치 녹스 원격 클러스터에 대한 접근을 제공하며 호스트로 클러스터 내부 알아야 할 필요가 코드를 보호 할 수 있습니다 이런 일들은 원격 클라이언트 아래에서 변경할 수 등, 포트, Kerberos를 여부.

  2. from https://stackoverflow.com/questions/33610916/how-to-connect-to-remote-hdfs by cc-by-sa and MIT license