我在启动hadoop集群时遇到了困难。名称节点和作业跟踪器在开始时抛出异常,表示他们无法分配所请求的地址。
这是我的core-site.xml文件:
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://name.node.private.ip:9000</value>
</property>
</configuration>
这是我的mapred-site.xml文件:
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>job.tracker.private.ip:9001</value>
</property>
<property>
<name>mapreduce.job.counters.limit</name>
<value>1000</value>
</property>
<property>
<name>mapred.tasktracker.map.tasks.maximum</name>
<value>50</value>
</property>
<property>
<name>mapred.tasktracker.reduce.tasks.maximum</name>
<value>50</value>
</property>
</configuration>
此外,我的作业跟踪器的主文件包含其私有IP,而从属文件包含四个从属的私有ips。名称节点的主文件包含其私有IP,从属文件包含四个从属的私有ips。每个从属节点的主文件都是空白,从属文件包含其私有IP。
/ etc / hosts文件未经修改,如下所示:
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost6 localhost6.localdomain6
答案 0 :(得分:0)
您需要修改/ etc / hosts文件。以下格式有效:
127.0.0.1 privateDns subdomain localhost
privateIp privateDns subdomain
因此,如果私人IP为172.31.0.1
且privateDns为ip-172-31-0-1.us-west-2.compute.internal
,则需要如下所示
127.0.0.1 ip-172-31-0-1.us-west-2.compute.internal ip-172-31-0-1 localhost
172.31.0.1 ip-172-31-0-1.us-west-2.compute.internal ip-172-31-0-1