欢迎访问我的GitHub
这里分类和汇总了欣宸的全部原创(含配套源码):
https://github.com/zq2599/blog_demos
问题
- 三台机器组成的hadoop2.7集群中,重新初始化之后再次启动启动,发现以下问题:
- 在master节点,用hdfs命令上传文件报错There are 0 datanode(s) running and no node(s);
- 去DataNode节点执行jps命令,没有名为DataNode的进程;
解决
- 停止yarn和hdfs(我这里的hadoop部署在~目录下,请根据您自己的部署目录调整下面的命令):
~/hadoop-2.7.7/sbin/stop-yarn.sh \
&& ~/hadoop-2.7.7/sbin/stop-dfs.sh
~/hadoop-2.7.7/bin/hadoop namenode -format \
&& ~/hadoop-2.7.7/bin/hdfs namenode -format
- 清理临时文件夹(这一步很重要):打开文件hadoop-2.7.7/etc/hadoop/core-site.xml,找到节点hadoop.tmp.dir,该节点的值是临时文件夹目录,我这里是/home/hadoop/work/tmp,因此执行以下命令,将临时文件夹清理干净,并且重建name和data目录:
rm -rf /home/hadoop/work/tmp/* \
&& mkdir -p /home/hadoop/work/tmp/dfs/name \
&& mkdir -p /home/hadoop/work/tmp/dfs/data
~/hadoop-2.7.7/sbin/start-dfs.sh \
&& ~/hadoop-2.7.7/sbin/start-yarn.sh
- 在DataNode机器上执行jps命令,发现DataNode进程已经有了:
[hadoop@node1 logs]$ jps
9664 DataNode
9974 Jps
9784 NodeManager
[hadoop@node0 ~]$ ~/hadoop-2.7.7/bin/hdfs dfs -mkdir /input
[hadoop@node0 ~]$ ~/hadoop-2.7.7/bin/hdfs dfs -put ~/GoneWiththeWind.txt /input
[hadoop@node0 ~]$ ~/hadoop-2.7.7/bin/hdfs dfs -ls /input
Found 1 items
-rw-r--r-- 3 hadoop supergroup 2372994 2019-10-27 11:44 /input/GoneWiththeWind.txt
欢迎关注阿里云开发者社区博客:程序员欣宸
学习路上,你不孤单,欣宸原创一路相伴...