我正在EC2上设置Hadoop。对于fs.default.name
,fs.defaultFS
,如果我使用名称节点的DNS,则一切正常。但是,如果我使用公共IP,名称节点不能以Problem binding to [54.210.86.207:9000] java.net.BindException: Cannot assign requested address;
除外。任何解释为什么公众DNS工作,但不是公共IP?EC2上的Hadoop配置:为什么公共DNS工作但不是公网IP?
<property>
<name>fs.default.name</name>
<value>hdfs://54.210.86.207:9000</value>
<!-- <value>hdfs://ec2-54-210-86-207.compute-1.amazonaws.com:9000</value> -->
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://54.210.86.207:9000</value>
<!-- <value>hdfs://ec2-54-210-86-207.compute1.amazonaws.com:9000</value> -->
</property>
这就是为什么Hadoop的禁止直接在conf使用IP的原因是什么? – sgu
是的,因为服务器实际上并不知道它的公共地址 - 它被网络映射到专用地址。 –