CentOS中对Hadoop使用JPS命令后没有DataNode出现
使用JPS命令后没有DataNode出现
问题可能发生原因:
多次格式化namenode所致。在执行文件系统格式化时,会在namenode数据文件夹(即配置文件中dfs.name.dir在本地系统的路径)中保存一个current/VERSION文件,记录namespaceID,标识了所格式化的 namenode的版本。如果频繁的格式化namenode,那么datanode中保存(即配置文件中dfs.data.dir在本地系统的路径)的current/VERSION文件只是保存着第一次格式化时的namenode ID,因此造成datanode与namenode之间的id不一致。
dfs.name.dir:
dfs.data.dir:
解决方案:
- 停止集群:[ [email protected]~ ]$ stop-all.sh
- 删除HDFS中data目录下的所有数据:$ rm -rf /app/hadoop-2.4.1/data/ (目录根据自己的情况)
- 格式化namenode:$ hadoop namenode -format
- 重新启动hadoop集群:$ start-all.sh