https://blog.csdn.net/qq_37408712/article/details/80954615
由于启动hdfs和yarn时,它们的pid文件默认生成在/tmp下,/tmp内的数据一段时间后会被系统自动删除,而关闭hdfs和yarn又需要它们各自的pid文件
因此为了避免hdfs长期未关闭后,使用脚本关闭hdfs和yarn时会报错
no namenode/nodemanager/XXXX to stop 的情况。这里对pid文件的位置进行修改
/tmp目录默认一个月清理一次临时文件
修改pid路径步骤:
0.停止集群
hd start # 自己写的脚本
1.先修改sbin目录下hadoop-daemon.sh文件
指定HADOOP_PID_DIR储存路径
2.再修改 yarn-daemon.sh 文件
指定YARN_PID_DIR储存路径
3.集群同步两个脚本
每次执行同步脚本之前一定要再三考虑集群中的该文件是否完全相同!!!如果把各个节点上配置不相同的配置文件给覆盖掉了就惨了!
xsync hadoop-daemon.sh
xsync yarn-daemon.sh
4.启动hadoop并查看pid文件位置
$HADOOP_HOME下的pid目录不需要我们自己创建,它会自行创建
[root@hadoop101 pid]# hd start
[root@hadoop101 pid]# cd $HADOOP_HOME/pid
[root@hadoop101 pid]# ls
hadoop-root-datanode.pid hadoop-root-namenode.pid yarn-root-nodemanager.pid