在启动hadoop的HDFS时显示NameNode启动失败。
首先,查看日志文件,找到报错信息:
报错分析:伪分布式虽然只需要配置 fs.defaultFS 和 dfs.replication 就可以运行(可参考官方教程),但是如果不设置hadoop.tmp.dir参数的话,则默认使用的临时目录为 /tmp/hadoo-hadoop,而这个目录在重启时有可能被系统清理掉。
所以我们需要设置hadoop.tmp.dir参数,同时也指定dfs.namenode.name.dir 和 dfs.datanode.data.dir。
解决步骤如下:
1.在core-site.xml设置hadoop.tmp.dir参数
之后在上图设置得路径下创建对应的data/tmp文件夹。
2.在hdfs-site.xml中分别设置dfs.namenode.name.dir 和 dfs.datanode.data.dir的路径
同样,之后在上图设置的路径下创建对应的文件夹。
格式化后启动即可解决。