启动HDFS后,有NameNode、SecondaryNameNode,无DataNode。

来源:3-11 HDFS格式化以及启动详解

酱汁怪兽

2021-06-23

问题:
验证HDFS是否启动成功,输入jps后
有NameNode、SecondaryNameNode,无DataNode。


查到的原因:
进入目录/home/hadoop/app/hadoop-2.6.0-cdh5.15.1/logs
输入:cat /home/hadoop/app/hadoop-2.6.0-cdh5.15.1/logs/hadoop-hadoop-datanode-hadoop000.log
查看日志,寻找原因:
java.net.BindException: Port in use: localhost:0
Caused by: java.net.BindException: Cannot assign requested address


尝试的办法一:(运行后无效)
删除/home/hadoop/app下的tmp文件,再次执行初始化HDFS,再启动HDFS。


尝试的办法二:(运行后无效)
在目录下/home/hadoop/app/hadoop-2.6.0-cdh5.15.1/etc/hadoop
在hdfs-site.xml 中添加:

<property>
    <name>dfs.datanode.address</name>
    <value>0.0.0.0:50010</value>
</property>

再启动HDFS。

写回答

3回答

Michael_PK

2021-06-24

参考:https://www.cnblogs.com/shireenlee4testing/p/10717110.html

0
2
酱汁怪兽
谢谢您,解决了~
2021-06-24
共2条回复

酱汁怪兽

提问者

2021-06-23

问题补充描述:

网上有一种解释是:

一般由于多次格式化NameNode导致。在配置文件中保存的是第一次格式化时保存的namenode的ID,因此就会造成datanode与namenode之间的id不一致。

需要:

1、在dfs/name目录下找到一个current/VERSION文件,记录clusterID并复制

2、然后dfs/data目录下找到一个current/VERSION文件,将其中clustreID的值替换成刚刚复制的clusterID的值即可


问题出在:/home/hadoop/app/tmp/dfs/data里面是空的。


0
0

酱汁怪兽

提问者

2021-06-23

日志补充:

//img.mukewang.com/szimg/60d2f858092eca4f13920934.jpg

//img.mukewang.com/szimg/60d2f85e098b203113961034.jpg


0
0

Hadoop 系统入门+核心精讲

从Hadoop核心技术入手,掌握数据处理中ETL应用,轻松进军大数据

2409 学习 · 908 问题

查看课程