Диски Datanode переполнены, потому что огромные файлы как стандартный вывод

У нас есть следующие версии кластера hadoop, ( DATA-NODE машина находится на версии ОС Linux - 7.2)

ambari - 2.6.1 HDP - 2.6.4

мы видели несколько сценариев, когда диски на компьютере с датоданными заполняются на 100%

и потому что файлы как - stdout огромного размера

например

/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

любое предложение, как избежать этой ситуации, что stdout огромен, и на самом деле эта проблема вызывает остановку компонента HDFS на датодале,

Второе: поскольку PATH стандартного вывода является:

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

Можно ли ограничить размер файла? или сделать очистку стандартного вывода, когда файл достиг порога?

1 ответ

Если посмотреть на вышеприведенный путь, то похоже, что ваше приложение (Hadoop Job) записывает много данных в stdout файл. Это обычно происходит, когда Иов пишет data в stdout с помощью System.out.println функция или аналог, которая не требуется, но иногда может использоваться для отладки кода.

Пожалуйста, проверьте код приложения и убедитесь, что он не пишет в stdout,

Надеюсь это поможет.

Другие вопросы по тегам