之前在用Mapreduce写代码时,在DFS Location下的会报一个error,大体的意思就是与主机名相关的错误
然后我就觉得可能时Hadoop开启时出了错误,然后我就重启了Hadoop,jps查看了一下,果然出现了错误
可见jps命令输入后什么都没有,原本应该如下图所示
后来我就在网上百度,发现出现错误的原因时我主机名和配置文件不一致造成的,根据Hadoop启动时的提示,从这随便挑选一个
例如; starting namenode, logging to /usr/local/hadoop/logs/hadoop-hadoop-namenode-ZMZ.out”,其中 ZMZ 时主机名,但其实
启动日志信息是记录在 /usr/local/hadoop/logs/hadoop-hadoop-namenode-ZMZ.log 中,所以应该查看这个后缀为 .log 的文件,果不其然
在对应的log中,注意此ip
然后打开host文件,输入命令
sudo vi /etc/hosts
发现没有上图中.log 文件对应的ip地址,所以要修改host文件,把目前主机名及其对应的ip地址插进去
然后重启网络,输入
sudo /etc/init.d/networking restart
或者
reboot
重新启动计算机生效
然后我再次jps,发现又缺少了DataNode
于是在网上找到的解决办法,主要是参照林子雨的教程走的
此外,若是 DataNode 没有启动,可尝试如下的方法(注意这会删除 HDFS 中原有的所有数据,如果原有的数据很重要请不要这样做)
# 针对 DataNode 没法启动的解决方法 ./sbin/stop-dfs.sh # 关闭 rm -r ./tmp # 删除 tmp 文件,注意这会删除 HDFS 中原有的所有数据 ./bin/hdfs namenode -format # 重新格式化 NameNode ./sbin/start-dfs.sh # 重启
运行后会删除HDFS原有数据,注意保存
然后再次jps,发现正常运行了
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南