我的 no datanode to stop和别人的不一样,别人的大概都是pid放到了/tmp的目录下,被回收导致的,导致无法结束datanode进程,只能kill。
而我的是在slave机器上可以看到master结束了datanode进程,但是在master执行./sbin/stop-all.sh时显示no datanode to stop。
最后发现原因是,master格式化了namenode,导致master机器上的namenode里的VERSION的clusterID与slave机器上的datanode里的VETSION的clusterID不一致。
首先:你可能不知道master和slave的VERSION在哪?那就去看你的hdfs-site.xml配置文件,如下图:
在master机器上找namenode文件夹下的VERSION,在Slave机器上找datanode文件夹下的VERSION。<