我在Ubuntu上使用virtualbox设置了3个数据节点和1个namenode的mutlinode hadoop。我的主机系统用作NameNode(也是datanode),两个VM用作DataNode。我的系统是:
我能够从每个系统SSH所有系统。我在所有系统上的hadoop / etc / hadoop / slave都有条目:
192.168.1.5
192.168.1.10
192.168.1.11
所有系统上的 hadoop/etc/hadoop/master
都输入为:192.168.1.5
所有core-site.xml
,yarn-site.xml
,hdfs-site.xml
,mapred-site.xml
,hadoop-env.sh
在计算机上都相同,但dfs.namenode.name.dir
的{{1}}条目丢失除外hdfs-site.xml
两个DataNode中都有1}}。
当我从NameNode执行start-yarn.sh
和start-dfs.sh
时,所有工作正常并通过JPS我能够在所有计算机上看到所有必需的服务。
Jps on NameNode:
5840 NameNode
5996 DataNode
7065 Jps
6564 NodeManager
6189 SecondaryNameNode
6354 ResourceManager
Jps on DataNodes:
3070 DataNode
3213 NodeManager
3349 Jps
但是,当我想从namenode/dfshealth.html#tab-datanode
和namenode:50070/dfshealth.html#tab-overview
进行检查时,两者都只显示2个数据节点。
tab-datanode将NameNode和DataNode2显示为活动数据节点。根本不显示DataNode3。
我多次检查了所有配置文件(提到xml,sh和slves / master),以确保两个数据节点没有任何不同。
此外,etc/hosts
文件还包含所有系统中的所有节点条目:
127.0.0.1 localhost
#127.0.1.1 smishra-VM2
192.168.1.11 DataNode3
192.168.1.10 DataNode2
192.168.1.5 NameNode
我要提到的一件事是我配置了1个VM然后我克隆了它。因此两个VM具有相同的配置。因此,显示1个数据节点而不是另一个数据节点更令人困惑。
答案 0 :(得分:0)
查看http://blog.cloudera.com/blog/2014/01/how-to-create-a-simple-hadoop-cluster-with-virtualbox/
我敢打赌,您的问题来自Virtual Box虚拟机上的网络配置。上面的帖子详细介绍了如何确保虚拟机之间的内部网络设置正确,正向和反向名称解析工作,没有重复的MAC地址等,这对于Hadoop集群正常工作至关重要。