1.问题描述
长时间启动hadoop后,使用stop-all.sh停止时报 no namenode to stop,但jps显示namenode 确实存在
2.造成原因
hadoop默认配置是将namenode,datanode等相关进程的pid存放在/tmp目录下,但linux会定期清理/tmp目录,所以pid信息丢失,导致出现该问题
3.解决方法
修改hadoop/etc/hadoop/hadoop-env.sh文件中的HADOOP_PID_DIR
# export HADOOP_PID_DIR=${HADOOP_PID_DIR}
export HADOOP_PID_DIR=/opt/hadoop/pids