복붙노트

[HADOOP] fs.defaultFS는 로컬 호스트의 포트 8020 만 수신합니다

HADOOP

fs.defaultFS는 로컬 호스트의 포트 8020 만 수신합니다

CDH4.3 올인원 VM을 설치하고 실행 중이며 hadoop 클라이언트를 원격으로 설치하려고합니다. 기본 설정을 변경하지 않고 hadoop 클러스터가 127.0.0.1:8020을 수신하고 있음을 알았습니다.

[cloudera@localhost ~]$ netstat -lent | grep 8020
tcp        0      0 127.0.0.1:8020              0.0.0.0:*                   LISTEN      492        100202 

[cloudera@localhost ~]$ telnet ${all-in-one vm external IP} 8020
Trying ${all-in-one vm external IP}...
telnet: connect to address ${all-in-one vm external IP} Connection refused
[cloudera@localhost ~]$ telnet 127.0.0.1 8020
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'

내 원격 시스템에는 $ {all-in-one vm external IP}를 가리키는 모든 구성 (core-site.xml, hdfs-site.xml)이 있습니다. 원격 클라이언트에서 무언가를 실행하면 다음과 같은 결과가 나타납니다.

└ $ ./bin/hdfs --config /home/${myself}/hadoop-2.0.0-cdh4.3.0/etc/hadoop dfs -ls
13/10/27 05:27:53 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
ls: Call From ubuntu/127.0.1.1 to ${all-in-one vm external IP}:8020 failed on connection exception: java.net.ConnectException: Connection refused; For more details see:  http://wiki.apache.org/hadoop/ConnectionRefused

하둡 올인원 VM을 변경했습니다. / etc / hadoop / conf의 core-site.xml 및 hdfs-site.xml : localhost.localdomain-> $ {all-in-one vm external IP}이지만 hdfs를 다시 시작한 후에도 여전히 localhost 8020을 수신합니다. 아이디어? localhost 대신 8020에서 $ {external IP}를 청취하도록하려면 어떻게해야합니까?

해결법

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

    1.dfs.namenode.rpc-address 속성을 0.0.0.0:8020으로 직접 조정하여 NameNode Client IPC 서비스가 모든 인터페이스에서 청취되도록하거나 특정 IP로만 설정하여 청취하도록 할 수 있어야합니다.

    dfs.namenode.rpc-address 속성을 0.0.0.0:8020으로 직접 조정하여 NameNode Client IPC 서비스가 모든 인터페이스에서 청취되도록하거나 특정 IP로만 설정하여 청취하도록 할 수 있어야합니다.

    즉, 상태에있는 올인원 vm 외부 IP 변경이 제대로 작동 했어야하지만 질문에 정확한 구성과 로그가 없기 때문에 이유를 알 수 없습니다.

  2. from https://stackoverflow.com/questions/19618242/fs-defaultfs-only-listens-to-localhosts-port-8020 by cc-by-sa and MIT license