Диски 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
,
Надеюсь это поможет.