【第一部分】
【现象】查看到yarn监控页面上有十几个Unhealthy 节点,分别进去Unhealthy Nodes查看各个目录的占用磁盘情况,发现是HDFS的有关目录占用过多了,这是因为有很多临时文件占用了Hdfs。
tmp_users=`hdfs dfs -ls /tmp/ | awk '{print $8}' | cut -d"/" -f3 | xargs `
[root@wps-datanode-051 conf.empty]# echo $tmp_users # 总共有243个用户使用hive on yarn
【解决1】批量清理每个用户在hdfs临时目录下产生的文件
for user in $tmp_users; do hdfs dfs -rm -r /tmp/${user}/.staging/*; done
日志输出:
...
18/07/30 20:36:30 INFO fs.TrashPolicyDefault: Moved: 'hdfs://hdfs-ha/tmp/mengfanhui/.staging/job_1523945420036_927376' to trash at: hdfs://hdfs-ha/user/root/.Trash/Current/tmp/guojingjing/.staging/job_1523945420036_927376
...
此时,同时查看yarn页面的Unhealthy Node数目,会有变化:随着清理的进行,Unhealthy Node数目会越来越小,从一开始的19个到12个、5个…,这是因为那些不健康的node manager节点恢复到了默认yarn配置项yarn.nodemanager.disk-health-checker.min-healt