我正在设置一个hadoop 2.2群集。我已成功配置主设备和从设备。当我在主服务器上输入start-dfs.sh
和start-yarn.sh
时,所有守护程序都会正确启动。
具体来说,在主服务器上运行以下内容:
在奴隶上,以下内容正在运行:
当我打开http://master-host:50070
时,我发现只有1" Live Node"它指的是主服务器上的datanode。
从站上的datanode已启动,但无法告诉主站它已启动。这是我能找到的唯一错误:
来自奴隶的/logs/hadoop-hduser-datanode.log: 警告org.apache.hadoop.hdfs.server.datanode.DataNode:连接到服务器时出现问题:ec2-xx-xxx-xx-xx.compute-1.amazonaws.com/xx.xxx.xx.xxx:9001
我检查/验证过的事情:
非常感谢任何建议。
答案 0 :(得分:1)
我的问题出现在hosts文件中:
slave和master上的hosts文件需要(它们是相同的_:
127.0.0.1 localhost
<master internal ip> master
<slave internal ip> slave
对于AWS,您需要使用类似于xx.xxx.xxx.xxx的内部IP(不是ec2-xx-xx-xxx.aws.com中的外部IP而不是ip-xx-xx- XXX)。
此外,core-site.xml应将hdfs的位置称为http://master:9000
。