2

我有一个 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 '^]'

我的远程机器的所有配置(core-site.xml, hdfs-site.xml)都指向${all-in-one vm external IP}. 当我从远程客户端运行某些东西时,我得到了这个:

└ $ ./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

我改变了我的hadoop all-in-one vm: core-site.xml and hdfs-site.xml under /etc/hadoop/conffrom: localhost.localdomain->${all-in-one vm external IP},但是在重新启动hdfs后,它仍然监听localhost 8020。有什么想法吗?如何让它在 8020 而不是 localhost 上收听 ${external IP}。

4

1 回答 1

1

您应该能够直接调整该属性dfs.namenode.rpc-address0.0.0.0:8020使 NameNode 客户端 IPC 服务在所有接口上侦听,或者将其设置为您的特定 IP 以使其仅在此处侦听。

也就是说,您所说的all-in-one vm external IP更改应该有效,但是由于问题没有您的确切配置和日志,我无法说出原因。

于 2014-01-27T09:50:37.690 回答