Задание MapReduce в автономной среде завершается неудачно N раз из-за исключения контейнера AM из запуска контейнера

При запуске карты уменьшите объем работ в автономной среде в MacOSX (например, при запуске заданий, когда ssh 'как конкретный пользователь), я получаю следующее исключение или что-то в этом роде…

2013-12-04 15:08:28,513 WARN org.apache.hadoop.yarn.server.resourcemanager.RMAuditLogger: USER=hadoop   OPERATION=Application Finished - Failed TARGET=RMAppManager     RESULT=FAILURE  DESCRIPTION=App failed with state: FAILED       PERMISSIONS=Application application_1386194876944_0001 failed 2 times due to AM Container for appattempt_1386194876944_0001_000002 exited with  exitCode: 1 due to: Exception from container-launch:
org.apache.hadoop.util.Shell$ExitCodeException:
        at org.apache.hadoop.util.Shell.runCommand(Shell.java:464)
        at org.apache.hadoop.util.Shell.run(Shell.java:379)
        at org.apache.hadoop.util.Shell$ShellCommandExecutor.execute(Shell.java:589)
        at org.apache.hadoop.yarn.server.nodemanager.DefaultContainerExecutor.launchContainer(DefaultContainerExecutor.java:195)
        at org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.ContainerLaunch.call(ContainerLaunch.java:283)

Если вместо этого я вхожу в систему как этот пользователь, ошибка не возникает, и задание MR выполняется до конца, а значок Java помечен как "MRAppMaster» всплывает в доке.

Я сузил это до ResourceManager, запускающего процесс Java без передачи-Djava.awt.headless=true, Когда это происходит в автономной среде, JVM не имеет разрешения для отображения в корневом окне. Это проявилось в ряде других обстоятельств, и ямы исправили каждый.

Это не вопрос разрешений (что-то, предложенное в другом месте) или отсутствующих каталогов.

Но я'Я не знаю, как повлиять на последнюю из попыток оскорбления получить доступ к корневому окну без разрешения.

Я добавил-Djava.awt.headless=true вариант к следующему:

HADOOP_OPTS в hadoop-env.shHADOOP_JOB_HISTORYSERVER_OPTS в mapred-env.sh YARN_OPTS в yarn-env.shYARN_RESOURCEMANAGER_OPTS в yarn-env.sh (хотя это, вероятно, дублирует YARN_OPTSmapred. {map | redu} .child.java.opts и mapred.child.java.opts в mapred-site.xml

Что мне не хватает? Могу ли я быть лучше, добавив это в мои параметры Java во всем мире?

К вашему сведению, это просто псевдокластерная установка на Mac, OS X 10.8.5, на котором запущен Hadoop 2.2.0, загруженный из Apache с Java 1.6.0_65-b14. Я не использовал Homebrew или любой другой дистрибутив. Я тестирую псевдокластер на примере WordCount.

Благодарю.

Хорошо. Моя вина. Я наконец нашел все настройки, чтобы добавить… Искать все "выбрать» записи вmapred-default.xml инструкции по настройке.

Вот они на месте ...


    mapred.child.java.opts
    -Djava.awt.headless=true



    yarn.app.mapreduce.am.command-opts
    -Djava.awt.headless=true -Xmx1024m


    yarn.app.mapreduce.am.admin-command-opts
    -Djava.awt.headless=true

Я также пытался сделать то же самое, добавив параметр в _JAVA_OPTIONS в / etc / profile. Ява подняла это,кроме как при запуске MRAppMaster!!!

Надеюсь, это поможет кому-то еще.

Ответы на вопрос(2)

Ваш ответ на вопрос