hadoop使用web访问50070端口或者8088端口,可以快速查看所有节点的情况,可有些情况下,我们打开这个网页,却发现其datanode是空的
如果出现这种情况,有如下几种可能
一,未关闭虚拟机防火墙
如果防火墙不关闭,master将无法获得datenode的信息,自然无法显示
二,未设置hosts映射
确认主机名已经设置,再检查一下slaves文件和hosts文件,如果这两个文件出错,集群就不能找到节点,自然启动不了
slaves文件中的信息是自己的datanode的名字,如图
hosts文件中的信息是自己所有机器的名字和IP,如图
三,内部namenode文件系统元信息和数据节点不匹配
删除掉各个节点上面的tmp(即在hdfs-site.xml中设置的dfs.name.dir路径中的文件),然后hdfs namenode -format
格式化,最后重新启动集群。