0

我们有以下 hadoop 集群版本,(DATA-NODE 机器在 Linux OS 版本 - 7.2 上)

ambari - 2.6.1 HDP - 2.6.4

我们看到很少有数据节点机器上的磁盘满 100% 的场景

那是因为作为标准输出的文件很大

例如

/grid/sdb/hadoop/yarn/log/application_151746342014_5807/container_e37_151003535122014_5807_03_000001/stdout

从 df -h ,我们可以看到

df -h /grid/sdb
Filesystem      Size  Used Avail Use% Mounted on
/dev/sdb        1.8T  1.8T  0T   100% /grid/sdb

任何建议如何避免标准输出很大的情况,实际上这个问题会导致停止数据节点上的 HDFS 组件,

第二:因为stdout的PATH是:

/var/log/hadoop-yarn/containers/[application id]/[container id]/stdout

是否可以限制文件大小?或者当文件达到阈值时清除标准输出?

4

1 回答 1

0

查看上面的路径看起来您的应用程序(Hadoop 作业)正在将大量数据写入stdout文件。这通常发生在作业写入datausingstdout函数System.out.println或类似函数时,这不是必需的,但有时可用于调试代码。

请检查您的应用程序代码并确保它不会写入stdout.

希望这可以帮助。

于 2019-01-03T20:23:33.563 回答