【背景】

新搭建的Hadoop环境没怎么用,就一个环境天天空跑,结果今天运维告诉我说有一台服务器磁盘超过80%了,真是太奇怪了,平台上就跑了几个spark测试程序,哪来的数据呢?

【问题调查】

既然是磁盘写满了,那首先就要找到具体是什么数据写满的磁盘。

用df查看,是根目录,还不是数据盘;

df -h

于是用du命令再挨个检查目录,看看具体是什么文件这么大

du -h --maxx-depth=1 . 

终于发现在Hadoop的日志目录下,有一堆hdfs-audit.log日志,并且每个都有好几百M,删除之后,跟目录瞬间从81%减低到了42%;

问题是暂时解决了,可这样不是长久之计,审计日志还在写,过几天还得来删除。

【解决办法】

从Ambari页面上查看hdfs的配置,搜索关键字“audit”

解决Hadoop审计日志hdfs-audit.log过大的问题-LMLPHP

接着往下拉,发现审计日志配置的是INFO级别:

解决Hadoop审计日志hdfs-audit.log过大的问题-LMLPHP 

于是改为WARN级别,保存后重启hdfs相关组件。

解决Hadoop审计日志hdfs-audit.log过大的问题-LMLPHP

 

过了几天后,再检查服务器,发现磁盘根目录使用率没有明显增大,问题完美解决了~ 

08-03 14:31