hadoop长时间运行后,stop-all.sh报错

报错现象:

hadoop在stop-all.sh的时候依据的是datanode上的mapred和dfs进程号。

而默认的进程号保存在/tmp下,linux默认会每 隔一段时间(一般是一个月或者7天左右)去删除这个目录下的文件。

因此删掉hadoop-hadoop-jobtracker.pid和hadoop- hadoop-namenode.pid两个文件后,namenode自然就找不到datanode上的这两个进程了。

解决方法:

在配置文件hadoop_env.sh中配置export HADOOP_PID_DIR可以解决这个问题。

export HADOOP_PID_DIR=${HADOOP_HOME}/pids

找不到hadoop_env.sh目录

可以用WinSCP软件搜索

猜你喜欢

转载自www.cnblogs.com/chuijingjing/p/10431053.html