我需要将-Djava.awt.headless=true
添加到所有Hadoop的Java进程中。否则,该进程将因尝试访问窗口服务器而被终止。
我已经尝试无处不在,无法找到应该应用这些标志的位置。我已经设法让它在大多数基本进程中运行,但是有一个进程让我望而却步。该流程 MRAppMaster 。
无论我做什么, MRAppMaster 都会在没有无头标志的情况下运行。据我所知,这份文件虽然可怕,却无话可说。
如果有一个位置可以应用此标志,我将不胜感激。我在Mac OS 10.9上运行Hadoop 2.2.0。
答案 0 :(得分:2)
MRAppMaster特定于YARN。无论如何,您可以通过名为yarn.app.mapreduce.am.command-opts
的属性将java opts传递给应用程序主服务器。您可以在地图缩小配置文件mapred-site.xml
(以及不 yarn-site.xml
中设置它,正如人们猜测的那样)。
来自here:
<强> yarn.app.mapreduce.am.command-OPTS 强>
Java选择MR App Master进程。